Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Bump version number |
---|---|
Timelines: | family | ancestors | descendants | both | trunk | 0.9.1-20190829 |
Files: | files | file ages | folders |
SHA1: |
219730c82b60f60f726d7fe0f238553e |
User & Date: | bernd 2019-08-29 12:07:07.458 |
Context
2019-08-30
| ||
18:49 | Experiment with flow label check-in: 78b0625b9a user: bernd tags: trunk | |
2019-08-29
| ||
12:07 | Bump version number check-in: 219730c82b user: bernd tags: trunk, 0.9.1-20190829 | |
2019-08-26
| ||
21:59 | Revert NOPE check-in: 39625fe0e3 user: bernd tags: trunk | |
Changes
Changes to configure.ac.
︙ | ︙ | |||
11 12 13 14 15 16 17 | # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. | | | 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. AC_INIT([net2o], [0.9.1-20190829], [bernd@net2o.de], [net2o], [https://fossil.net2o.de/net2o/reportlist]) AC_PREREQ([2.59]) AC_CONFIG_MACRO_DIR([m4]) AC_USE_SYSTEM_EXTENSIONS LT_INIT AC_MSG_CHECKING([for gforth]) |
︙ | ︙ |
Changes to do.
1 2 3 4 | #!/bin/bash echo "This script builds net2o from scratch" | | | 1 2 3 4 5 6 7 8 9 10 11 12 | #!/bin/bash echo "This script builds net2o from scratch" GFORTH=gforth-0.7.9_20190829 if [ "$(uname -o)" = "Cygwin" ] then CONFOPT="--prefix=/usr $*" else CONFOPT="$*" fi |
︙ | ︙ |
Changes to net2o.fs.
︙ | ︙ | |||
916 917 918 919 920 921 922 | 0= IF data-resend 0 2 cells $del THEN maxdata +LOOP ; : data-resend-flush ( -- ) data-resend $@len 0 U+DO data-resend $@ I /string drop @ 0= IF data-resend I 2 cells $del | | | 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 | 0= IF data-resend 0 2 cells $del THEN maxdata +LOOP ; : data-resend-flush ( -- ) data-resend $@len 0 U+DO data-resend $@ I /string drop @ 0= IF data-resend I 2 cells $del 0 data-resend $@len I replace-loop ELSE [ 2 cells ]L THEN +LOOP ; : remove-resend { nback -- } data-resend $@ bounds U+DO |
︙ | ︙ | |||
1179 1180 1181 1182 1183 1184 1185 | o chunk-adder chunk-context ! 0 chunk-adder chunk-count ! chunk-adder chunks-struct chunks $+! ;] resize-sema c-section ticker 64@ ack@ .ticks-init ; : o-chunks ( -- ) | | | | 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 | o chunk-adder chunk-context ! 0 chunk-adder chunk-count ! chunk-adder chunks-struct chunks $+! ;] resize-sema c-section ticker 64@ ack@ .ticks-init ; : o-chunks ( -- ) [: chunks $@ bounds U+DO I chunk-context @ o = IF chunks I chunks-struct del$one chunks next$ replace-loop 0 ELSE chunks-struct THEN +LOOP ;] resize-sema c-section ; event: :>send-chunks ( o -- ) .do-send-chunks ; in net2o : send-chunks sender-task 0= IF do-send-chunks EXIT THEN <event o elit, :>send-chunks sender-task event> ; |
︙ | ︙ | |||
1344 1345 1346 1347 1348 1349 1350 | : add-queue ( xt us -- ) ticker 64@ + o queue-adder >o queue-job ! queue-timestamp 64! is queue-xt o queue-struct queue $+! o> ; : eval-queue ( -- ) queue $@len 0= ?EXIT ticker 64@ | | | | 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 | : add-queue ( xt us -- ) ticker 64@ + o queue-adder >o queue-job ! queue-timestamp 64! is queue-xt o queue-struct queue $+! o> ; : eval-queue ( -- ) queue $@len 0= ?EXIT ticker 64@ queue $@ bounds U+DO I >o 64dup queue-timestamp 64@ 64u> IF addr queue-xt @ queue-job @ .execute o> queue I queue-struct del$one queue next$ replace-loop 0 ELSE o> queue-struct THEN +LOOP 64drop ; \ poll loop : prep-evsocks ( -- ) epiper @ fileno POLLIN pollfds fds!+ drop 1 to pollfd# ; |
︙ | ︙ | |||
1914 1915 1916 1917 1918 1919 1920 | [: ticks 64dup [ tmp-cookie .cc-timeout ]L 64! o [ tmp-cookie .cc-context ]L ! tmp-cookie cookie-size# cookies $+! ;] resize-sema c-section ; : do-?cookie ( cookie -- context true / false ) ticker 64@ connect-timeout# 64- { 64: timeout } | | | | 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 | [: ticks 64dup [ tmp-cookie .cc-timeout ]L 64! o [ tmp-cookie .cc-context ]L ! tmp-cookie cookie-size# cookies $+! ;] resize-sema c-section ; : do-?cookie ( cookie -- context true / false ) ticker 64@ connect-timeout# 64- { 64: timeout } cookies $@ bounds U+DO 64dup I .cc-timeout 64@ 64= IF \ if we have a hit, use that 64drop I .cc-context @ I .cc-secret [ tmp-cookie .cc-secret ]L KEYBYTES move cookies I cookie-size# del$one drop unloop dup IF true THEN EXIT THEN I .cc-timeout 64@ timeout 64u< IF cookies I cookie-size# del$one cookies next$ replace-loop 0 \ we re-iterate over the exactly same index ELSE cookie-size# THEN +LOOP 64drop 0 ; : ?cookie ( cookie -- context true / false ) |
︙ | ︙ |
Changes to tools.fs.
︙ | ︙ | |||
176 177 178 179 180 181 182 183 184 185 186 187 188 189 | is kill-task ; [IFUNDEF] NOPE : NOPE ( c:sys -- ) \G removes a control structure sys from the stack drop 2drop ; immediate restrict [THEN] require bits.fs \ variable length integers, similar to protobuf, but MSB first : p@+ ( addr -- u64 addr' ) >r 64#0 r@ 10 bounds DO 7 64lshift I c@ $7F and n>64 64or | > > | 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 | is kill-task ; [IFUNDEF] NOPE : NOPE ( c:sys -- ) \G removes a control structure sys from the stack drop 2drop ; immediate restrict [THEN] : replace-loop ( end start -- ) ]] unloop U+DO NOPE [[ ; immediate restrict require bits.fs \ variable length integers, similar to protobuf, but MSB first : p@+ ( addr -- u64 addr' ) >r 64#0 r@ 10 bounds DO 7 64lshift I c@ $7F and n>64 64or |
︙ | ︙ | |||
863 864 865 866 867 868 869 | : del$one ( addr1 addr2 size -- pos ) \G @var{pos} is the deletion offset >r over @ cell+ - tuck r> $del ; : next$ ( pos string -- addre addrs ) $@ rot /string bounds ; : del$cell ( addr stringaddr -- ) { string } | | | | 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 | : del$one ( addr1 addr2 size -- pos ) \G @var{pos} is the deletion offset >r over @ cell+ - tuck r> $del ; : next$ ( pos string -- addre addrs ) $@ rot /string bounds ; : del$cell ( addr stringaddr -- ) { string } string $@ bounds U+DO dup I @ = IF string I cell del$one string next$ replace-loop 0 ELSE cell THEN +LOOP drop ; \ unique list of cells Sema resize-sema |
︙ | ︙ |
Changes to wiki/commands.md.
1 2 | # Commands # | | | 1 2 3 4 5 6 7 8 9 10 | # Commands # Version 0.9.1-20190829. net2o separates data and commands. Data is passed through to higher layers, commands are interpreted when they arrive. For connection requests, a special bit is set, and the address then isn't used as address, but as IV for the opportunistic encoding. The command interpreter is a stack machine with two data types: 64 |
︙ | ︙ |