diff --git a/back/lib/admin/peer/add b/back/lib/admin/peer/add index 12eaadc..b37b685 100755 --- a/back/lib/admin/peer/add +++ b/back/lib/admin/peer/add @@ -87,7 +87,7 @@ if ! peers="$(sudo /usr/bin/wg show "${TLD}" allowed-ips)"; then fi # Get peer domains -if ! peers="$("${LIB_DIR}/wg_peer_list" tsv <<<"${peers}")"; then +if ! peers="$("${LIB_DIR}/ips_to_peers" tsv <<<"${peers}")"; then printf 'ERROR! Failed to retrieve peers for %s!\n' "${ip}" >>"${LOGFILE}" exit 10 fi diff --git a/back/lib/admin/peer/del b/back/lib/admin/peer/del index 956125f..9fd791e 100755 --- a/back/lib/admin/peer/del +++ b/back/lib/admin/peer/del @@ -60,7 +60,7 @@ if [ "${user_peers}" == "" ]; then fi # Get peer domains -if ! peer="$("${LIB_DIR}/wg_peer_list" tsv <<<"${user_peers}" | grep "${pubkey}")"; then +if ! peer="$("${LIB_DIR}/ips_to_peers" tsv <<<"${user_peers}" | grep "${pubkey}")"; then printf 'ERROR! Peer %s not found for user %s!\n' "${pubkey}" "${ip}" >>"${LOGFILE}" & printf 'Peer not found\n' | "${LIB_DIR}/http_res" 404 exit 6 diff --git a/back/lib/admin/peer/list b/back/lib/admin/peer/list index d950c26..f912397 100755 --- a/back/lib/admin/peer/list +++ b/back/lib/admin/peer/list @@ -61,7 +61,7 @@ if [ "${un}" != '' ]; then fi # Get domains for each peer -if peers="[$("${LIB_DIR}/wg_peer_list" json <<<"${peers}")]"; then +if peers="[$("${LIB_DIR}/ips_to_peers" json <<<"${peers}")]"; then printf '{"token":"%s","peers":%s}' "${token}" "${peers}" | "${LIB_DIR}/http_res" 200 'application/json' printf 'Sent peers to admin %s\n' "${ip}" >>"${LOGFILE}" else diff --git a/back/lib/dashboard/peer/add b/back/lib/dashboard/peer/add index 9c92313..ec21f83 100755 --- a/back/lib/dashboard/peer/add +++ b/back/lib/dashboard/peer/add @@ -94,7 +94,7 @@ if [ "${user_peers}" == "" ]; then fi # Create new IPs -if ! peers="$("${LIB_DIR}/wg_peer_list" tsv <<<"${user_peers}")"; then +if ! peers="$("${LIB_DIR}/ips_to_peers" tsv <<<"${user_peers}")"; then printf 'ERROR! Failed to parse peers for %s!\n' "${ip}" >>"${LOGFILE}" exit 10 fi diff --git a/back/lib/dashboard/peer/del b/back/lib/dashboard/peer/del index c2e931f..c0e725b 100755 --- a/back/lib/dashboard/peer/del +++ b/back/lib/dashboard/peer/del @@ -61,7 +61,7 @@ if [ "${user_peers}" == "" ]; then fi # Get peer domains -if ! peer="$("${LIB_DIR}/wg_peer_list" tsv <<<"${user_peers}" | grep "${pubkey}")"; then +if ! peer="$("${LIB_DIR}/ips_to_peers" tsv <<<"${user_peers}" | grep "${pubkey}")"; then printf 'ERROR! Peer %s not found for user %s!\n' "${pubkey}" "${ip}" >>"${LOGFILE}" & printf 'Peer not found\n' | "${LIB_DIR}/http_res" 404 exit 6 diff --git a/back/lib/dashboard/peer/list b/back/lib/dashboard/peer/list index 6d96086..266664b 100755 --- a/back/lib/dashboard/peer/list +++ b/back/lib/dashboard/peer/list @@ -56,7 +56,7 @@ if [ "${user_peers}" == '' ]; then fi # Get domains for each one -if peers="[$("${LIB_DIR}/wg_peer_list" json <<<"${user_peers}")]"; then +if peers="[$("${LIB_DIR}/ips_to_peers" json <<<"${user_peers}")]"; then printf '{"token":"%s","peers":%s}' "${token}" "${peers}" | "${LIB_DIR}/http_res" 200 'application/json' printf 'Sent peers to user %s\n' "${ip}" >>"${LOGFILE}" else diff --git a/back/lib/wg_peer_list b/back/lib/ips_to_peers similarity index 88% rename from back/lib/wg_peer_list rename to back/lib/ips_to_peers index ddf2e88..5f215cc 100755 --- a/back/lib/wg_peer_list +++ b/back/lib/ips_to_peers @@ -1,7 +1,8 @@ #!/bin/bash -# FILE: wg_peer_list -# DESCRIPTION: Get peers in the same subnet as an ip -# USAGE: wg_peer_list json <<<"${user_peers}" +# FILE: ips_to_peers +# DESCRIPTION: Takes a list of IPs from wg show allowed-ips +# and adds domains using rdns lookups +# USAGE: ips_to_peers json <<<"${user_peers}" # ERRORS: # 3: bad usage # 4: nslookup failed