Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | More work on DVCS refs |
---|---|
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
b969f6bac23ccb534beddd519df31190 |
User & Date: | bernd 2018-11-07 21:47:27.949 |
Context
2018-11-07
| ||
22:11 | Bump version number check-in: ccdccc9a2f user: bernd tags: trunk, 0.8.3-20181107 | |
21:47 | More work on DVCS refs check-in: b969f6bac2 user: bernd tags: trunk | |
10:59 | Added logo.png check-in: fd2a10ba81 user: bernd tags: trunk | |
Changes
Changes to Makefile.in.
︙ | ︙ | |||
42 43 44 45 46 47 48 | gui.fs net2o.fs ip.fs helper.fs keys.fs log.fs msg.fs notify.fs \ qr.fs socks.fs squid.fs tools.fs vault.fs rng.fs xtype.fs $(TESTS) \ $(FORTHLIB) ed25519-donnalib.fs keccaklib.fs threefishlib.fs \ startn2o.fs doc/net2o-logo.png version.fs.in android/net.fs \ android/notify.fs linux/net.fs linux/notify.fs dhtroot.fs dvcs.fs \ qrscan.fs android/qrscan-android.fs linux/qrscan-linux.fs \ doc/net2o-200.png doc/net2o.png json/parser.fs json/g+-schema.fs \ | | | 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | gui.fs net2o.fs ip.fs helper.fs keys.fs log.fs msg.fs notify.fs \ qr.fs socks.fs squid.fs tools.fs vault.fs rng.fs xtype.fs $(TESTS) \ $(FORTHLIB) ed25519-donnalib.fs keccaklib.fs threefishlib.fs \ startn2o.fs doc/net2o-logo.png version.fs.in android/net.fs \ android/notify.fs linux/net.fs linux/notify.fs dhtroot.fs dvcs.fs \ qrscan.fs android/qrscan-android.fs linux/qrscan-linux.fs \ doc/net2o-200.png doc/net2o.png json/parser.fs json/g+-schema.fs \ json/g+-import.fs json/fb-schema.fs json/twitter-schema.fs \ json/test.fs json/test.json html/parser.fs xml/parser.fs \ xml/blogger-atom.fs LANGS = lang/en lang/de lang/zh ifeq "$(FAST)" "yes" FORTHLIB += ed25519-donnafast.fs keccakfast.fs threefishfast.fs |
︙ | ︙ |
Changes to classes.fs.
︙ | ︙ | |||
376 377 378 379 380 381 382 | sfvalue: ts-grow end-structure \ io per-task variables user-o io-mem | | | 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 | sfvalue: ts-grow end-structure \ io per-task variables user-o io-mem object uclass io-mem pollfd 4 * uvar pollfds \ up to four file descriptors sockaddr_in uvar sockaddr< \ incoming socket sockaddr_in uvar sockaddr> \ outgoing socket sockaddr_in uvar sockaddr1 [IFDEF] no-hybrid sockaddr_in uvar sockaddr2 [THEN] |
︙ | ︙ |
Changes to crypt.fs.
︙ | ︙ | |||
23 24 25 26 27 28 29 | Variable my-0key : your-0key ( -- addr u ) o IF dest-0key sec@ ELSE #0. THEN dup 0= IF 2drop lastaddr# cell+ $@ THEN ; user-o keytmp \ storage for secure temporary keys | | | 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | Variable my-0key : your-0key ( -- addr u ) o IF dest-0key sec@ ELSE #0. THEN dup 0= IF 2drop lastaddr# cell+ $@ THEN ; user-o keytmp \ storage for secure temporary keys object uclass keytmp state2# uvar key-assembly state2# uvar ivs-assembly state# uvar mykey \ instance's rotating private key state# uvar oldmykey \ previous rotating private key keysize uvar oldpkc \ previous pubkey after revocation keysize uvar oldskc \ previous secret key after revocation keysize uvar oldpkrev \ previous revocation pubkey after revocation |
︙ | ︙ | |||
51 52 53 54 55 56 57 | keysize uvar vsk 1 64s uvar last-mykey cell uvar keytmp-up end-class keytmp-c user-o keybuf \ storage for secure permanent keys | | | 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | keysize uvar vsk 1 64s uvar last-mykey cell uvar keytmp-up end-class keytmp-c user-o keybuf \ storage for secure permanent keys object uclass keybuf \ key storage \ client keys keysize uvar pkc \ pubkey keysize uvar pk1 \ pubkey 1 for revokation keysize uvar skc \ secret key keysize uvar sksig \ secret key for signature keysize uvar sk1 \ secret key 1 for revokation (will not last) |
︙ | ︙ |
Changes to dvcs.fs.
︙ | ︙ | |||
563 564 565 566 567 568 569 | I $@ ['] msg:display catch IF ." invalid entry" cr 2drop THEN cell +LOOP log free throw dvcs( ." === id>patch ===" cr id>patch# .hash ." === id>snap ===" cr id>snap# .hash ) ; : chat>branches ( o:dvcs -- ) project:project$ $@ ?msg-log dvcs:commits @ .chat>branches-loop ; | | | 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 | I $@ ['] msg:display catch IF ." invalid entry" cr 2drop THEN cell +LOOP log free throw dvcs( ." === id>patch ===" cr id>patch# .hash ." === id>snap ===" cr id>snap# .hash ) ; : chat>branches ( o:dvcs -- ) project:project$ $@ ?msg-log dvcs:commits @ .chat>branches-loop ; : >branches ( addr u -- ) $make branches[] >back ; User id-check# \ check hash : id>branches-loop ( addr u -- ) BEGIN 2dup id-check# #@ d0<> IF 2drop EXIT THEN s" !" 2over id-check# #! 2dup id>snap# #@ 2dup d0<> IF >branches 2drop EXIT THEN 2drop id>patch# #@ 2dup d0<> WHILE |
︙ | ︙ | |||
600 601 602 603 604 605 606 | 2dup >file-hash dvcs:hash$ $! dvcs( ." ===== ci '" dvcs:hash$ $@ 85type ." ' =====" cr ) write-enc-hashed 2drop ; : pull-readin ( -- ) config>dvcs chat>dvcs chat>branches ; : dvcs-readin ( $addr -- ) | | | | 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 | 2dup >file-hash dvcs:hash$ $! dvcs( ." ===== ci '" dvcs:hash$ $@ 85type ." ' =====" cr ) write-enc-hashed 2drop ; : pull-readin ( -- ) config>dvcs chat>dvcs chat>branches ; : dvcs-readin ( $addr -- ) pull-readin $@ id>branches branches>dvcs files>dvcs new>dvcs dvcs?modified ; scope{ dvcs : new-dvcs-log ( -- o ) dvcs-log-class new >o msg-table @ token-table ! o o> ; : clear-log ( -- ) dvcs-log:sig$ $free dvcs-log:tag$ $free dvcs-log:id$ $free dvcs-log:action$ $free dvcs-log:text$ $free dvcs-log:chain$ $free ; |
︙ | ︙ | |||
878 879 880 881 882 883 884 | : #needed ( hash -- ) cell+ $@ key| +needed ; : dvcs-needed-files ( -- ) id>patch# ['] #needed #map id>snap# ['] #needed #map ; | | | | > > > > | > > > | 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 | : #needed ( hash -- ) cell+ $@ key| +needed ; : dvcs-needed-files ( -- ) id>patch# ['] #needed #map id>snap# ['] #needed #map ; : get-needed-files { list -- } +resend list $[]# 0 ?DO I /sync-reqs + I' umin I U+DO net2o-code expect+slurp $10 blocksize! 0 blockalign! I /sync-files + I' umin I U+DO I list $[]@ net2o:copy# LOOP I /sync-files + I' u>= IF end-code| net2o:close-all ELSE end-code THEN /sync-files +LOOP /sync-reqs +LOOP ; : dvcs-data-sync ( -- ) sync-file-list[] $[]off branches[] $[]off msg-group$ $@ ?msg-log dvcs:commits @ .chat>branches-loop dvcs:commits @ .dvcs-needed-files sync-file-list[] connection .get-needed-files ; : dvcs-ref-sync ( -- ) dvcs:new-dvcs-refs >o branches>dvcs dvcs:refs[] connection .get-needed-files dvcs:dispose-dvcs-refs o> ; : handle-fetch ( -- ) ?.net2o/objects dvcs:new-dvcs >o pull-readin msg( ." === syncing metadata ===" forth:cr ) 0 >o dvcs-connects +dvcs-sync-done \ net2o-code expect-reply ['] last?, [msg,] end-code wait-dvcs-request o> msg( ." === syncing data ===" forth:cr ) dvcs-data-sync msg( ." === data sync done ===" forth:cr ) dvcs-ref-sync msg( ." === ref sync done ===" forth:cr ) msg-group$ $@ >group last# silent-leave-chat dvcs:dispose-dvcs o> ; 0 [IF] Local Variables: forth-local-words: ( |
︙ | ︙ |
Changes to gui.fs.
︙ | ︙ | |||
693 694 695 696 697 698 699 700 701 702 703 704 705 706 | 1e ambient% sf! set-uniforms ; : net2o-gui ( -- ) n2o-frame to top-widget "PASSPHRASE" getenv 2dup d0= IF 2drop ELSE >passphrase +key read-keys THEN secret-keys# IF show-nicks THEN 1config !widgets widgets-loop ; ' net2o-gui is run-gui previous | > | 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 | 1e ambient% sf! set-uniforms ; : net2o-gui ( -- ) n2o-frame to top-widget "PASSPHRASE" getenv 2dup d0= IF 2drop ELSE >passphrase +key read-keys "PASSPHRASE" getenv erase \ erase passphrase after use! THEN secret-keys# IF show-nicks THEN 1config !widgets widgets-loop ; ' net2o-gui is run-gui previous |
︙ | ︙ |
Name change from json/g+-export.fs to json/g+-import.fs.
|
| | | 1 2 3 4 5 6 7 8 | \ Google+ import \ Copyright (C) 2018 Bernd Paysan \ This program is free software: you can redistribute it and/or modify \ it under the terms of the GNU Affero General Public License as published by \ the Free Software Foundation, either version 3 of the License, or \ (at your option) any later version. |
︙ | ︙ |
Changes to tools.fs.
︙ | ︙ | |||
31 32 33 34 35 36 37 | 0 ?DO enum LOOP drop ; : bit ( n "name" -- n*2 ) dup Constant 2* ; \ argument handling that works transparent from OS and Forth command line user-o arg-o | | | | 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | 0 ?DO enum LOOP drop ; : bit ( n "name" -- n*2 ) dup Constant 2* ; \ argument handling that works transparent from OS and Forth command line user-o arg-o object uclass arg-o umethod ?nextarg umethod ?@nextarg umethod ?peekarg end-class cmd-args-c align cmd-args-c , here constant cmd-args^ : cmd-args ( -- ) cmd-args^ arg-o ! ; cmd-args :noname ( -- addr u t / f ) argc @ 1 > IF next-arg true ELSE false THEN ; to ?nextarg :noname ( -- addr u t / f ) argc @ 1 > IF 1 arg true ELSE false THEN ; to ?peekarg :noname ( -- addr u t / f ) argc @ 1 > IF 1 arg drop c@ '@' = IF next-arg 1 /string true EXIT THEN THEN false ; to ?@nextarg cmd-args-c uclass arg-o end-class word-args-c align word-args-c , here constant word-args^ : word-args ( -- ) word-args^ arg-o ! ; word-args |
︙ | ︙ | |||
934 935 936 937 938 939 940 | 2dup *insflag @ IF *-width2 ELSE *-width1 THEN edit-curpos ! 2dup *insflag @ IF *type2 ELSE *type THEN ; : *edit-update ( -- ) .*resizeline .*all .*rest ; : (*xins) *insflag on (xins) ; : *kill-prefix *insflag off kill-prefix ; | | | 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 | 2dup *insflag @ IF *-width2 ELSE *-width1 THEN edit-curpos ! 2dup *insflag @ IF *type2 ELSE *type THEN ; : *edit-update ( -- ) .*resizeline .*all .*rest ; : (*xins) *insflag on (xins) ; : *kill-prefix *insflag off kill-prefix ; edit-terminal-c uclass edit-out end-class *edit-terminal-c *edit-terminal-c ' new static-a with-allocater Constant *edit-terminal *edit-terminal edit-out ! ' (*xins) is insert-char |
︙ | ︙ |