mars_nwe-0.99.pl19

This commit is contained in:
Mario Fetka
2011-11-13 00:38:59 +01:00
parent 5c18363271
commit c1c64c1591
75 changed files with 11044 additions and 4466 deletions

43
doc/BUGS.nl Normal file
View File

@@ -0,0 +1,43 @@
Als je problemen heb:
-----------------
- Kijk of je in de kernel wel IPX heb geinstalleerd
CONFIG_IPX=y ( of m en het ipx module is geladen (insmod ipx))
- Kijk of je geen intern IPX netwerk hebt geinstalleerd 'full
internal net'. (kernel optie)
CONFIG_IPX_ITERN=n
- Lees altijd de documentatie: doc/INSTALL[.ger/.nl],
doc/README[.ger/.nl], doc/FAQS en examples/nw.ini
Zeer belangrijke secties in nwserv.conf(nw.ini) zijn:
Sectie 1: Volumes
Sectie 3: Number of the internal network
Sectie 4: IPX-devices
Sectie 5: device flags
Sectie 6: version-"spoofing"
Sectie 12: supervisor-login
Als je niet kunt inloggen, probeer het dan eens met de meegeleverde
configuratie bestanden, zonder deze te veranderen.
- Belangrijk nieuws staat in doc/NEWS.
- zet de debug switches in sectie 101 .. 10x op '1',
probeer het opnieuw met het herstarten van nwserv en kijk in het
log bestand in /tmp/nw.log
Misschien begrijp je het probleem dan. :)
Sommige kleine aantekeningen voor probleem- of bug-'reporters'.
---------------------------------------------------------------
- Geef je systeem waarop je draait door en de volledige mars_nwe
versie, bijvoorbeeld:
mars_nwe versie: 0.99.pl14
linux-kernel: 2.2.0p9
het type client: (NCPFS, DOS (NETX/VLM), OS2, WIN, Novell client
32 WIN ..)
de veranderingen in nwserv.conf(nw.ini) en de config.h
- als je nwserv.conf opstuurd, haal het commentaar eruit.
doe dit door in te tikken 'make showconf' in de mars_nwe source dir
of doe 'grep "^[ \t*[0-9]" /etc/nwserv.conf'
- vermeld of je client wel loopt met een 'echte Novell-server'
(als je er een hebt. ;) )
Bekende problemen / oplossingen:
--------------------------------
- kijk is doc/FAQS

View File

