Loading 64bit.fs +4 −0 Original line number Diff line number Diff line Loading @@ -93,6 +93,8 @@ cell 8 = [IF] ' umin! Alias 64umin! ' umax! Alias 64umax! ' !@ Alias 64!@ ' be-ux@ Alias be@ ' be-x! Alias be! [ELSE] ' 2swap alias 64rot ' 2swap alias -64rot Loading Loading @@ -199,6 +201,8 @@ cell 8 = [IF] : 64max! ( d addr -- ) >r r@ 64@ dmax r> 64! ; : 64umin! ( n addr -- ) >r r@ 64@ dumin r> 64! ; : 64umax! ( n addr -- ) >r r@ 64@ dumin r> 64! ; ' be-ul@ alias be@ ' be-l! alias be! [THEN] \ independent of cell size, using dfloats: ' dfloats Alias 64s Loading net2o-addr.fs +3 −1 Original line number Diff line number Diff line Loading @@ -145,7 +145,9 @@ previous my-addr$ $[]off ; : !my-addr$ ( -- ) my-addr[] [: o>addr gen-host my-addr$ $ins[] ;] $[]o-map ; my-addr[] [: nat( ." insert into my-addr$: " dup .addr forth:cr ) o>addr gen-host my-addr$ $ins[]sig ;] $[]o-map ; :noname addrs-off !my-addrs !my-addr$ ; is !my-addr Loading net2o-cmd.fs +1 −1 Original line number Diff line number Diff line Loading @@ -501,7 +501,7 @@ previous o 0= IF drop EXIT THEN request( ." request acked: " dup . cr ) resend0 $off nat( ." ok from: " ret-addr $10 xtype space dup . nat( ." ok from: " ret-addr .addr-path space dup . dup reply[] 2@ d0= IF ." acked" THEN cr ) 0. 2 pick reply[] dup >r 2! ['] drop r> reply-xt !@ execute ; \ clear request Loading net2o-connect.fs +2 −1 Original line number Diff line number Diff line Loading @@ -110,6 +110,7 @@ net2o-base +net2o: punch-done ( -- ) \g punch received o 0<> own-crypt? and IF return-addr return-address $10 move resend0 $off nat( ." punch done: " return-address .addr-path forth:cr ) THEN ; : cookie, ( -- ) add-cookie lit, set-cookie ; Loading @@ -117,7 +118,7 @@ net2o-base : request, ( -- ) next-request #request, ; : gen-punch ( -- ) my-addr$ [: -sig nat( ." punch: " 2dup .addr$ forth:cr ) $, punch ;] $[]map ; my-addr$ [: -sig nat( ." gen punch: " 2dup .addr$ forth:cr ) $, punch ;] $[]map ; : cookie+request ( -- ) request( ." gen cookie" forth:cr ) nest[ cookie, request, ]nest ; Loading net2o-crypt.fs +0 −10 Original line number Diff line number Diff line Loading @@ -28,13 +28,6 @@ KEYBYTES 2* Constant keysize2 \ pubkey+revkey=64 bytes \ specify strength (in bytes), not length! length is 2*strength 32 Constant hash#128 \ 128 bit hash strength is enough! 64 Constant hash#256 \ 256 bit hash strength is more than enough! \ Hash state variables $41 Constant sigonlysize# $51 Constant sigsize# $71 Constant sigpksize# $91 Constant sigpk2size# $10 Constant datesize# \ key storage stuff $1E0 Constant keypack# Loading Loading @@ -410,9 +403,6 @@ Defer search-key \ search if that is one of our pubkeys : forever ( -- ) 64#0 sigdate 64! 64#-1 sigdate 64'+ 64! ; : now+delta ( delta64 -- ) ticks 64dup sigdate 64! 64+ sigdate 64'+ 64! ; : startdate@ ( addr u -- date ) + sigsize# - 64@ ; : enddate@ ( addr u -- date ) + sigsize# - 64'+ 64@ ; : .check ( flag -- ) '✔' '✘' rot select xemit ; : .sigdate ( tick -- ) 64dup 64#0 64= IF 64drop ." forever" EXIT THEN Loading Loading
64bit.fs +4 −0 Original line number Diff line number Diff line Loading @@ -93,6 +93,8 @@ cell 8 = [IF] ' umin! Alias 64umin! ' umax! Alias 64umax! ' !@ Alias 64!@ ' be-ux@ Alias be@ ' be-x! Alias be! [ELSE] ' 2swap alias 64rot ' 2swap alias -64rot Loading Loading @@ -199,6 +201,8 @@ cell 8 = [IF] : 64max! ( d addr -- ) >r r@ 64@ dmax r> 64! ; : 64umin! ( n addr -- ) >r r@ 64@ dumin r> 64! ; : 64umax! ( n addr -- ) >r r@ 64@ dumin r> 64! ; ' be-ul@ alias be@ ' be-l! alias be! [THEN] \ independent of cell size, using dfloats: ' dfloats Alias 64s Loading
net2o-addr.fs +3 −1 Original line number Diff line number Diff line Loading @@ -145,7 +145,9 @@ previous my-addr$ $[]off ; : !my-addr$ ( -- ) my-addr[] [: o>addr gen-host my-addr$ $ins[] ;] $[]o-map ; my-addr[] [: nat( ." insert into my-addr$: " dup .addr forth:cr ) o>addr gen-host my-addr$ $ins[]sig ;] $[]o-map ; :noname addrs-off !my-addrs !my-addr$ ; is !my-addr Loading
net2o-cmd.fs +1 −1 Original line number Diff line number Diff line Loading @@ -501,7 +501,7 @@ previous o 0= IF drop EXIT THEN request( ." request acked: " dup . cr ) resend0 $off nat( ." ok from: " ret-addr $10 xtype space dup . nat( ." ok from: " ret-addr .addr-path space dup . dup reply[] 2@ d0= IF ." acked" THEN cr ) 0. 2 pick reply[] dup >r 2! ['] drop r> reply-xt !@ execute ; \ clear request Loading
net2o-connect.fs +2 −1 Original line number Diff line number Diff line Loading @@ -110,6 +110,7 @@ net2o-base +net2o: punch-done ( -- ) \g punch received o 0<> own-crypt? and IF return-addr return-address $10 move resend0 $off nat( ." punch done: " return-address .addr-path forth:cr ) THEN ; : cookie, ( -- ) add-cookie lit, set-cookie ; Loading @@ -117,7 +118,7 @@ net2o-base : request, ( -- ) next-request #request, ; : gen-punch ( -- ) my-addr$ [: -sig nat( ." punch: " 2dup .addr$ forth:cr ) $, punch ;] $[]map ; my-addr$ [: -sig nat( ." gen punch: " 2dup .addr$ forth:cr ) $, punch ;] $[]map ; : cookie+request ( -- ) request( ." gen cookie" forth:cr ) nest[ cookie, request, ]nest ; Loading
net2o-crypt.fs +0 −10 Original line number Diff line number Diff line Loading @@ -28,13 +28,6 @@ KEYBYTES 2* Constant keysize2 \ pubkey+revkey=64 bytes \ specify strength (in bytes), not length! length is 2*strength 32 Constant hash#128 \ 128 bit hash strength is enough! 64 Constant hash#256 \ 256 bit hash strength is more than enough! \ Hash state variables $41 Constant sigonlysize# $51 Constant sigsize# $71 Constant sigpksize# $91 Constant sigpk2size# $10 Constant datesize# \ key storage stuff $1E0 Constant keypack# Loading Loading @@ -410,9 +403,6 @@ Defer search-key \ search if that is one of our pubkeys : forever ( -- ) 64#0 sigdate 64! 64#-1 sigdate 64'+ 64! ; : now+delta ( delta64 -- ) ticks 64dup sigdate 64! 64+ sigdate 64'+ 64! ; : startdate@ ( addr u -- date ) + sigsize# - 64@ ; : enddate@ ( addr u -- date ) + sigsize# - 64'+ 64@ ; : .check ( flag -- ) '✔' '✘' rot select xemit ; : .sigdate ( tick -- ) 64dup 64#0 64= IF 64drop ." forever" EXIT THEN Loading