view scripts/add_udpmsg4_chat @ 1094:1d2f501fa55e draft

epoch added as 4141 and CIDR 1.41.41.0/24
author epoch <epoch@hacking.allowed.org>
date Sun, 24 Mar 2013 12:51:10 +0000
parents 9c22f6ca8b1f
children
line wrap: on
line source

#!/bin/sh
if [ -z "$5" ]; then
 echo "Usage: $0 <chat> <owner> <pubkey> <seckey> <topic>" >&2; exit 255
fi
chat="$1"
owner="$2"
pubkey="$3"
seckey="$4"
topic="$5"

if [ "$(echo -n "${chat/chat\//}" | tr -d 'A-Za-z0-9_-' | wc -c | tr -d ' \t')" != 0 ]; then
 echo "udpmsg4 chats do not allow funny chars." >&2; exit 255
fi
if ((`echo -n "${chat/chat\//}" | wc -c` > 32)); then
 echo "udpmsg4 chats cannot be greater than 32 chars." >&2; exit 255
fi
if [ "$(echo "$chat" | head -c5)" != chat/ ]; then
 echo "udpmsg4 chats start with chat/." >&2; exit 255
fi
if ((`echo -n "$pubkey$seckey" | tr -d 'a-fA-F0-9' | wc -c | tr -d ' \t'` != 0)); then
 echo "nacl keys are hex chars." >&2; exit 255
fi
if ((`echo -n "$pubkey$seckey" | wc -c` != 128)); then
 echo "nacl keys are 64 chars." >&2; exit 255
fi

fullchat=db/udpmsg4_chat/${chat/chat\//}
mkdir -p $fullchat || exit 1
mkdir -p $fullchat/@ || exit 1
echo -n "$owner" >"$fullchat/@/owner"
echo -n "$pubkey" >"$fullchat/@/pubkey"
echo -n "$seckey" >"$fullchat/@/seckey"
echo -n "$topic" >"$fullchat/@/topic"
echo -n "seckey" >"$fullchat/@/.gitignore"