aboutsummaryrefslogtreecommitdiff
path: root/src/data/proto-test/txtrec-set.sh
diff options
context:
space:
mode:
authorDavid Timber <mieabby@gmail.com>2020-09-03 11:38:09 +0930
committerDavid Timber <mieabby@gmail.com>2020-09-03 11:38:09 +0930
commite81c2636cee72af718e99fd98006fa9277de2a65 (patch)
treedffb8cb9b8d9f4eb55a55fedc5d63c8a0ef6c4a3 /src/data/proto-test/txtrec-set.sh
parentf4f959f7842cd9b28500fcd7f506493606376db5 (diff)
* Impl: CNCP
* [htbt] Use randomly generated number for SOLICIT request * Die on pth sync funcs only if debug build * Fix wrong use of pth_mutex_acquire(): use with event can result in failure * [htbt] Take "blackhole" fd as param * Remove unused include to reduce compile time * [htbt] Add const macro values for random msg_id gen * [resolv] Make prne_resolv_prm_t reusable * [resolv] Fix mem leak in proone-resolv * [resolv] Sanity check before returning prm so users don't have to worry about SEGFAULT * Add txtrec-*.sh for CNCP
Diffstat (limited to 'src/data/proto-test/txtrec-set.sh')
-rwxr-xr-xsrc/data/proto-test/txtrec-set.sh61
1 files changed, 61 insertions, 0 deletions
diff --git a/src/data/proto-test/txtrec-set.sh b/src/data/proto-test/txtrec-set.sh
new file mode 100755
index 0000000..50bb07d
--- /dev/null
+++ b/src/data/proto-test/txtrec-set.sh
@@ -0,0 +1,61 @@
+#!/bin/bash
+set -e
+
+ARR_HOOKS="
+ aws
+"
+
+if [ $# -lt 2 ]; then
+ echo "Usage: $0 <head rec> <hook> <zone id> [TTL]
+Hooks:" >&2
+ for h in $ARR_HOOKS; do
+ echo -e "\t$h"
+ done
+
+ exit 2
+fi
+
+HEAD_REC="$1"
+HOOK="$2"
+ZONE_ID="$3"
+if [ -z "$4" ]; then
+ TTL=3600
+else
+ TTL="$4"
+fi
+
+aws_param () {
+ cat << EOF
+{
+ "Changes": [
+ {
+ "Action": "UPSERT",
+ "ResourceRecordSet": {
+ "Name": "$1",
+ "Type": "TXT",
+ "TTL": $TTL,
+ "ResourceRecords": [
+ { "Value": "\"$2\"" }
+ ]
+ }
+ }
+ ]
+}
+EOF
+}
+
+hook_aws () {
+ aws route53 change-resource-record-sets\
+ --hosted-zone-id "$ZONE_ID"\
+ --change-batch "$(aws_param "$1" "$2")"
+}
+
+while read line; do
+ if [ -z "$line" ]; then
+ break;
+ fi
+ "hook_$HOOK" $line
+done
+
+read line
+"hook_$HOOK" "$HEAD_REC" "$line"