]> git.lizzy.rs Git - plan9front.git/log
plan9front.git
5 years agoawk: fix nextfile crash (thanks leetspete)
cinap_lenrek [Tue, 16 Apr 2019 14:13:30 +0000 (16:13 +0200)]
awk: fix nextfile crash (thanks leetspete)

to reproduce the bug:

term% awk 'BEGIN{nextfile; nextfile;}'
sys: trap: fault read addr=0x10 pc=0x00019a3a
awk 6584: suicide: sys: trap: fault read addr=0x10 pc=0x00019a3a

5 years agodevsd: fix panic when using "delpart" to remove a partition that was already removed
BurnZeZ [Mon, 15 Apr 2019 19:48:03 +0000 (19:48 +0000)]
devsd: fix panic when using "delpart" to remove a partition that was already removed

5 years agopc: audiohda: recognize AMD Family 17h hd audio controller
mischief [Sun, 14 Apr 2019 06:11:19 +0000 (23:11 -0700)]
pc: audiohda: recognize AMD Family 17h hd audio controller

5 years agopc: devarch: recognize AMD Ryzen model
mischief [Sun, 14 Apr 2019 06:08:26 +0000 (23:08 -0700)]
pc: devarch: recognize AMD Ryzen model

5 years agopc: pci: add AMD FCH LPC bridge to southbridges
mischief [Sun, 14 Apr 2019 06:07:57 +0000 (23:07 -0700)]
pc: pci: add AMD FCH LPC bridge to southbridges

5 years agonusb/usbd: fix dump %U formatter
mischief [Sun, 14 Apr 2019 05:37:52 +0000 (22:37 -0700)]
nusb/usbd: fix dump %U formatter

5 years agoip(3): document TCP ctl close command
BurnZeZ [Sun, 14 Apr 2019 04:50:55 +0000 (04:50 +0000)]
ip(3): document TCP ctl close command

5 years agodevip: reject bad numeric ports (such as 9fs -> 9)
cinap_lenrek [Sun, 14 Apr 2019 01:22:05 +0000 (03:22 +0200)]
devip: reject bad numeric ports (such as 9fs -> 9)

5 years agobcm: move CONFADDR parsing into bootargs.c, simplify initcode start() args handling
cinap_lenrek [Thu, 11 Apr 2019 17:10:47 +0000 (19:10 +0200)]
bcm: move CONFADDR parsing into bootargs.c, simplify initcode start() args handling

5 years agobcm: don't use PADDR() to convert bus address to physical in vcore
cinap_lenrek [Thu, 11 Apr 2019 15:12:20 +0000 (17:12 +0200)]
bcm: don't use PADDR() to convert bus address to physical in vcore

5 years agokernel: get rid of KSTKSIZE alias for KSTACK
cinap_lenrek [Thu, 11 Apr 2019 12:05:23 +0000 (14:05 +0200)]
kernel: get rid of KSTKSIZE alias for KSTACK

5 years agomerge
cinap_lenrek [Thu, 11 Apr 2019 11:54:03 +0000 (13:54 +0200)]
merge

5 years agokernel: get rid of PTR2UINT() and UINT2PTR() macros
cinap_lenrek [Thu, 11 Apr 2019 11:51:38 +0000 (13:51 +0200)]
kernel: get rid of PTR2UINT() and UINT2PTR() macros

5 years agobcm: dont assume PHYSDRAM 0 in dmaaddr(), fix dmaioaddr()
cinap_lenrek [Thu, 11 Apr 2019 11:49:41 +0000 (13:49 +0200)]
bcm: dont assume PHYSDRAM 0 in dmaaddr(), fix dmaioaddr()

5 years agobcm: add pl011 uart driver
cinap_lenrek [Thu, 11 Apr 2019 11:21:06 +0000 (13:21 +0200)]
bcm: add pl011 uart driver

the raspi has two uarts, the pl011 and the mini. only one
can be used at a time due to pin muxing. the bcm kernel
uses the mini by default.