@@ -1,6 +1,8 @@
Sorry, this is in German only.
Sorry, beginning is in German only.
User important notes are in the NEWS file.
Aenderungen in mars_nwe bis zum : 03-Nov-97
Aenderungen in mars_nwe bis zum:
Changes in mars_nwe till:
=> 30-May-00 <=
--------------------------------
Erste 'oeffentliche' Version
^^^^^^^^^^ VERSION 0.94 ^^^^^^^^
@@ -393,10 +395,10 @@ Erste 'oeffentliche' Version
- Verzeichnisse werden nicht mehr auf readonly gesetzt.
<----- ^^^^^^^^^^ pl4 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- negotiate Buffersize von < 512 wird nun ignoriert. ( Hayo Schmidt )
- namspace.c:
- namspace.c:
- get_dbe_data_from_disk: Rechteproblem beim readlink beseitigt.
- max_dir_base_entries nun auch in conf file aenderbar (section 63)
- nw_search_file_dir so abgeaendert dass das Loeschen von Verzeichnissen
- nw_search_file_dir so abgeaendert dass das Loeschen von Verzeichnissen
nun funktionieren sollte. Evtl. muss bei sehr grossen Verzeichnissen
max_dir_search_handles(section 80 in nwserv.conf) hochgesetzt werden.
<----- ^^^^^^^^^^ pl5 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -408,6 +410,131 @@ Erste 'oeffentliche' Version
- archive bit ist bei Dateien nun default gesetzt.
- archive bit wird nun bei Client Schreiboperationen gesetzt.
<----- ^^^^^^^^^^ pl6 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- in examples/config.h. NEW_ATTRIB_HANDLING removed.
- connect.c: nw_dir_search() corrected for new get_dir_attrib.
- changed some includes and defines for (g)libc6 / RH5.
- added some fixes from Andrew Sapozhnikov <sapa@hq.icb.chel.su>
fixed prop_find_member bug, !!!!!!!! VERY important !!!!!!
fixed add and delete property_val,
fixed dos search routine.
- new startup bindery check/compress routine.
- prop_delete_member changed to avoid holes (id==0) in a set section.
- bindery function creat_new_db() now saves old files to xyz/nwdbm.sav/.
<----- ^^^^^^^^^^ pl7 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- queue code changed. WinNT did not print every job.
should also solve some strange problems under W95 and dos clients.
- old dos search routine is now reused again for namespace calls, because
new dos search routine from Andrew did not work with this calls.
( xcopy32 *.* did not work for for non OS/2 namespace volumes )
<----- ^^^^^^^^^^ pl8 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- nwqconn.c:open_creat_queue_file(): insert missing nw_free_dir_handle()
- nwdbm.c: enhanced section 22, now normal user/client may act as print-
qserver.
- nwfile.c: removed bug in file read routine when reading a pipe.
- nwqueue.c: nw_service_queue_job()
queue files of length 0 are now deleted automaticly 1 minute
after creation, if they are serviced by a queue server.
- nwqueue.c: new: nw_close_connection_jobs()
- nwqconn.c: new: free_connection_task_jobs()
- added first simple trustee routines. ( new volume switch 't' )
see doc/TRUSTEES
- added supervisor security equals handling.
- changed device configurator a little bit so that running
ipx programs like ncpmount will not be killed by a
starting or stopping nwserv.
- changed default attrib/trustee location from /var/lib/nwserv -> /var/nwserv
- some cleanings to make UnixWare happy.
- close_file() only closes file if task correspond with file opened task.
Do not know whether this is ok, but it seems so.
Programs like Visual C linker (Borland,MS) now work correct.
<----- ^^^^^^^^^^ pl9 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- changed call 0x17, 0x0f, to let it handle only files not directories.
(mask 0x10 attrib flag )
- new dos search routine (from pl7) changed to handle '*' correct, for
example the call 0x17, 0x0f is called by syscons change file trustees
with '*' as searchstring. Also changed to handle '*xyz.xyz' in a
more restrictive way. I hope this is correct now.
<----- ^^^^^^^^^^ pl10 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- ncp call 0x7a (read queue job entry (new)) is now availible.
<----- ^^^^^^^^^^ pl11 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- changed default bindery directory location:
/etc -> /var/nwserv/db ( section 45 )
- possibility to unset the print banner flag.
( some strange W95 printer drivers always set banner flag to TRUE )
- port to FreeBSD by Boris Popov <bp@butya.kz>
<----- ^^^^^^^^^^ pl12 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- small FreeBSD patch from Boris Popov. (nwroute1.c)
- added diagnostic-answers routine from Valeri Bourak. (nwserv.c)
- small pipe-filesystem patches.
- changed example programs (unxcomm/comm) for pipe-filesystem access.
- BUG in unx_xrmdir(),unxfile.c removed, opendir() was called twice.
- added namespace calls (0x57) add,delete trustee routines.
- new function 'Get Queue Job List' (0x17,0x81) added.
- new function 'Set Queue Status' (0x17,0x67/0x7e) added.
- debug/log file now with date/time
- nw_close_file() now closes files again which were opened
with different task. ( was inserted in pl9 )
- open_creat_queue_file() routine only sets the file noreuse flag
if file is opened for writing.
- fn_dos_match routine corrected, was broken in pl7. ( ndir.exe works again )
<----- ^^^^^^^^^^ pl13 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- now section 1 permissions works for '~' ('HOME') entries too
- get_fs_usage now also sets fsu_bavail to limit.
- new flag 'T' for volumes which has trustees & ignore the rights granted
in UN*X filesystem, added by Norbert Nemec <nobbi@cheerful.com>
- added 'inherited_rights_mask handling' to some routines.
- nwfile.c. Filehandle can now be used for more than one open.
Don't know whether this is correct. Under W95 client the dos
programm 'blinker' needs it.
- nw_rmdir() in connect.c now returns correct error code if directory
cannot be removed because it is not empty.
<----- ^^^^^^^^^^ pl14 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- doc/PIPE-FS.ger with new examples from Sascha Herrmann
- added '#define _SVID_SOURCE' and '#define _XOPEN_SOURCE'
in net.h to let mars_nwe work with glibc.
- connect.c, free_dir_stuff(), correcting error when recursively deleting a
largish directory tree, hint from Boris Popov, 21-Feb-99.
- Get Queue Job List (new) now returns info in right byte order.
Error appeared under Win9x with Novell Client32 when printing.
( segmentation error in spool32 ) bug corrected by georg@globaltrading.net.
<----- ^^^^^^^^^^ pl15 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- docs from Mendel Mobach (xxx.nl)
- some fixes to let mars_nwe compile under 2.2.x kernels.
- some BSD fixes from Boris Popov
- fix from Paolo Prandini for the wrong return code when an user without
supervisory rights tries to shutdown the server
- nw_open_creat_file_or_dir() now does not creat file if called with
opencreatmode==8 and file already exist. ( important for Win98 )
- dos 'rename files' now works with wildcards on both side (source and dest)
- nw_close_file() normally do not close files which were opened
with different task ( same as in pl9 ). But files are allways closed if
they are created with task 0 or if current task = 0.
- Routine which opened same file for more than one time deactivated,
because share conditions were wrong. Function was added in pl14.
Perhaps this routine will not be needed anymore.
- new signal SIGUSR2 for nwconn process to give info about open files.
the loginfo is placed into /tmp/nwconnxxxx.log
<----- ^^^^^^^^^^ pl16 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- rename file corrected. Error inserted in 0.99.pl16
- small patch in tools.c ( initialisation of logfile )
<----- ^^^^^^^^^^ pl17 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- prevent some possible buffer overflows.
security hint from Przemyslaw Frasunek <venglin@FREEBSD.LUBLIN.PL>
- better file share/lockings, with code from
Ingmar Thiemann <ingmar@gefas.com> and Przemyslaw Czerpak
- function Log Logical Record (NCP 0x9) aktivated
and lock flag 0x2 ( sharable ro lock ) added.
- function Log File (NCP 0x3) aktivated
and lock flag 0x2 ( sharable ro lock ) added.
- Clear File / Release File added.
- passwords with '-' at beginning should now be allowed in nwserv.conf.
- better trustee handling.
<----- ^^^^^^^^^^ pl18 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- security fixes. ( unlink() before fopen() )
- fixed routine 0x57/0x18, Get Name Spaces Loaded
- Login Restriction Routines from Paolo Prandini
- removed bug from pl18 for empty passwords and
passwords beginning with '-'. ( tnx Przemyslaw Czerpak )
- trustee fix
<----- ^^^^^^^^^^ pl19 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

