Port-amiga archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Using NetBSD's TCP/IP stack for AmigaOS
I'm evaluating undertaking an effort to adapt the NetBSD TCP/IP stack to
AmigaOS 3.x as a replacement for bsdsocket.library due to issues with all
existing Amiga stacks (Roadshow, AmiTCP, etc..). There are a few issues I
can see right away. If anyone cares to comment, or give me a tip or trick,
I'd love to hear it (unless your comment is similar to "That's stupid, why
don't you do XYZ instead?").
* AmigaOS doesn't support any kind of kernel threads. The fine-graining
and MP_SAFE stuff isn't needed and I'll have to adapt the code to that.
* The code would run in user space not in the kernel, any specific structs
or features that only exist in kernel-space would need to go. There are a
lot, from kmem_*lloc*() to macros that get definied in places elsehwere in
the kernel away from the network code but are needed. That's more tearout
to cause regressions.
* The Amiga SANA-II driver has a different type of ethernet struct than
BSD, but it's still close enough, methinks.
* The stack includes IPSEC, and I don't need or want it, especially when
considering the the crypto baggage it contains and how little it gets
used. So, that'll need ripping out.
* AmigaOS doesn't support memory protection. So, that's also going to
create a tricky situation with debugging and surgery on malloc.h, and
probably more things I'm not considering.
* I believe almost everything I need is in src/netinet.
* IPv6 is still a unicorn, especially in home-user environments. Not sure
I want to take that on, either. I may also rip that out. Same for DCCP and
SCTP
Thanks!
Swift
Home |
Main Index |
Thread Index |
Old Index