5 years agobcm: move okay() from uartmini.c to devarch.c
cinap_lenrek [Wed, 10 Apr 2019 13:06:56 +0000 (15:06 +0200)]
bcm: move okay() from uartmini.c to devarch.c

5 years agobcm: add irq.c to mkfile
cinap_lenrek [Wed, 10 Apr 2019 13:06:24 +0000 (15:06 +0200)]
bcm: add irq.c to mkfile

5 years agobcm: move interrupt handling out of trap.c into irq.c
cinap_lenrek [Wed, 10 Apr 2019 13:04:59 +0000 (15:04 +0200)]
bcm: move interrupt handling out of trap.c into irq.c

5 years agofix bad function declarations in manpages
BurnZeZ [Tue, 9 Apr 2019 18:34:17 +0000 (18:34 +0000)]
fix bad function declarations in manpages

5 years agothread(2): threadsetname takes a fmt string
BurnZeZ [Mon, 8 Apr 2019 22:18:15 +0000 (22:18 +0000)]
thread(2): threadsetname takes a fmt string

5 years agoaudiohda: add support for Gemini-Lake audio in Intel NUC nuc7pjyh (thanks sam-d)
cinap_lenrek [Mon, 8 Apr 2019 13:50:13 +0000 (15:50 +0200)]
audiohda: add support for Gemini-Lake audio in Intel NUC nuc7pjyh (thanks sam-d)

5 years ago7l: fix vlong constants in literal pool for non-MOV instructions
cinap_lenrek [Mon, 8 Apr 2019 12:15:39 +0000 (14:15 +0200)]
7l: fix vlong constants in literal pool for non-MOV instructions

5 years ago7l: fix bitcon instruction selection and encoding
cinap_lenrek [Mon, 8 Apr 2019 12:12:01 +0000 (14:12 +0200)]
7l: fix bitcon instruction selection and encoding

the possible bitmasks generated depend on the data width
of the instruction, so we introduce C_BITCON32 and C_BITCON64
operand types to keep them apart.

the encoding of the bitcon operation was wrong.

5 years ago7l: add arm64 linker (initial sync)
cinap_lenrek [Mon, 8 Apr 2019 12:05:27 +0000 (14:05 +0200)]
7l: add arm64 linker (initial sync)

5 years ago7a: fix indexreg operations
cinap_lenrek [Mon, 8 Apr 2019 11:53:41 +0000 (13:53 +0200)]
7a: fix indexreg operations

5 years ago7a: fix post increment operands
cinap_lenrek [Mon, 8 Apr 2019 11:50:11 +0000 (13:50 +0200)]
7a: fix post increment operands

5 years ago7c: fix registerization of vlong constants
cinap_lenrek [Mon, 8 Apr 2019 11:47:45 +0000 (13:47 +0200)]
7c: fix registerization of vlong constants

5 years agoadd arm64 c compiler and assembler (thanks charles forsyth)
cinap_lenrek [Mon, 8 Apr 2019 11:45:49 +0000 (13:45 +0200)]
add arm64 c compiler and assembler (thanks charles forsyth)

this is the the initial sync of charles forsyths plan9 c
compiler suite from http://bitbucket.org/plan9-from-bell-labs/9-cc
at changeset version 54:65fb8bb56c59

5 years agorootstub: create arm64 directories
cinap_lenrek [Mon, 8 Apr 2019 11:07:18 +0000 (13:07 +0200)]
rootstub: create arm64 directories

5 years agouptime: rewrite in awk
BurnZeZ [Sun, 7 Apr 2019 17:09:52 +0000 (17:09 +0000)]
uptime: rewrite in awk

5 years agolibauthsrv: authdial smprint() out of memory autism
cinap_lenrek [Sat, 6 Apr 2019 18:23:00 +0000 (20:23 +0200)]
libauthsrv: authdial smprint() out of memory autism