View File

@@ -16,6 +16,9 @@ Guntram Blohm <gbl%th7csun1@str.daimler-benz.com>
Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de>
many testings+notes
Valeri Bourak <bvn@kali.belpak.minsk.by>
added some code
Arne de Bruijn <arne@knoware.nl>
testings, exploring ncp mysterius (netx), notes
@@ -26,17 +29,26 @@ Csoma Csaba <csoma@usa.net>
testings+bugfixes
Przemyslaw Czerpak <przemyslaw.czerpak@students.mimuw.edu.pl>
testings+bugfixes
testings+bugfixes+more bugfixes (pcz:)
Ales Dryak <A.Dryak@sh.cvut.cz>
his linware gave the kick
Fritz Elfert <fritz@wuemaus.franken.de>
gives bugreport and patches
give bugreport and patches
Przemyslaw Frasunek <venglin@FreeBSD.lublin.pl>
hints for possible security bugs
Peter Gerhard <pgerhard@jpn.tuv.com>
testings, bugreport, patches.
Georg <georg@globaltrading.net>
fixed bug with print queue handling.
Sascha Herrmann <sascha@system.rhein-main.de>
docs, scripts
Victor Khimenko <khim@mccme.ru>
cyrillic filename patches
@@ -61,9 +73,21 @@ James B. MacLean <macleajb@ednet.ns.ca>
Louis Zammit Mangion <lzamm@phys.um.edu.mt>
testings+bugfixes
Mendel Mobach <mendel@mobach.nl>
some doku
Norbert Nemec <nobbi@cheerful.com>
some patches
Matt Paley <mtpa@mail.nerc-bas.ac.uk>
adding QUOTA support, login time restrictions
Boris Popov <bp@butya.kz>
ported mars_nwe to FreeBSD
Paolo Prandini <prandini@spe.it>
added login control routines
Jiri A. Randus <Jiri.Randus@vslib.cz>
testing bindery code
@@ -76,8 +100,13 @@ Mr. Charlie Root (alexey) <root@cs.imi.udmurtia.su>
Andrew Sapozhnikov <sapa@hq.icb.chel.su>
fixed findfirst/findnext bug,
fixed directory access bug,
added extend "Volume is home" feature.
fixed "rename wildcard" bug.
added extend "Volume is home" feature,
fixed "rename wildcard" bug,
fixed prop_find_member bug,
fixed x_str_match (DOS match) routine.
Christoph Scheeder <christoph.scheeder@scheeder.de>
added TRUSTEE_T flag
Hayo Schmidt <100305.1424@compuserve.com>
added patch to let ATARI client work.
@@ -85,13 +114,20 @@ Hayo Schmidt <100305.1424@compuserve.com>
Gregory Steuck <greg@nsu.ru>
testings and errorreports
Neal Stephenson <neal@nstephenson.gw.yorku.ca>
patch for glibc6
Morio Taneda <eb04@rz.uni-karlsruhe.de>
testings, bugfixes
Erik Thiele <erik@escape.mos.unterland.de>
testings and doc
Winfried Truemper <winni@xpilot.org>:
Ingmar Thiemann <ingmar@gefas.com>
added patches for better file locking/sharing
Winfried Truemper <winni@xpilot.org>
re-wrote `INSTALL' and added explanations to `nw.ini'
Jukka Ukkonen <jau@iki.fi>
small patches

View File

@@ -1,4 +1,4 @@
last updated: 14-Jul-97
last updated: 21-Feb-99
Q: Which DOS programs from the real Netware do I need?
A: For a minimal configuration you only need LOGIN.EXE.
@@ -10,6 +10,10 @@ A: For a minimal configuration you only need LOGIN.EXE.
There is also a DOS client program in development, which will allow
the use of mars_nwe without the original Novell DOS tools.
Q: Do I need a device called '/dev/ipx', because I found references in mars_nwe
A: When you use Linux, no. These references are only used under OS-es with
TLI interfaces like UnixWare (tm)
Q: I don't exactly understand the meaning of some points in nw.ini:
12,13
What will happen if I do not put PASSWORD here? Will it take it from

85
doc/FILESHARING Normal file
View File

