Index: tools.c =================================================================== RCS file: /usr/local/cvsrp/mars/tools.c,v retrieving revision 1.1.1.3 retrieving revision 1.2 diff -u -r1.1.1.3 -r1.2 --- tools.c 1999/03/07 09:02:46 1.1.1.3 +++ tools.c 1999/03/07 14:42:02 1.2 @@ -33,9 +33,14 @@ #endif #else # ifndef __USE_GNU +# ifdef FREEBSD +# define _sys_nerr sys_nerr +# define _sys_errlist sys_errlist +# else extern int _sys_nerr; extern char *_sys_errlist[]; # endif +# endif #endif int nw_debug=0; Index: doc/README.FREEBSD =================================================================== RCS file: /usr/local/cvsrp/mars/doc/README.FREEBSD,v retrieving revision 1.1.1.2 retrieving revision 1.4 diff -u -r1.1.1.2 -r1.4 --- README.FREEBSD 1999/03/07 09:02:50 1.1.1.2 +++ README.FREEBSD 1999/03/07 14:42:06 1.4 @@ -5,60 +5,49 @@ Notes given below related only to FreeBSD. For full description of Mars_nwe, please read README file. - Additional info available at http://www.dixi.ml.org/bp/ + Additional info about IPX on FreeBSD available at +http://www.butya.kz/~bp/ 1. Kernel configuration To enable kernel support for IPX protocol you must include - keyword "options IPX" and rebuild kernel. +"options IPX" keyword and rebuild kernel. If you are running FreeBSD +3.x or 2.2.8, please download patched versions for IPX stack and +IPXrouted frow above URL. These changes already commited in to -current +branch. 2. Interface configuration - - If it's first NCP server in your network you can select -any network number. If not, take it from Netware server configuration. -Network number must be the same as assigned to frame Ethernet_II. + + If it's first NCP server in your network you can select any network +number for ethernet interface. If not, take it from Netware server +configuration. Network number must be the same as assigned to Ethernet_II +frame. After net number is selected you can configure interface: -ifconfig ed0 ipx 0x101. +ifconfig ed0 ipx 0x101 If FreeBSD machine have a two network cards you must choose different network numbers for each card. + Also select an unqiue number for internal net and configure it +as follows: +ifconfig lo0 ipx 0xbebe.1 + + Note, that you should set host number to 1. + 3. Running IPXrouted FreeBSD have its own SAP/RIP daemon which must be run before Mars_nwe and after interface configuration. IPXrouted must be running -with switch '-s'. If Mars_nwe will be the only Netware-like server -the following patch must be applied to IPXrouted: - ----------------------------------------------------- ---- sap_tables.c.old Mon Feb 16 19:54:32 1998 -+++ sap_tables.c Mon Jul 10 16:14:45 1998 -@@ -134,6 +134,7 @@ - for(sap = sh->forw; sap != (sap_entry *)sh; sap = sap->forw) { - if (ServType != sap->sap.ServType) - continue; -+#if 0 - if (ifp == sap->ifp) - continue; - -@@ -147,6 +148,7 @@ - goto next; - csap = csap->clone; - } -+#endif - - if (ntohs(sap->sap.hops) < besthops) { - best = sap; ----------------------------------------------------- - +with switch '-s'. Please use only patched version of IPXrouted if you +are run 2.2.8 or 3.x of FreeBSD. 4. Client configuration - This port of Mars_nwe was tested with VLM and Client32 -client software. Because FreeBSD support only Ethernet_II frame + This port of Mars_nwe was tested with VLM, Client32 and +native FreeBSD clients. Since FreeBSD support only Ethernet_II frame it is necessary to create net.cfg file (for VLM) to enable this frame: @@ -69,9 +58,10 @@ 5. Configuring Mars_nwe - Section 3 of nw.ini file specified network number in hexadecimal -format. In general, this must be an "internal net" but kernel lacks support -for that and for now select same net number which assigned to interface. + Section 3 of nwserv.conf file specified network number in hexadecimal +format. This should be an internal network number configured on interface lo0. +For above example set following: +3 0xbebe Section 4 are completly ignored. Index: examples/config.h =================================================================== RCS file: /usr/local/cvsrp/mars/examples/config.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- config.h 1999/01/28 06:21:38 1.1.1.1 +++ config.h 1999/01/28 06:23:09 1.2 @@ -11,9 +11,9 @@ # define PATHNAME_PROGS "." /* where to find the executables */ # define PATHNAME_BINDERY "." /* directory for bindery-files */ #else -# define FILENAME_NW_INI "/etc/nwserv.conf" +# define FILENAME_NW_INI "/usr/local/etc/nwserv.conf" /* full name of ini (conf) file */ -# define PATHNAME_PROGS "/usr/sbin" /* where to find the executables */ +# define PATHNAME_PROGS "/usr/local/sbin" /* where to find the executables */ # define PATHNAME_BINDERY "/var/nwserv/db" /* directory for bindery-files */ #endif