5 years agosgi: remove obsolete TSTKTOP constant
cinap_lenrek [Thu, 4 Apr 2019 13:28:04 +0000 (15:28 +0200)]
sgi: remove obsolete TSTKTOP constant

5 years agoxen: remove obsolete TSTKTOP constant
cinap_lenrek [Thu, 4 Apr 2019 13:25:10 +0000 (15:25 +0200)]
xen: remove obsolete TSTKTOP constant

5 years agobcm: remove obsolete TSTKTOP constant
cinap_lenrek [Thu, 4 Apr 2019 13:23:20 +0000 (15:23 +0200)]
bcm: remove obsolete TSTKTOP constant

5 years agopc64: get rid of TSTKTOP, USTKTOP is the end of user address space
cinap_lenrek [Thu, 4 Apr 2019 13:21:25 +0000 (15:21 +0200)]
pc64: get rid of TSTKTOP, USTKTOP is the end of user address space

the temporary stack segment used to be at a fixed address above or
below the user stack. these days, the temp stack is mapped dynamically
by sysexec so TSTKTOP is obsolete.

5 years agosshnet: get rid of Announced state, simplify
cinap_lenrek [Wed, 3 Apr 2019 21:49:22 +0000 (23:49 +0200)]
sshnet: get rid of Announced state, simplify

5 years agosshnet: implement listen (port forwarding)
cinap_lenrek [Wed, 3 Apr 2019 20:15:47 +0000 (22:15 +0200)]
sshnet: implement listen (port forwarding)

5 years agosshnet: don't leak error string
cinap_lenrek [Wed, 3 Apr 2019 12:29:49 +0000 (14:29 +0200)]
sshnet: don't leak error string

5 years agosshnet: don't leak "Dialing" connections when "connect" ctl write gets interrupted
cinap_lenrek [Wed, 3 Apr 2019 12:16:28 +0000 (14:16 +0200)]
sshnet: don't leak "Dialing" connections when "connect" ctl write gets interrupted

5 years agosshnet: pass on open failure error message, simplify
cinap_lenrek [Wed, 3 Apr 2019 11:45:54 +0000 (13:45 +0200)]
sshnet: pass on open failure error message, simplify

return the error message from MSG_CHANNEL_OPEN_FAILURE
in the "connect" control write.

use a extra state "Finished" to distinguish server from client
initiated teardown. that way we do not need to track if we
send the MSG_CHANNEL_CLOSE message in closeclient(). this way
we also cannot be fooled by misbehaving server.

simplify hangupclient() by removing state transitions and doing
them in the caller explicitely. that way we can use hangupclient()
instead of dialedclient().

5 years agosshnet: fix eof and close handling, use proper packet size, cleanup
cinap_lenrek [Wed, 3 Apr 2019 08:49:47 +0000 (10:49 +0200)]
sshnet: fix eof and close handling, use proper packet size, cleanup

5 years agovt: dont make fs procs hang arround when closing rio window
cinap_lenrek [Tue, 2 Apr 2019 18:44:35 +0000 (20:44 +0200)]
vt: dont make fs procs hang arround when closing rio window

5 years agosshnet(4): fix user@host syntax, add BUGS section, add ip(3) reference
cinap_lenrek [Tue, 2 Apr 2019 17:42:09 +0000 (19:42 +0200)]
sshnet(4): fix user@host syntax, add BUGS section, add ip(3) reference

5 years agossh: print usage for unknown flags, cleanup
cinap_lenrek [Tue, 2 Apr 2019 17:22:19 +0000 (19:22 +0200)]
ssh: print usage for unknown flags, cleanup

5 years agossh(1): add sshnet(4) reference
cinap_lenrek [Tue, 2 Apr 2019 16:46:00 +0000 (18:46 +0200)]
ssh(1): add sshnet(4) reference

5 years agosshnet: reduce memory consumption by lowering stack sizes
cinap_lenrek [Tue, 2 Apr 2019 16:29:22 +0000 (18:29 +0200)]
sshnet: reduce memory consumption by lowering stack sizes