@@ -0,0 +1,85 @@
Filesharing, tested with function 0x4c on a real Novell Server.
(+) = Openfile OK
(-) = Openfile fail
FILE OPEN (NCP 0x4C) with SHARE Flag set. Tested with NW312
-------------------------------------------------------------------------------------------------------------
11 |11(+) |12(+) |13(+) |01(+) |02(+) |03(+) |09(+) |0a(+) |0b(+) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
12 |11(+) |12(+) |13(+) |01(+) |02(+) |03(+) |09(-) |0a(-) |0b(-) |05(+) |06(+) |07(+) |0d(-) |0e(-) |0f(-) |
13 |11(+) |12(+) |13(+) |01(+) |02(+) |03(+) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
--
01 |11(+) |12(+) |13(+) |01(+) |02(+) |03(+) |09(+) |0a(+) |0b(+) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
02 |11(+) |12(+) |13(+) |01(+) |02(+) |03(+) |09(-) |0a(-) |0b(-) |05(+) |06(+) |07(+) |0d(-) |0e(-) |0f(-) |
03 |11(+) |12(+) |13(+) |01(+) |02(+) |03(+) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
--
09 |11(+) |12(-) |13(-) |01(+) |02(-) |03(-) |09(+) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
0a |11(+) |12(-) |13(-) |01(+) |02(-) |03(-) |09(-) |0a(-) |0b(-) |05(+) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
0b |11(+) |12(-) |13(-) |01(+) |02(-) |03(-) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
--
05 |11(-) |12(+) |13(-) |01(-) |02(+) |03(-) |09(-) |0a(+) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
06 |11(-) |12(+) |13(-) |01(-) |02(+) |03(-) |09(-) |0a(-) |0b(-) |05(-) |06(+) |07(-) |0d(-) |0e(-) |0f(-) |
07 |11(-) |12(+) |13(-) |01(-) |02(+) |03(-) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
--
0d |11(-) |12(-) |13(-) |01(-) |02(-) |03(-) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
0e |11(-) |12(-) |13(-) |01(-) |02(-) |03(-) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
0f |11(-) |12(-) |13(-) |01(-) |02(-) |03(-) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
--
=============================================================================================================
FILE OPEN (NCP 0x4C) without SHARE Flag set. Tested with NW312
-------------------------------------------------------------------------------------------------------------
11 |11(+) |12(-) |13(-) |01(+) |02(-) |03(-) |09(+) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
12 |11(-) |12(-) |13(-) |01(-) |02(-) |03(-) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
13 |11(-) |12(-) |13(-) |01(-) |02(-) |03(-) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
--
01 |11(+) |12(-) |13(-) |01(+) |02(+) |03(+) |09(+) |0a(+) |0b(+) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
02 |11(-) |12(-) |13(-) |01(+) |02(+) |03(+) |09(-) |0a(-) |0b(-) |05(+) |06(+) |07(+) |0d(-) |0e(-) |0f(-) |
03 |11(-) |12(-) |13(-) |01(+) |02(+) |03(+) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
--
09 |11(+) |12(-) |13(-) |01(+) |02(-) |03(-) |09(+) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
0a |11(-) |12(-) |13(-) |01(+) |02(-) |03(-) |09(-) |0a(-) |0b(-) |05(+) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
0b |11(-) |12(-) |13(-) |01(+) |02(-) |03(-) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
--
05 |11(-) |12(-) |13(-) |01(-) |02(+) |03(-) |09(-) |0a(+) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
06 |11(-) |12(-) |13(-) |01(-) |02(+) |03(-) |09(-) |0a(-) |0b(-) |05(-) |06(+) |07(-) |0d(-) |0e(-) |0f(-) |
07 |11(-) |12(-) |13(-) |01(-) |02(+) |03(-) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
--
0d |11(-) |12(-) |13(-) |01(-) |02(-) |03(-) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
0e |11(-) |12(-) |13(-) |01(-) |02(-) |03(-) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
0f |11(-) |12(-) |13(-) |01(-) |02(-) |03(-) |09(-) |0a(-) |0b(-) |05(-) |06(-) |07(-) |0d(-) |0e(-) |0f(-) |
--
----------------
Access Modi
-----------------------------
Access | R W DR DW |
-----------------------------
0x01 | X |
0x02 | X |
0x03 | X X |
0x09 | X X |
0x0a | X X |
0x0b | X X X |
0x05 | X X |
0x06 | X X |
0x07 | X X X |
0x0d | X X X |
0x0e | X X X |
0x0f | X X X X |
-----------------------------
----------------
Handling Compatibility Access Modus.
shared | not shared
---------------------------------------------
Access | R W DR DW | R W DR DW
---------------------------------------------
0x11 | X | X X
0x12 | X | X X X
0x13 | X X | X X X X
---------------------------------------------

View File

@@ -330,9 +330,7 @@ ersten Start von "nwserv" angelegt. Der Volume-Name ist ueblicherweise
"SYS".
Beim Anlegen und Eintragen der Optionen fuer das Volume SYS unbedingt
auf Gross- und Kleinschreibung achten, sonst sind diese Dateien
nachher fuer den Client nicht Sichtbar. Alle weiteren Volumes sind
Optional und koennen beliebige Verzeichnisse (ausser /) freigeben.
Auf Verzeichniss "/" hat nur der root=Supervisor Zugriff. Volumes
nachher fuer den Client nicht sichtbar. Volumes
koennen mit NFS gemountete Verzeichnisse, CD-Roms, Floppys und
beliebige unter Linux mountbare Filesystems sein. Die einzige
Einschraenkung besteht in der Beschraenkung auf entweder alles gross

