diff --git a/src/add-ons/kernel/drivers/network/stack/Jamfile b/src/add-ons/kernel/drivers/network/stack/Jamfile index a5be2a5f28..d730453324 100644 --- a/src/add-ons/kernel/drivers/network/stack/Jamfile +++ b/src/add-ons/kernel/drivers/network/stack/Jamfile @@ -1,19 +1,36 @@ SubDir OBOS_TOP src add-ons kernel drivers net stack ; UsePrivateHeaders net ; -UsePublicHeaders posix ; +UsePublicHeaders ; +UsePosixHeaders ; + +# a) Userland stack version: R5KernelAddon stack : kernel drivers bin : - net_stack_driver.c + net_userstack_driver.c ; # For OpenBeOS we should be building the driver objects this way. #KernelObjects +# net_userstack_driver.c +# : +# -fno-pic -D_KERNEL_MODE +# ; + +# b) Kernelland stack version: +# +#R5KernelAddon stack : kernel drivers bin : +# net_stack_driver.c +# ; +# +# For OpenBeOS we should be building the kernel stack driver objects this way. +#KernelObjects # net_stack_driver.c # : # -fno-pic -D_KERNEL_MODE # ; + # Link to kernel/drivers/dev/net { local dir = [ FDirName $(OBOS_ADDON_DIR) kernel drivers dev net ] ; diff --git a/src/add-ons/kernel/drivers/network/stack/net_stack_driver.c b/src/add-ons/kernel/drivers/network/stack/net_stack_driver.c index cd0a3ba1b8..301088c8e3 100644 --- a/src/add-ons/kernel/drivers/network/stack/net_stack_driver.c +++ b/src/add-ons/kernel/drivers/network/stack/net_stack_driver.c @@ -10,19 +10,20 @@ #else -#include -#include -#include -#include -#include +// Public/system includes +#include +#include +#include #include // For get_module()/put_module() -#include "netinet/in_var.h" -#include "sys/select.h" +#include +#include -#include "protosw.h" -#include "core_module.h" -#include "net_stack_driver.h" +#include + +// Private includes +#include +#include /* these are missing from KernelExport.h ... */ #define B_SELECT_READ 1 diff --git a/src/add-ons/kernel/drivers/network/stack/net_userstack_driver.c b/src/add-ons/kernel/drivers/network/stack/net_userstack_driver.c index 32cb80005f..a86f1167a9 100644 --- a/src/add-ons/kernel/drivers/network/stack/net_userstack_driver.c +++ b/src/add-ons/kernel/drivers/network/stack/net_userstack_driver.c @@ -8,21 +8,25 @@ ** This file may be used under the terms of the OpenBeOS License. */ +#ifndef _KERNEL_MODE +#error "This module MUST be built as a kernel driver!" + +#else + +// Public includes //#include -#include -#include +#include +#include -#include +// Posix includes #include +#include +#include -#include "net_stack_driver.h" -#include "userland_ipc.h" -#include "lock.h" -#include "sys/sockio.h" -#include "sys/socket.h" -#include "net/if.h" -#include "sys/select.h" +// Private includes +#include +#include /* these are missing from KernelExport.h ... */ #define B_SELECT_READ 1