5 years agosshnet: fix memory leak
cinap_lenrek [Tue, 2 Apr 2019 16:06:25 +0000 (18:06 +0200)]
sshnet: fix memory leak

5 years agosshnet: allow 0 port
cinap_lenrek [Tue, 2 Apr 2019 15:51:15 +0000 (17:51 +0200)]
sshnet: allow 0 port

5 years agosshnet: fix write count for ctl message writes
cinap_lenrek [Tue, 2 Apr 2019 15:32:34 +0000 (17:32 +0200)]
sshnet: fix write count for ctl message writes

5 years agosshnet: actually make sure ssh established connection before exiting main proc
cinap_lenrek [Tue, 2 Apr 2019 15:28:56 +0000 (17:28 +0200)]
sshnet: actually make sure ssh established connection before exiting main proc

this fixes password prompts and handles errors properly.

5 years agosshnet(4): add documentation
cinap_lenrek [Tue, 2 Apr 2019 14:40:14 +0000 (16:40 +0200)]
sshnet(4): add documentation

5 years agosshnet: bring back sshnet using ssh(1) mux mode
cinap_lenrek [Tue, 2 Apr 2019 14:23:01 +0000 (16:23 +0200)]
sshnet: bring back sshnet using ssh(1) mux mode

this is a port of the original ssh1 sshnet to our
ssh2 client using mux mode.

5 years agossh: add experimental mux mode
cinap_lenrek [Tue, 2 Apr 2019 09:18:50 +0000 (11:18 +0200)]
ssh: add experimental mux mode

in mux mode, ssh relays raw MSG_CHANNEL_*
messages on standard input and output while
still handling authentication and key exchange
internally.

the intend is to use the mux mode to implement
something like the old sshnet ontop of ssh.

5 years agomerge
cinap_lenrek [Tue, 2 Apr 2019 07:05:01 +0000 (09:05 +0200)]
merge

5 years agossh: implement -W option for making remote tcp connections
cinap_lenrek [Tue, 2 Apr 2019 07:03:35 +0000 (09:03 +0200)]
ssh: implement -W option for making remote tcp connections

5 years agomerge
Alex Musolino [Mon, 1 Apr 2019 12:44:14 +0000 (23:14 +1030)]
merge

5 years agofix DST begin/end timestamps for South Australia
Alex Musolino [Mon, 1 Apr 2019 12:25:49 +0000 (22:55 +1030)]
fix DST begin/end timestamps for South Australia

5 years agowalk: remove unused depth argument from dofile()
BurnZeZ [Sat, 30 Mar 2019 15:10:36 +0000 (15:10 +0000)]
walk: remove unused depth argument from dofile()

5 years agobootrc: simplify if statement
BurnZeZ [Sat, 30 Mar 2019 15:09:00 +0000 (15:09 +0000)]
bootrc: simplify if statement

5 years agodtracy: avoid dmachlock() race
cinap_lenrek [Sat, 30 Mar 2019 08:17:46 +0000 (09:17 +0100)]
dtracy: avoid dmachlock() race

between being commited to a machno and having acquired the lock, the
scheduler could come in an schedule us on a different processor. the
solution is to have dtmachlock() take a special -1 argument to mean
"current mach" and return the actual mach number after the lock has
been acquired and interrupts being disabled.

5 years agodist/mkfile: aux/stub -d /n/src9/usr to avoid overbinding /usr in case /n/src9 an...
cinap_lenrek [Sat, 30 Mar 2019 04:50:14 +0000 (05:50 +0100)]
dist/mkfile: aux/stub -d /n/src9/usr to avoid overbinding /usr in case /n/src9 an / alias

when /n/src9 is an alias for / (bind / /n/src9), then the bind
from /sys/lib/dist/usr on /n/src9/usr would also overbind
/usr and potentially make the build target file inaccessible.

the solution is to run aux/stub -d /n/src9/usr.