View File

@@ -132,5 +132,5 @@ the mars_nwe-package.
good luck :-)
Martin Stover <mstover@stover.f.eunet.de>
Martin Stover <mstover@compu-art.de>

133
doc/INSTALL.nl Normal file
View File

@@ -0,0 +1,133 @@
INSTALLATIE: ( Mendel Mobach <mendel@mobach.nl>)
Dit is het bestand "INSTALL.nl", een stap-voor-stap handboek voor het
installeren van het mars_nwe-pakket.
(1) Pak een goede ipx-kernel-versie ne compileer die met IPX Support,
Maar zonder 'Full internal network'. je kun dit doen door op de
volgende manier te antwoorden op de volgende vragen tijdens het
draaien van "make config":
The IPX protocol (CONFIG_IPX) [N/m/y/?] y
Full internal IPX network (CONFIG_IPX_INTERN) [N/y/?] n
Voor algemen vragen over het compileren van een kernel, kijk in de
Linux-Kernel-HOWTO.
De beste kernels voor Mars_nwe zijn 2.0.x.
Oudere kernels werken soms niet, omdat er bugs in de ipx-code
zitten. Kijk in de directorie 'examples' voor patches.
(2) Maak hier een keuze, of de mars_nwe je ipx-subsysteem moet initialiseren
en routing beheren, of dat je dit doet met de hand met andere producten.
Voordat je een probleem mailt naar de mailinglist over problemen met
mars_nwe, probeer dit eerst.
(2a) Configureer het IPX-subsysteem met "mars_nwe"
Je hebt geen andere ipx-tool of routers/daemons nodig
in dir geval.
Dit is gestest zodat "mars_nwe", "dosemu", "ncpfs" of
Caldera's "nwclient" hiermee goed samenwerken.
zet INTERNAL_RIP_SAP op "1" in `mars_nwe/config.h':
#define INTERNAL_RIP_SAP 1
Als je andere IPX/NCP server in je lokale netwerk hebt kun je
de "mars_nwe" automatisch de goede waarde laten invullen voor je
ipx-subsysteem.
Dit houd in dat je de volgende secties in 'nwserv.conf' zo invult:
3 0x0 # Gebruik je Ipx nummer voor het interne netwerk.
4 0x0 * AUTO # autodetect je interafces.
5 0x2 # laat de kernel automatisch interfaces voor
# creeeren.
Zorg dat er geen enkele andere server is die je interne netwerk-
nummer gebruikt als zijn netwerk nummer.
Als er geen andere IPX/NCP server is op je netwerk, dan kan het netwerk
nummer in sectie '4' elk nummer zijn.
4 0x10 eth0 ethernet_ii # eth0 device met het netwerk nummer '0x10'
# en frametype: ETHERNET_II.
4 0x20 eth0 802.3 # eth0 device met het netwerk nummer '0x20'
# en frametype: ETHERNET_802.3.
(2b) Handmatige configuratie van het IPX-subsysteem
In deze mode moet je tools zoals "ipx-configure" en
"ipxd" gebruiken voor het configureren van ipx-interfaces,
ipx-routes en om rip/sap aanvragen af te handelen.
zet INTERNAL_RIP_SAP op "0" in `mars_nwe/config.h':
#define INTERNAL_RIP_SAP 0
(3) Compileer de programma's van het Mars_nwe pakker
pak de source van "mars_nwe" uit en ga naar de directorie waarin
die is uitgepakt ('mars_nwe').
Type hget volgende comando in:
make
Dit command maakt de volgende bestanden: 'config.h' en 'mk.li'.
Edit de zoals jij ze nodig hebt. 'mk.li' moet alleen veranderdt
worden onder hele rare omstandigheden, of als je problemen hebt
met het compileren en/of het linken van dit pakket.
draai nu "make" opnieuw:
make
(4) Bewerk ("edit") het configuratie bestand 'nw.ini'.
Zorg dat je zeker weet dat alle benodigde secties in je oude configuratie
bestand staan, als je upgrade naar een nieuwere versie van de "mars_nwe".
(5) Installeer alles
Zeg alleen:
make install
en soms:
make install_ini
Deze laatste is alleen nodig als je je het _bestaande_ configuratie
bestand (nwserv.conf) wilt overschrijven met nw.ini
(6) Creer de directories die te zien moete zijn voor DOS-clients
Op z'n minst moet het volume "SYS" zijn gedefineerd in het configuratie
bestand nwserv.conf. Creer de geassocieerde directory als die al niet
bestaat en zet de programma's "login.exe" en "slist.exe" in de
"LOGIN" / "login" directorie.
Je kunt ook de vrij verkrijgbare mars_dosutils gebruiken.
NIEUW !
in nieuwere versies va de MARS_NWE worden deze directories automatisch
gecreetd bij de eerste keer dat de mars_nwe server opstart.
(7) Start de server
Start het volgende programma als root op:
nwserv
(8) Stop de programma's (server plat)
Als de mars_nwe server op de voorgrond loopt kun je de server stoppen
met een ^C (CTRL-C), anders kill de PID van nwserv,tik in 'nwserv -k'
Of gebruik het dos programma fconsole en kies "server down" als je als
supervisor (of gelijke) bent aangelogd.
Sectie 210 in het "nw.ini" / "nwserv.conf" bestand geeft de tijd in
seconden voordat de server echt stop.
Veel geluk :-)
Martin Stover <mstover@compu-art.de>

