-- Leo's gemini proxy
-- Connecting to git.thebackupbox.net:1965...
-- Connected
-- Sending request
-- Meta line: 20 text/gemini
repo: urcd action: commit revision: path_from: revision_from: 40c800a36508a961afa1898f2e18062839bbd063: path_to: revision_to:
commit 40c800a36508a961afa1898f2e18062839bbd063 Author: root <root@d3v11.ano> Date: Sun Dec 30 05:21:32 2012 +0000 [urcd] support for curvecp server2server diff --git a/README b/README
--- a/README +++ b/README @@ -1,16 +1,14 @@ urcd: - af_unix relay chat daemons + af_unix relay chat daemon and + af_unix relay chat daemon accessories... depends: ucspi-tcp, python(>=2.6), daemontools, - sh + nacl, sh recommends: cython(>=0.16), gcc -todo: - curvecp - install: # python2.6 ./Make.sh @@ -32,7 +30,19 @@ install: svstat /service/urcd server2server: - ./bin/add-tcprecv irc.daemon.ano 1234 /service/urcd/socket/ + ./bin/add-tcprecv your.urcd.ano 1234 /service/urcd/socket/ + + # your peers can link their server using: + ./bin/add-tcpsend your.urcd.ano 1234 /service/urcd/socket/ + + # you will need to link to your peer's server: + ./bin/add-tcpsend peer.urcd.ano 4321 /service/urcd/socket/ + +curvecp server2server: + ./bin/add-curvecprecv your.urcd.ano 1234 /service/urcd/socket/ # your peers can link their server using: - ./bin/add-tcpsend irc.daemon.ano 1234 /service/urcd/socket/ + ./bin/add-curvecpsend your.urcd.ano 1234 /service/urcd/socket/ your.urcd.ano $your_pubkey + + # you will need to link to your peer's server: + ./bin/add-curvecpsend peer.urcd.ano 4321 /service/urcd/socket/ peer.urcd.ano $peer_pubkey diff --git a/bin/add-curvecprecv b/bin/add-curvecprecv new file mode 100755 index 0000000000000000000000000000000000000000..d10033547113485e28bb4fb752b72f749b97d0c7 --- /dev/null +++ b/bin/add-curvecprecv @@ -0,0 +1,31 @@ +#!/bin/sh +[ -z $3 ] && \ + echo $0' <addr> <port> </path/to/socket/>' 1>&2 && \ + exit 64 + +mkdir -p /services/urcd-curvecprecv-"$1:$2" || exit 1 + +test -L /services/urcd-curvecprecv-"$1:$2"/serv || \ + ln -s `pwd`/env/serv /services/urcd-curvecprecv-"$1:$2"/serv || \ + exit 1 + +curvecpmakekey /services/urcd-curvecprecv-"$1:$2"/curvecp || exit 1 + +printf \ +"#!/bin/sh -e +exec curvecpserver \`cat serv\` curvecp $1 $2 01110101011100100110001101100100 curvecpmessage ./urcrecv $3\n" > \ +/services/urcd-curvecprecv-"$1:$2"/run || exit + +chmod +x /services/urcd-curvecprecv-"$1:$2"/run || exit 1 + +test -L /services/urcd-curvecprecv-"$1:$2"/urcrecv || \ + ln -s `pwd`/urcrecv /services/urcd-curvecprecv-"$1:$2"/urcrecv || \ + exit 1 + +test -L /service/urcd-curvecprecv-"$1:$2" || \ + ln -s /services/urcd-curvecprecv-"$1:$2" \ + /service/urcd-curvecprecv-"$1:$2" || \ + exit 1 + +printf \ +"PUBKEY: `curvecpprintkey /services/urcd-curvecprecv-"$1:$2"/curvecp`\n" diff --git a/bin/add-curvecpsend b/bin/add-curvecpsend new file mode 100755 index 0000000000000000000000000000000000000000..64caab13520bf85bf01123683981fa65770037f8 --- /dev/null +++ b/bin/add-curvecpsend @@ -0,0 +1,27 @@ +#!/bin/sh +[ -z $5 ] && \ + echo $0' <addr> <port> </path/to/socket/> <serv> <pubkey>' 1>&2 && \ + exit 64 + +mkdir -p /services/urcd-curvecpsend-"$1:$2" || exit 1 + +printf $4 > /services/urcd-curvecpsend-"$1:$2"/serv || exit 1 + +printf $5 > /services/urcd-curvecpsend-"$1:$2"/pubkey || exit 1 + +printf \ +"#!/bin/sh -e +export CURVECPCLIENT=1 +exec curvecpclient \`cat serv\` \`cat pubkey\` $1 $2 01110101011100100110001101100100 curvecpmessage ./urcsend $3\n" > \ +/services/urcd-curvecpsend-"$1:$2"/run || exit + +chmod +x /services/urcd-curvecpsend-"$1:$2"/run || exit 1 + +test -L /services/urcd-curvecpsend-"$1:$2"/urcsend || \ + ln -s `pwd`/urcsend /services/urcd-curvecpsend-"$1:$2"/urcsend || \ + exit 1 + +test -L /service/urcd-curvecpsend-"$1:$2" || \ + ln -s /services/urcd-curvecpsend-"$1:$2" \ + /service/urcd-curvecpsend-"$1:$2" || \ + exit 1 diff --git a/bin/add-tcprecv b/bin/add-tcprecv
--- a/bin/add-tcprecv +++ b/bin/add-tcprecv @@ -1,5 +1,5 @@ #!/bin/sh -[ -z $2 ] && \ +[ -z $3 ] && \ echo $0' <addr> <port> </path/to/socket/>' 1>&2 && \ exit 64 diff --git a/bin/add-tcpsend b/bin/add-tcpsend
--- a/bin/add-tcpsend +++ b/bin/add-tcpsend @@ -1,5 +1,5 @@ #!/bin/sh -[ -z $2 ] && \ +[ -z $3 ] && \ echo $0' <addr> <port> </path/to/socket/>' 1>&2 && \ exit 64 diff --git a/src/urcsend.pyx b/src/urcsend.pyx
--- a/src/urcsend.pyx +++ b/src/urcsend.pyx @@ -4,6 +4,8 @@ import signal import sys import os +fd = int(os.getenv('CURVECPCLIENT',7)) + def sock_close(sn,sf): try: os.remove(str(os.getpid())) @@ -30,9 +32,7 @@ while 1: continue try: - if not os.write(7,buffer): - break + if not os.write(fd,buffer): + sock_close(15,0) except: - break - -sock_close(0,0) + sock_close(15,0)
-----END OF PAGE-----
-- Response ended
-- Page fetched on Sun Jun 2 16:58:52 2024