this works as aux/stub mounts itself on /n/src9, so the bind
for /n/src9/usr will not override /usr in the root filesystem
but the stub directory from aux/stub.

5 years ago5c: dont substibute (destination) registers contained in MOVM reglist
cinap_lenrek [Fri, 29 Mar 2019 05:35:41 +0000 (06:35 +0100)]
5c: dont substibute (destination) registers contained in MOVM reglist

this fixes the miscompilation of 6l with 5c resulting in bogus
vlong -> long conversion at the top of asmandsz():

asmandsz 0x0000aec4 MOVW.W R14,#-0x2c(R13)
asmandsz+0x4 0x0000aec8 MOVW rex+8(FP),R5
asmandsz+0x8 0x0000aecc MOVW $andptr-SB(SB),R7
asmandsz+0xc 0x0000aed0 MOVW R0,R6
asmandsz+0x10 0x0000aed4 AND $#0x44,R5,R8
asmandsz+0x14 0x0000aed8 MOVW R8,rex+8(FP)
asmandsz+0x18 0x0000aedc MOVW R0,R4
asmandsz+0x1c 0x0000aee0 MOVM.IA (R0),[R1,R3] <- R1 used here
asmandsz+0x20 0x0000aee4 MOVW R8,v-4(SP) <- substituted by R8

5 years agomerge
cinap_lenrek [Wed, 27 Mar 2019 13:46:14 +0000 (14:46 +0100)]
merge

5 years agoinst/startether: skip ipv6 auto configuration when nora6 was specified
cinap_lenrek [Wed, 27 Mar 2019 13:45:08 +0000 (14:45 +0100)]
inst/startether: skip ipv6 auto configuration when nora6 was specified

5 years agomerge
cinap_lenrek [Wed, 27 Mar 2019 13:33:15 +0000 (14:33 +0100)]
merge

5 years agoplan9.ini(8): add USB section, documenting various usb options
cinap_lenrek [Wed, 27 Mar 2019 13:31:45 +0000 (14:31 +0100)]
plan9.ini(8): add USB section, documenting various usb options

5 years agobootrc: handle automatic ip configuration on gbe media
cinap_lenrek [Wed, 27 Mar 2019 13:17:51 +0000 (14:17 +0100)]
bootrc: handle automatic ip configuration on gbe media

5 years agoplan9.ini: add nora6= option to disable automatic ipv6 configuration
cinap_lenrek [Wed, 27 Mar 2019 13:11:25 +0000 (14:11 +0100)]
plan9.ini: add nora6= option to disable automatic ipv6 configuration

5 years agoadded walk(1)
BurnZeZ [Mon, 25 Mar 2019 23:10:02 +0000 (23:10 +0000)]
added walk(1)

5 years agoupas/fs: release mailbox syncing lock after encountering error
cinap_lenrek [Sat, 23 Mar 2019 04:47:17 +0000 (05:47 +0100)]
upas/fs: release mailbox syncing lock after encountering error

5 years agowebfs: bracket literal ipv6 host in "Host:" header
cinap_lenrek [Fri, 22 Mar 2019 23:49:07 +0000 (00:49 +0100)]
webfs: bracket literal ipv6 host in "Host:" header

5 years agonusbrc: detect "keyboardio model 01", appears as multifuction device with IAD csp...
cinap_lenrek [Thu, 21 Mar 2019 01:14:40 +0000 (02:14 +0100)]
nusbrc: detect "keyboardio model 01", appears as multifuction device with IAD csp(0102EF) (thanks sam-d)

5 years agonusb/kb: fix continuous scrollwheel delta not being reported (thanks sam-d)
cinap_lenrek [Thu, 21 Mar 2019 00:27:28 +0000 (01:27 +0100)]
nusb/kb: fix continuous scrollwheel delta not being reported (thanks sam-d)

5 years agomerge
cinap_lenrek [Mon, 18 Mar 2019 06:16:37 +0000 (07:16 +0100)]
merge