View File

@@ -1,3 +1,16 @@
------23-Jul-98--- 0.99.pl12 ---------
- changed default bindery directory location:
/etc -> /var/nwserv/db ( section 45 )
------10-May-98--- 0.99.pl9 ---------
- changed default attrib directory location:
/var/lib/nwserv/attrib -> /var/nwserv/attrib. ( section 46 )
- changed default rights to 751 640. (section 9 and section 1 )
- first trustee handling added. See new volume flag 't' and 'doc/TRUSTEES'.
------03-Mar-98--- 0.99.pl7 ---------
- very important BUG fixed by Andrew Sapozhnikov. <sapa@hq.icb.chel.su>
The properties find member functions could find max. 32 entries. (1 segment)
Please enable 'ckeck/compress bindery on startup' (section 16, nwserv.conf)
to let mars_nwe do some checks/compressings on old bindery entries.
------08-Feb-98--- 0.99.pl6 ---------
- archive bit handling changed. (default set if file, unset if directory)
- section 5: deleting of ipx devices/routes changed.

View File

@@ -41,13 +41,14 @@ A simple print operation can be achieved with the following script:
This allows you to print under dos/windows without capturing.
In the examples dir exist the two programpairs comm<->unxcomm
and sendm<->unxsendm as additional examples for using 'PIPE-filesystem'.
With comm/unxcomm it is very easy to start simple Linux programs
by your client.
for examples: ps, lpq, lprm ...
In the examples directory there are two pairs of programs,
comm<->unxcomm und sendm<->unxsendm, that provide further examples
of how to use the PIPE-filesystem.
Using comm/unxcomm it is very easy to invoke simple Linux programs
from the client, e.g. ps, lpq, lprm ..
I would appreciate hearing about further documented applications of
the PIPE filesystem or suggestions for other ways of using it.
If anyone has other documented applications of the PIPE-filesystem,
or any suggestions about other ways it might be used, I'd be very glad
to hear from them.
Martin

View File

@@ -1,4 +1,7 @@
/* PIPE- Filesystem */
1. Was sind PIPEs?
das 'PIPE Filesystem' entstand urspruenglich aus der Frage heraus:
Wie kann ich ein Linux System oder Teile davon ueber/auf einen
DOS-Rechner oder Novell Fileserver sichern.
@@ -15,6 +18,10 @@ je nach Modus des ersten Zugriffes (Read oder Write).
Das 'PIPE-Filesystem' bietet damit eine direkte Schnittstelle
zwischen Client Anwendungen und Linux Programmen.
2. Beispiele
2.1 Dos->Linux, Linux->Dos Backup
Die Loesung des obigen Problems ergab sich dann mit folgendem einfachen
Shell Script, welches im PIPE-Filesystem hinterlegt wurde.
@@ -29,7 +36,7 @@ case "$1" in
# save directory /u3/mar
;;
*)
;;
;;
esac
Unter DOS kann nun diese 'Pipe Datei' mit dem Copy Befehl in eine
@@ -37,6 +44,8 @@ lokale Datei 'kopiert' werden ( -> Sichern ) bzw. es
kann die lokale Datei auf diese 'Pipe Datei' kopiert werden.
( -> Ruecksichern )
2.2 Drucken ueber Pipes
Ein einfaches Drucken kann z.B. mit folgendem Mini Script realisiert werden.
Anstatt des Scriptes reicht in diesem Fall natuerlich auch ein link auf
/usr/bin/lpr.
@@ -46,6 +55,93 @@ Anstatt des Scriptes reicht in diesem Fall natuerlich auch ein link auf
Dadurch kann ein capture unter DOS/Windows entfallen.
2.3 Private Windowsinstallation fuer jeden Netzbenutzer
(Beispiel von Sascha Herrmann <sascha@system.rhein-main.de>)
Die Idee fuer diesen Script, war auf einem Netz mit Diskless PCs, die ueber
mars-nwe ihr Dos/Windows System bekommen, fuer jeden einzelnen Benutzer eine
eigene Windowsconfiguration zu bekommen.
Hierfuer habe ich einen kleinen Shellscript geschrieben, der diese Aufgabe
bisher recht gut erledigt, ohne viel Speicherplatz zu verschwenden.
Fuer den Skript muss zunaechst einmal Windows in mehrere Teile aufgesplittet
werden, einen gemeinsamen Teil, auf den kein Schreibzugriff noetig ist
(*.exe, *.dll etc.) und einen Teil auf den Schreibzugriff noetig ist (*.ini
etc.). Windows bringt mit der Serverinstallation schon eine moeglichkeit die
Installation in zwei Teile aufzuspalten. setup /a erzeugt ein Verzeichnis,
das von allen Benutzern gemeinsam benutzt werden kann und setup /n erzeugt
dann eine Benutzerinstallation, die nur noch ca. 500kb gross ist. Das so
erzeugte Verzeichnis wird nun auf den Server kopiert und dort nochmal in
zwei Teile aufgeteilt (nach dem oben beschriebenen Schema).
Der Skript kopiert und linkt nun einfach die Dateien aus dem mit setup /n
installierten Dateien in ~/windows/windows. Wenn man nun auf den Dosclient
das Volume \\SERVER\HOMEDIR\WINDOWS auf Laufwerk d: und das mit setup /a
erzeugte Verzeichnis auf ein anderes Laufwerk einbindet hat man eine
funktionierende Windowsinstallation, die pro Benutzer grade einmal 80kb
Plattenplatz wegnimmt.
Der Skript wird nach jedem login von dem Dosclient durch einen type auf die
Datei ausgefuehrt und kopiert alle Dateien mit cp -au (u steht fuer Update,
daher nur neuere Dateien werden kopiert) aus $TEMPLATE/dynamic nach
~/windows/windows und legt fuer jede Datei aus $TEMPLATE/static einen
symbolischen link in ~/windows/windows an. Damit kann man die mit setup -n
erstellten Dateien noch einmal in einen Teil mit und einem ohne
Schreibzugriff unterteilen.
Leider setzt mars-nwe (zumindest in 0.99.pl4) in Pipescripts die
umgebungsvariable $HOME immer auf /root, daher lese ich das Heimatverzeichnis
mit dem gethomedir.pl script aus /etc/passwd aus.
--------------------------------------------------------------------
#!/bin/sh
# mkwin Pipeskript
#
# !!!!ACHTUNG!!!!
# Wenn in $home/ eine Datei windows oder windows/windows exestiert,
# wird diese ohne nachfrage geloescht
PATH="/bin:/usr/bin"
TEMPLATE="/var/spool/nwserv/windows/template"
home=`/var/spool/nwserv/pipe/gethomedir.pl $UID`
case "$1" in
'READ')
if ! test -d $home/windows ; then
rm -rf $home/windows
fi
if ! test -d $home/windows/windows ; then
rm -rf $home/windows/windows > /dev/null
mkdir -pm 0700 $home/windows/windows
fi
for i in $TEMPLATE/static/* ; do
ln -s $i $home/windows/windows
done
cp -au $TEMPLATE/dynamic/* $home/windows/windows
;;
esac
-----------------------------------------------------------------
#!/usr/bin/perl
#
# File: gethomedir.pl
#
print "$1\n";
open(PW, "/etc/passwd");
while ($line=<PW>) {
chop($line);
($uid, $home) = ($line=~
/[^\:]*\:[^\:]*\:([\d]*)\:[^\:]*\:[^\:]*\:([^\:]*)\:/
);
if ($uid == $ARGV[0]) {
print "$home";
}
}
close(PW);
------------------------------------------------------------------
2.4 andere Beispiele
In dem Verzeichnis examples gibt es als zusaetzliches Beispiel
die Programmpaare unxcomm<->comm und sendm<->unxsendm.
Mittels unxcomm/comm ist es sehr einfach moeglich einige
@@ -56,3 +152,4 @@ Ueber weitere dokumentierte Anwendungen bzw. Anregungen zu dem
PIPE-Filesystem wuerde ich mich freuen.
Martin

View File

@@ -68,7 +68,7 @@ nwbind:
Have luck with trying. :)
Martin Stover <mstover@stover.f.eunet.de>
Martin Stover <mstover@compu-art.de>
BTW: The kick to make mars_nwe public was the publication of
linware ( lwared ), the NetWare-Emulator from

74
doc/README.FREEBSD Normal file
View File

@@ -0,0 +1,74 @@
This is a port of Mars_nwe, a free NetWare(tm) emulator for Linux and
UnixWare to FreeBSD. An original program was written by Martin Stover,
Marburg, Germany. Port to FreeBSD was made by Boris Popov (bp@butya.kz).
Notes given below related only to FreeBSD. For full description
of Mars_nwe, please read README file.
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
"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 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
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'. 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, 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:
LINK DRIVER NE2000
Frame Ethernet_802.3
Frame Ethernet_II
5. Configuring Mars_nwe
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.
6. Problems
If you have any questions do not hesitate to contact me, Boris Popov at
bp@butya.kz.

View File

@@ -68,7 +68,7 @@ der fehlenden bzw. fehlerhaften NCP-Calls wuerde ich mich freuen.
Martin
<mstover@stover.f.eunet.de>
<mstover@compu-art.de>
PS: Den Anstoss, mars_nwe zu veroeffentlichen, gab die
Veroeffentlichung von linware ( lwared ), dem Novell-Server-Emulator

72
doc/TRUSTEES Normal file
View File

@@ -0,0 +1,72 @@
last changed: 12-May-98
First simple trustee handling is added in 0.99.pl9.
some notes/restrictions:
NOT ALL functions will work correct with trustees rights.
Trustee handling still needs to be hard tested to avoid
SECURITY holes.
- trustee handling must be activated by setting the volumes 't' flag.
- if activated for the SYS directory then the following default
trustees should be set.
GROUP EVERYBODY: C in SYS:MAIL
FR in SYS:PUBLIC
SUPERVISOR: SRWCEMFA in SYS:
the standard user rights in mail diretories are not so important,
because user has unix rights in this diretory.
every USER: RWCEMF in SYS:MAIL/userid
A non root supervisor and user with supervisor equivalences
get default full trustee rights in root directory. These rights
could be altered in subdirectories to less rights.
A root supervisor always has full rights.
- if SYS volume is marked as trusttee volume then some
checking routines will reduce g+o unix accesses in
SYS:MAIL subdirectories.
- symlink directories must get direct trustees, inheritated_mask
is set to 0 to prevent user making symlinks to directories
they do not have real access.
- when stepping through directories,
inheritated_mask will be set to 0 if st_dev changes.
- only root assigned user may give trustee rights to
file/dir which st_dev differs from VOLUMES st_dev.
- only additional rights are given by trustees, existing
unix user rights are not reduced.
therefore trustee volumes should get low unix rights.
for example: 0711 for directories and 0600 for files.
- for many routines the user still needs the 'x' directory right.
- the trusttee search is limitated to user and first level groups.
'group in group' and 'normal' security equivalences are not supported.
Supervisor equivalences are supported.
- an user can only be member of 32 groups.
- some changes of trustees only have effect after new login.
- must never be switched on volumes which do not have fix inodes,
because trustees are represented by device and inode number of the
file or directory.
- standard trustee directory is /var/nwserv/trustees
( see nwserv.conf section 47 )
- representation under this directory is:
- for user trustees:
volumename/device/ino0/ino1/ino2/t.ino3/id -> trustee
ino0 .. ino3 = byte 0 .. 3 of inode
id = user id as hex number.
- for inherit right masks ( we use 'userid' 0 )
volumename/device/ino0/ino1/ino2/t.ino3/0 -> inherit_right_mask
- and for scanning trustees:
volumename/device/ino0/ino1/ino2/n.ino3 -> path
path is relativ to volumes root path.
- and for 'trustees are changed' notifications:
volumename/ts -> sernum (hex value)
all values are represented by symbolic links, not files similar
to the attribute handling.

30
doc/VRAGEN.NL Normal file
View File

@@ -0,0 +1,30 @@
Een aantal vragen en antwoorden. ( Mendel Mobach <mendel@mobach.nl> )
V: Welke Novell DOS programma's moet ik minimaal hebben?
A: Het minimun vereiste is LOGIN.EXE
Andere handige programma's zijn:
MAP.EXE wordt gebruikt om server volume's te verbinden met een
schijfletter.
CAPTURE.EXE wordt gebruikt om een printer-poort te verbinden met
een printer op de mars/novell server.
SYSCON.EXE wordt gebruikt voor het beheren van de server.
V: Heb ik het device '/dev/ipx' nodig? Ik zie verwijzingen vanuit de mars_nwe.
A: Als je Linux gebruikt, NEE. Dit device is alleen nodig indien men een OS
gebruikt met TLI-interfaces, b.v. Unixware (tm).
V: Ik begrijp entry 12/13 in de configuratie niet.
Wat gebeurt er als ik hier niks opgeef?
Wordt de '/etc/passwd' of '/etc/shadow' gebruikt?
A: Het wachtwoord in 12/13 wordt versleuteld opgeslagen in de bindery,
De wachtwoorden uit de '/etc/passwd' of '/etc/shadow' worden alleen gebruikt
als men werkt met 'unencryted login calls', oftewel ongecodeerde wachtwoorden
vanaf de client.
V: Welke rol speelt entry '15' in de configuratie?
A: In deze entry staat een wachtwoord, wat alleen wordt gebruikt als men
automatische UNIX naar mars_nwe usermapping heeft aanstaan, oftewel als
men in unix een gebruiker toevoegt, en daarna de mars_nwe herstart wordt
die gebruiker ook in de bindery opgenomen en krijgt hij het standaard
wachtwoord.

View File

@@ -1,16 +1,16 @@
Begin3
Title: mars_nwe
Version: 0.99.pl6
Entered-date: 09-Feb-98
Description: Full netware-emulator (src), beta.
Version: 0.99.pl19
Entered-date: 25-Apr-00
Description: Full netware 3.xx emulator (src), beta.
Supports file-services, bindery-services,
printing-services, routing-services.
Keywords: novell, netware, server, ipx, ncp, tli
Author: mstover@compu-art.de (Martin Stover)
Maintained-by: mstover@compu-art.de (Martin Stover)
Primary-site: http://www.compu-art.de/download/mars_nwe-0.99.pl6.tgz
250 kB
Alternate-site: ftp://gwdg.de/pub/linux/misc/ncpfs/mars_nwe-0.99.pl6.tgz
Platforms: Linux (1.2.xx, 1.3.xx, 2.xx), UnixWare (2.xx)
Copying-policy: GNU
Primary-site: http://www.compu-art.de/download/mars_nwe-0.99.pl19.tgz
320 kB
Alternate-site: ftp://ftp.gwdg.de/pub/linux/misc/ncpfs/mars_nwe/mars_nwe-0.99.pl19.tgz
Platforms: Linux (1.2.xx, 1.3.xx, 2.xx), FreeBSD, UnixWare (2.xx)
Copying-policy: GPL
End