5 years agopython: clean and nuke pgen and libpython.a for all $CPUS
cinap_lenrek [Mon, 18 Mar 2019 06:15:09 +0000 (07:15 +0100)]
python: clean and nuke pgen and libpython.a for all $CPUS

5 years agofortunes: Open source may not be safe if it has no super excellent moderator.
stanley lieber [Mon, 18 Mar 2019 03:13:27 +0000 (23:13 -0400)]
fortunes: Open source may not be safe if it has no super excellent moderator.

5 years agodtracy(1): fix print(2) reference
cinap_lenrek [Mon, 18 Mar 2019 01:41:15 +0000 (02:41 +0100)]
dtracy(1): fix print(2) reference

5 years agopython: remove /$objtype/lib/ape/libpython.a, track graminit.h dependencies, remove...
cinap_lenrek [Sun, 17 Mar 2019 22:52:07 +0000 (23:52 +0100)]
python: remove /$objtype/lib/ape/libpython.a, track graminit.h dependencies, remove graminit.c

5 years agoip/ipconfig: use defaults for loopback
cinap_lenrek [Sun, 17 Mar 2019 04:44:55 +0000 (05:44 +0100)]
ip/ipconfig: use defaults for loopback

- do not write /net/ndb for loopback medium unless -p is specified
- use defmask() instead of hardcoded /64 for v6 to get correct /128 mask for ::1
- only do duplicate address detection on ethernet

5 years agoip/ipconfig: use ewrite() to enable routing command for sendra
cinap_lenrek [Sun, 17 Mar 2019 03:07:30 +0000 (04:07 +0100)]
ip/ipconfig: use ewrite() to enable routing command for sendra

5 years agorootstub: create arm and mips directories in /usr/glenda/bin (tanks timclassic)
cinap_lenrek [Sun, 17 Mar 2019 01:43:49 +0000 (02:43 +0100)]
rootstub: create arm and mips directories in /usr/glenda/bin (tanks timclassic)

5 years agoip/tinc: 4096 bit RSA, (passive) pmtu discovery, fix udpfd close() race, cleanup
cinap_lenrek [Sun, 10 Mar 2019 18:07:58 +0000 (19:07 +0100)]
ip/tinc: 4096 bit RSA, (passive) pmtu discovery, fix udpfd close() race, cleanup

- increase buffer size to support up to 4096 bit RSA keys
- handle PMTUDiscovery option and respond to pmtu probes
- handle port in Address option
- wlock(&netlk) before closing udpfd to sync with writers
- move default subnet handling out of gethost()

5 years agolibmemdraw: remove static Point p00 and use ZP instead
cinap_lenrek [Sat, 9 Mar 2019 16:36:19 +0000 (17:36 +0100)]
libmemdraw: remove static Point p00 and use ZP instead

5 years agolibmemdraw: handle memarc() phi == 0 and phi <= -360, keep alpha in bounds
cinap_lenrek [Sat, 9 Mar 2019 16:34:22 +0000 (17:34 +0100)]
libmemdraw: handle memarc() phi == 0 and phi <= -360, keep alpha in bounds

5 years agomerge
cinap_lenrek [Thu, 7 Mar 2019 21:41:42 +0000 (22:41 +0100)]
merge

5 years agodevip: ignore the evil bit in fragment info field
cinap_lenrek [Thu, 7 Mar 2019 21:39:50 +0000 (22:39 +0100)]
devip: ignore the evil bit in fragment info field

using ~IP_DF mask to select offset and "more fragments" bits
includes the evil bit 15. so instead define a constant IP_FO
for the fragment offset bits and use (IP_MF|IP_FO). that way
the evil bit gets ignored and doesnt cause any useless calls
to ipreassemble().

5 years agomach(2): fix byteswapping function signatures
mischief [Thu, 7 Mar 2019 03:10:58 +0000 (19:10 -0800)]
mach(2): fix byteswapping function signatures

5 years agovmx: check for draw initialization errors
mischief [Thu, 7 Mar 2019 03:10:48 +0000 (19:10 -0800)]
vmx: check for draw initialization errors

5 years agodevip: ignore icmp advise about laggard fragments
cinap_lenrek [Thu, 7 Mar 2019 00:25:11 +0000 (01:25 +0100)]
devip: ignore icmp advise about laggard fragments

icmp has to advise protocols about the first
fragment only. all other fragments should be
ignored.

5 years agovgadb: add t43p 1600x1200 panel entry
qwx [Mon, 4 Mar 2019 20:38:50 +0000 (21:38 +0100)]
vgadb: add t43p 1600x1200 panel entry

5 years agoigfx: add support for 915gm
qwx [Mon, 4 Mar 2019 20:37:52 +0000 (21:37 +0100)]
igfx: add support for 915gm

tested on a t43 with igfx and a 1600x1200 t43p screen
what works: lvds, blanking
what doesn't: hwgc (not visible), snarfing edid
untested: vga

based on realemu traces.

5 years agoip/tinc: honor TcpOnly and IndirectData settings, script support, prefer incoming...
cinap_lenrek [Mon, 4 Mar 2019 19:29:33 +0000 (20:29 +0100)]
ip/tinc: honor TcpOnly and IndirectData settings, script support, prefer incoming udp connections

only try listen/dial on udp when IndirectData/TcpOnly is not
enabled.

add support for scipts:
 host-up
 host-down
 tinc-up
 tinc-down
 subnet-up
 subnet-down

when dialing udp connection, only switch when there is no
other udp connection active. when we receive an authenticated
message, we switch to that connection immidiately.

5 years agodevip: ignore reserved fragment offset bits
cinap_lenrek [Mon, 4 Mar 2019 11:07:40 +0000 (12:07 +0100)]
devip: ignore reserved fragment offset bits

5 years agodevip: handle packet too big advise for icmp6, remove fragment header
cinap_lenrek [Mon, 4 Mar 2019 02:13:29 +0000 (03:13 +0100)]
devip: handle packet too big advise for icmp6, remove fragment header

5 years agodevip: use common code in icmp for handling advise
cinap_lenrek [Mon, 4 Mar 2019 02:09:39 +0000 (03:09 +0100)]
devip: use common code in icmp for handling advise

5 years agodevip: zero fragment offset after reassembly, remove tos magic, cleanup
cinap_lenrek [Mon, 4 Mar 2019 02:08:27 +0000 (03:08 +0100)]
devip: zero fragment offset after reassembly, remove tos magic, cleanup

5 years agodevip: fix fragment forwarding
cinap_lenrek [Mon, 4 Mar 2019 02:05:30 +0000 (03:05 +0100)]
devip: fix fragment forwarding

unfraglen() had the side effect that it would always copy the
nexthdr field from the fragment header to the previous nexthdr
field. this is fine when we reassemble packets but breaks
fragments that we want to just forward unchanged.

5 years agodevip: simplify ip reassembly functions, getting rid of Ipfrag.hlen
cinap_lenrek [Sun, 3 Mar 2019 17:56:18 +0000 (18:56 +0100)]
devip: simplify ip reassembly functions, getting rid of Ipfrag.hlen

given that we now keep the block size consistent with the
ip packet size, the variable header part of the ip packet
is just: BLEN(bp) - fp->flen == fp->hlen.

fix bug in ip6reassemble() in the non-fragmented case:
reload ih after ip header was moved before writing ih->ploadlen.

use concatbloc() instead of pullupblock().

5 years agodevip: fix block list handling for icmp/icmp6, use proper MinAdvise for icmp6
cinap_lenrek [Sun, 3 Mar 2019 08:01:23 +0000 (09:01 +0100)]
devip: fix block list handling for icmp/icmp6, use proper MinAdvise for icmp6

5 years agoqio: handle common case in trimblock()
cinap_lenrek [Sun, 3 Mar 2019 04:26:09 +0000 (05:26 +0100)]
qio: handle common case in trimblock()