metze/samba/wip.git
26 years agoImplemented asynchronous DNS lookups in nmbd.
Andrew Tridgell [Wed, 22 Oct 1997 11:02:00 +0000 (11:02 +0000)]
Implemented asynchronous DNS lookups in nmbd.

I realised this afternoon just how easy it is to add this, so I
thought I'd implement it while the idea was fresh.

nmbd forks at startup and uses a pipe to talk to its child. The child
does the DNS lookups and the file descriptor of the child is added to
the main select loop.

While I was doing this I discovered a bug in nmbd that explains why
the dns proxy option has been so expensive. The DNS cache entries in
the WINS list were never being checked, which means we always did a
DNS lookup even if we have done it before and it is in cache. I'm sure
this used to work (I tested the DNS cache when I added it) so someone
broke it :-(

Anyway, the async DNS gets rid of the problem completely. I'll commit
just the fix to the DNS cache bug to the 1.9.17 tree.

You can disable async DNS by adding -DSYNC_DNS to the compile flags.
(This used to be commit 178e27de0791c1ff3268cb456ed5c5efc9ac2a01)

26 years agoupdated tel no and email address for my entry.
Luke Leighton [Wed, 22 Oct 1997 10:13:03 +0000 (10:13 +0000)]
updated tel no and email address for my entry.
(This used to be commit da4b2bf466cfca31009e02f9b33227c0c4a048b2)

26 years agodon't send any statistics in the node status reply
Andrew Tridgell [Wed, 22 Oct 1997 03:16:35 +0000 (03:16 +0000)]
don't send any statistics in the node status reply
(This used to be commit a5f52340a49bb2c4f2cdfa7b3c8b45cc5b0e9ec6)

26 years agopreparing for release of 1.9.18alpha3
Samba Release Account [Tue, 21 Oct 1997 22:56:28 +0000 (22:56 +0000)]
preparing for release of 1.9.18alpha3
(This used to be commit e4f6ec8c0e2c1ea055cdc811b19feccbc808fd0b)

26 years agoWHATSNEW.txt: Updated for alpha3.
Jeremy Allison [Tue, 21 Oct 1997 22:51:21 +0000 (22:51 +0000)]
WHATSNEW.txt: Updated for alpha3.
server.c: int16 -> uint16 fix for port comparisons in oplock code.
          Needed for Solaris.
version.h: Updated to alpha3.
Jeremy (jallison@whistle.com)
(This used to be commit 2d9645e99ba30a5cce4372ff80d1bd26c516ac34)

26 years agoThe ubi_* modules are under LGPL, not standard GPL. This README explains
Christopher R. Hertel [Tue, 21 Oct 1997 21:43:42 +0000 (21:43 +0000)]
The ubi_* modules are under LGPL, not standard GPL.  This README explains
that.
(This used to be commit bc2834c2cc7bda0c1e780d160a73c8b71bfe467f)

26 years agopreparing for release of 1.9.18alpha2
Samba Release Account [Tue, 21 Oct 1997 21:17:26 +0000 (21:17 +0000)]
preparing for release of 1.9.18alpha2
(This used to be commit 27dbb81dd3ca44b45238d63f2ff3e8da429f9845)

26 years agoWHATSNEW.txt: Preparing for 1.9.18alpha2 release.
Jeremy Allison [Tue, 21 Oct 1997 19:55:34 +0000 (19:55 +0000)]
WHATSNEW.txt: Preparing for 1.9.18alpha2 release.
smb.conf.5: Added 'bind interfaces only' parameter.
version.h: Updated to 1.9.18alpha2.
Jeremy (jallison@whistle.com)
(This used to be commit 7221e19d5ef4a242ce29d3148957c3e481456934)

26 years agochgpasswd.c:
Jeremy Allison [Tue, 21 Oct 1997 18:27:55 +0000 (18:27 +0000)]
chgpasswd.c:
includes.h: SCO changes.
server.c: Added code in open_sockets to allow 'bind interfaces only' to
          work as documented.
Jeremy (jallison@whistle.com)
(This used to be commit 46ac5928d9069af1dc60e9724f38e228dd578937)

26 years agoloadparm.c :
Luke Leighton [Tue, 21 Oct 1997 18:25:14 +0000 (18:25 +0000)]
loadparm.c :

added "domain admin users" parameter
added "domain guest users" parameter

these two complement the "domain groups" parameter.  the "domain groups"
parameter should be for your own groups, and well-known aliases.

util.c :

added ability to do "domain groups = power_users admin_users backup_ops"
which are well-known RID aliases, not well-known RID groups.

pipenetlog.c :

combine the "domain admin users"; "domain guest users" and "domain groups"
parameters to give an array of RID groups to include in the SAM Logon
response.

ipc.c smb.h :

moved REALLOC() into smb.h
added RID #defines.

proto.h:

usual.
(This used to be commit f2554f231d1f59f30224adcc02b2b3ca4c24e0dd)

26 years agodamn, I spelt EACCES wrong.
Andrew Tridgell [Tue, 21 Oct 1997 13:15:20 +0000 (13:15 +0000)]
damn, I spelt EACCES wrong.

actually it's wrong in the linux man page for utime ...
(This used to be commit 267b56de10a20c25faee69cf4b6b6c02887ebe9c)

26 years agocheck for EPERM or EACCESS in file_utime()
Andrew Tridgell [Tue, 21 Oct 1997 13:03:46 +0000 (13:03 +0000)]
check for EPERM or EACCESS in file_utime()
(This used to be commit afd7592ffd74fbc77f4b177b007291df95f418ef)

26 years agodon't check lp_alternate_permissions() in the new utime workaround
Andrew Tridgell [Tue, 21 Oct 1997 12:55:49 +0000 (12:55 +0000)]
don't check lp_alternate_permissions() in the new utime workaround
code. lp_alternate_permissions() is intended only to affect the
display of file permissions, not what you can actually do with the
files.
(This used to be commit 454802d5922bf2b2c6df1f084e183611937ee5fb)

26 years agofix the order of become_uid() and become_gid() in become_root(). This
Andrew Tridgell [Tue, 21 Oct 1997 11:54:57 +0000 (11:54 +0000)]
fix the order of become_uid() and become_gid() in become_root(). This
was a harmless bug but left log entries

code cleanup in reply_lanman2()
(This used to be commit 8e90e1ef276c4cc362e32985c2845fc4c5108273)

26 years agoUpdating an entry.Paul
Samba Release Account [Tue, 21 Oct 1997 11:50:14 +0000 (11:50 +0000)]
Updating an entry.Paul
(This used to be commit 1b056ddd9a787de902639b2ed85fe3953a750562)

26 years agoadd a note on how to map usernames with spaces in them
Andrew Tridgell [Tue, 21 Oct 1997 10:30:07 +0000 (10:30 +0000)]
add a note on how to map usernames with spaces in them
(This used to be commit 708399e23461f2cce869038ab99d5e5bb54e4a62)

26 years agoadded a note about which netbios name is use in server level security
Andrew Tridgell [Tue, 21 Oct 1997 09:43:03 +0000 (09:43 +0000)]
added a note about which netbios name is use in server level security
(This used to be commit f02672439554159ee49412731978286865418588)

26 years agoprototype updates
Andrew Tridgell [Tue, 21 Oct 1997 09:39:45 +0000 (09:39 +0000)]
prototype updates
(This used to be commit 2b976cb7ecf50c118bd15923f6500bb8d2e058b7)

26 years agosome cleanups in the clientutil.c code.
Andrew Tridgell [Tue, 21 Oct 1997 09:39:08 +0000 (09:39 +0000)]
some cleanups in the clientutil.c code.

I'm actually hoping to remove this module completely once we convert
nmbd to using the new (much cleaner) clientgen.c

smbclient now also reports if it connects as a guest user
(This used to be commit 3af8d855facfc436cb4b64fa58aca8c056a5348e)

26 years agorewrote the password server code using the new clientgen.c client
Andrew Tridgell [Tue, 21 Oct 1997 09:34:33 +0000 (09:34 +0000)]
rewrote the password server code using the new clientgen.c client
interface

The new code uses a source netbios name equal to the Samba servers
name, not the client name. It also uses NetWkstaUserLogon to do a full
network logon. This means it will honour the servers logon
restrictions (such as login times etc).
(This used to be commit 11de90f972f6d83974425e80014f54e15d495413)

26 years agoThis is a set of generic SMB client routines. I needed this in a hurry
Andrew Tridgell [Tue, 21 Oct 1997 09:12:41 +0000 (09:12 +0000)]
This is a set of generic SMB client routines. I needed this in a hurry
to fix the password server code, so I didn't use SMBlib. This code is
fairly generic and uses a "struct cli_state" to hold the client
state.
(This used to be commit 3a0b5f06f42efdb522f1c5d3d9a4b4afabe03b40)

26 years agoget rid of the KEEP_PASSWORD_SERVER_OPEN define
Andrew Tridgell [Tue, 21 Oct 1997 09:11:19 +0000 (09:11 +0000)]
get rid of the KEEP_PASSWORD_SERVER_OPEN define
(This used to be commit ed484d4501e855f467ce2b3cfa63855acfe5e516)

26 years agoadd some debug info
Andrew Tridgell [Tue, 21 Oct 1997 09:09:55 +0000 (09:09 +0000)]
add some debug info
(This used to be commit b22fa0d7e3d1158112e03f93a22232e719fe6003)

26 years agoAdding make_smbcodepage.1 man page.
Jeremy Allison [Mon, 20 Oct 1997 20:34:55 +0000 (20:34 +0000)]
Adding make_smbcodepage.1 man page.
Updated smb.conf with dos filetimes.
Jeremy (jallison@whistle.com)
(This used to be commit c4a4a9016ea5654c5d945a935e60d4f1f3b073e5)

26 years agoloadparm.c: Changed 'interfaces only' parameter to 'bind interfaces only'. Added
Jeremy Allison [Mon, 20 Oct 1997 18:52:04 +0000 (18:52 +0000)]
loadparm.c: Changed 'interfaces only' parameter to 'bind interfaces only'. Added
            'dos filetimes' parameter for UTIME fix.
locking_shm.c: Fixed typo (sorry Andrew :-).
namepacket.c: Changed lp_interfaces_only() to lp_bind_interfaces_only().
proto.h: The usual.
reply.c: Made filetime calls use new file_utime call (wrapper for sys_utime).
server.c: Made filetime calls use new file_utime call (wrapper for sys_utime).
system.c: Added Andrew's sanity checks to times in sys_utime().
time.c: Moved set_filetime() to server.c. Made null_mtime() global.
trans2.c: Made filetime calls use new file_utime call (wrapper for sys_utime).
Jeremy (jallison@whistle.com)
(This used to be commit 41a1d81c112a82ad2ae1b3c4ee81051f133ce1ed)

26 years agoadded "domain groups" parameter, allowing you to specify the groups that
Luke Leighton [Mon, 20 Oct 1997 16:25:19 +0000 (16:25 +0000)]
added "domain groups" parameter, allowing you to specify the groups that
the user belongs to.

it would be nice to know exactly what the domain groups _are_....
(This used to be commit c6e37d8db0cd89a84a54a0cedfeacf50fb3f7a4c)

26 years agoadded description of parameters:
Luke Leighton [Mon, 20 Oct 1997 16:24:14 +0000 (16:24 +0000)]
added description of parameters:

domain sid
domain groups
logon drive
logon path
(This used to be commit 6d67eddcdffd26b0fa7f97ed3fa08ec002566367)

26 years agoadded copyright to headers.
Luke Leighton [Mon, 20 Oct 1997 14:46:05 +0000 (14:46 +0000)]
added copyright to headers.
(This used to be commit 38287a59ae1d4053d4cd2f53a141a5c826c21efd)

26 years agoNTDOMAIN.txt:
Luke Leighton [Mon, 20 Oct 1997 14:43:00 +0000 (14:43 +0000)]
NTDOMAIN.txt:

describes how to set up samba as an NT PDC.  it includes debugging
assisting info.  it is expected that this document turn into a
user's document, rather than a debugger's document.

cifsntdomain.txt :

this is the "NT Domain Authentication (draft)" white paper, current
version.  if anyone think it's a bad idea to put a copy of this in
here, i'm quite happy to remove it.
(This used to be commit 8964b0ad56804b119d39ed3a72a6cf0fb578a22e)

26 years agoAdded DNS Proxy, Printing, [netlogon] share modes = no.
John Terpstra [Mon, 20 Oct 1997 13:18:16 +0000 (13:18 +0000)]
Added DNS Proxy, Printing, [netlogon] share modes = no.
(This used to be commit 7b3340c78dd9654d6f8e04196be6cd9e826daaf6)

26 years agoupdated briefly to mention NT domain support as working, but experimental.
Luke Leighton [Mon, 20 Oct 1997 13:00:55 +0000 (13:00 +0000)]
updated briefly to mention NT domain support as working, but experimental.
(This used to be commit 9dc6fa1869b5be3c3032b6f7a1b3195292927040)

26 years agoremoved home_share from user_info structure.
Luke Leighton [Mon, 20 Oct 1997 12:13:04 +0000 (12:13 +0000)]
removed home_share from user_info structure.
(This used to be commit c59b8cee4721eeeb79f07f48ac17492530d4cdb1)

26 years agoutil.c password.c :
Luke Leighton [Mon, 20 Oct 1997 12:10:58 +0000 (12:10 +0000)]
util.c password.c :

added automount_server() function which, if -DAUTOMOUNT is in use,
returns the server name of the NIS auto.map entry.  otherwise,
it returns local_server.

added use of automount_server() for a new substitution %N for NIS
home server.  this defaults, via automount_server(), to the same
functionality as %L if -DAUTOMOUNT is not used.

removed vuser->home_share.  moved code that grabbed the servername
into the separate function automount_server().

loadparm.c :

created "logon drive" (default of "")
created "logon home"  (default of "\\%N\%U")
changed default of "logon path" from NULL to "\\%N\%U\profile".

ipc.c pipenetlog.c :

use lp_logon_drive(), lp_logon_home() and lp_logon_path() in their
now easier-to-use form (don't have to check if *lp_logon_path() and
manually substitute a default of \\%L\%U and do a standard_sub_basic()
on the result, because the default automatically does this.
(This used to be commit c6c28a4c3c9010ff9d5eac4bad091189a786d5a0)

26 years agoFixed Upper/Lower case typos.
John Terpstra [Mon, 20 Oct 1997 10:30:15 +0000 (10:30 +0000)]
Fixed Upper/Lower case typos.
(This used to be commit 53a8a6ced58429886fef019a56c9059e0dcb6622)

26 years agoa major share modes reorganisation.
Andrew Tridgell [Mon, 20 Oct 1997 08:46:00 +0000 (08:46 +0000)]
a major share modes reorganisation.

The shares modes code is now split into separate files. The shared
memory implementation is in locking_shm.c. The slow implementation is
in locking_slow.c

It is all controlled by a struct share_ops structure that has function
pointers to the implementation of all the functions needed by a share
modes implementation. An initialisation function sets up this
structure. This will make adding new implementations easy and clean.

This also allowed me to get rid of the ugly code in smbstatus. Now
status.c links to the locking code and calls methods in share_ops.

I also renamed some things and generally organised things in a much
cleaner fashion. Defines and structures specific to each
implementation have been moved to the appropriate file and out of
smb.h.
(This used to be commit 65ab9adaa0d356b8041ed8a507ea52117f2a284e)

26 years agocasting cleanups
Andrew Tridgell [Mon, 20 Oct 1997 02:50:12 +0000 (02:50 +0000)]
casting cleanups
(This used to be commit ab849a97821c9e1f199eea8ea2ec477687bed947)

26 years agoI am removing these from the source code in preparation for an
Andrew Tridgell [Mon, 20 Oct 1997 01:10:45 +0000 (01:10 +0000)]
I am removing these from the source code in preparation for an
upcoming 1.9.18alpha release. We can't release with this code in there
as it currently stands as it might breach ITAR export restrictions in
the US.

I've discussed ways around this with Jeremy and we can put the code
back in with appropriate modifications once it is needed.

Note that this code isn't actually used in Samba yet, so removing it
has no effect.

If anyone wants the code then look in ~samba-bugs/arcfour/ or grab it
from the CVS attic.
(This used to be commit 426cd6b2ded4725186a9262f13a327d8cf94364b)

26 years agomove calls to smbhash() inside smbdes.c (for legal reasons)
Andrew Tridgell [Mon, 20 Oct 1997 01:00:08 +0000 (01:00 +0000)]
move calls to smbhash() inside smbdes.c (for legal reasons)
(This used to be commit 9dfab27da3634539e99eb48c85dd5a64212e7005)

26 years agoupdate the timestamp on config files in our linked list when we notice
Andrew Tridgell [Sun, 19 Oct 1997 23:22:03 +0000 (23:22 +0000)]
update the timestamp on config files in our linked list when we notice
they have changed, otherwise we keep reading them again and again
(This used to be commit 38c07fa932488542dbb687f8e0eca192d5f38a8e)

26 years agodebugging the srvsvc Net Share Enum. some padding issues; some string length
Luke Leighton [Sun, 19 Oct 1997 17:54:13 +0000 (17:54 +0000)]
debugging the srvsvc Net Share Enum.  some padding issues; some string length
issues.  it works!
(This used to be commit 80523a3e83191c9e0b930fc71bd502a94a6f1b19)

26 years agocreating NetShareEnum parsing / reply creation. compiles, but untested.
Luke Leighton [Sun, 19 Oct 1997 17:01:06 +0000 (17:01 +0000)]
creating NetShareEnum parsing / reply creation.  compiles, but untested.
(This used to be commit 0a191ee5047b2c81c7adb0554c39ec43d8690230)

26 years agoMakefile :
Luke Leighton [Sun, 19 Oct 1997 15:33:25 +0000 (15:33 +0000)]
Makefile :

added srvparse.o and pipesrvsvc.o

smb.h :

mods to the Net Share Enum stuff

srvparse.c :

Net Share Enum parsing support.  more srvsvc pipe parsing to go here...

pipenetlog.c util.c:

modified standard_sub_basic() so that you can set a global boolean
and use a different string for the %U username substitution.

proto.h:

the usual.
(This used to be commit 22b86b6499b2680d16cb4180a736b4e750147409)

26 years agoadded the following structures:
Luke Leighton [Sun, 19 Oct 1997 14:36:27 +0000 (14:36 +0000)]
added the following structures:

SH_INFO_1
SH_INFO_1_STR
SHARE_INFO_1_CTR
SRV_Q_NET_SHARE_ENUM
SRV_R_NET_SHARE_ENUM

the share info1 container can handle a maximum of 32 shares.  the share info1
string structures contain two unicode strings, with 1024 uint16 characters
_each_.  we're going to _have_ to dynamically allocate the unicode strings,
else we'll run out of stack space.  rapidly.
(This used to be commit e8bedb18bf249d2f06834b0f151ea22df86e2602)

26 years agoAdded comment submitted by Frank Varnavas.
John Terpstra [Sun, 19 Oct 1997 12:28:00 +0000 (12:28 +0000)]
Added comment submitted by Frank Varnavas.
(This used to be commit 7d8c0b60f19fb503619e3bdcde7aaa144e56dcd4)

26 years agopipes.c pipesrvsvc.c :
Luke Leighton [Sun, 19 Oct 1997 12:24:23 +0000 (12:24 +0000)]
pipes.c pipesrvsvc.c :

moved stub srvsvc pipe function into separate file, in preparation for
further work.
(This used to be commit 2f2d18cc9474e1b40765a67242659be7c63a9936)

26 years agoadd a section on encryption and change the formatting a bit
Andrew Tridgell [Sun, 19 Oct 1997 05:16:54 +0000 (05:16 +0000)]
add a section on encryption and change the formatting a bit
(This used to be commit cdf4aa565302df07b0232c52506ab77be968f80d)

26 years agoput the NT_STATUS_ALLOTTED_SPACE_EXCEEDED error in instead of 0x99.
Luke Leighton [Sat, 18 Oct 1997 15:01:01 +0000 (15:01 +0000)]
put the NT_STATUS_ALLOTTED_SPACE_EXCEEDED error in instead of 0x99.
whatever that means.
(This used to be commit ce54f3a7a965b0a9f888dc45d6f4633609d5ca08)

26 years agoFixed small typo.
John Terpstra [Sat, 18 Oct 1997 05:28:34 +0000 (05:28 +0000)]
Fixed small typo.
(This used to be commit 2b15116a9ab48381445a6b7fb4352f71bf8860c0)

26 years agoAfter talking with Andrew added "interfaces only" parameter that
Jeremy Allison [Sat, 18 Oct 1997 00:22:04 +0000 (00:22 +0000)]
After talking with Andrew added "interfaces only" parameter that
turns off the filtering on the broadcast socket by default.
Jeremy (jallison@whistle.com)
(This used to be commit db9aad07481f48c0fe2108d4ab0b2bc9b632816c)

26 years ago.cvsignore: Added make_smbcodepage
Jeremy Allison [Fri, 17 Oct 1997 23:08:07 +0000 (23:08 +0000)]
.cvsignore: Added make_smbcodepage
interface.c: Added is_local_net().
locking.c: Added Fix for zero length share files from Gerald Werner <wernerg@mfldclin.edu>
           plus a race condition fix for the fix.
nameannounce.c: Made function static.
namedbresp.c: extern int ClientDGRAM removed - not used.
namedbserver.c: extern int ClientDGRAM removed - not used.
namedbsubnet.c: Added code to make sockets per subnet.
namepacket.c: Added code to read from all sockets & filter.
nameresp.c: extern int ClientDGRAM removed - not used.
nameserv.c: Indentation tidyup :-).
nameserv.h: Added sockets to struct subnet.
nameservresp.c: Improved debug message.
nmbd.c: Changed to terminte on listen_for_packets exiting.
nmbsync.c: extern int ClientDGRAM & ClientNMB removed - not used.
proto.h: The usual.
util.c: Fixed debug message.
Jeremy (jallison@whistle.com)
(This used to be commit 6904c2de080b2a9702800e9e4126386ced20569d)

26 years agoadd a note about running testparm after modifying smb.conf
Andrew Tridgell [Fri, 17 Oct 1997 22:40:45 +0000 (22:40 +0000)]
add a note about running testparm after modifying smb.conf
(This used to be commit 92e7092af1daf9349ca9fb00cd27c0ddc21b37d9)

26 years agoput the new example config file in here as well
Andrew Tridgell [Fri, 17 Oct 1997 22:34:28 +0000 (22:34 +0000)]
put the new example config file in here as well
(This used to be commit b75580a6bd5a5607f6901915ae0f5357015bd274)

26 years agoSimply moved the #include for ubi_dLinkList.h from within dir.c to
Christopher R. Hertel [Fri, 17 Oct 1997 21:06:20 +0000 (21:06 +0000)]
Simply moved the #include for ubi_dLinkList.h from within dir.c to
includes.h.  More consistent with current practice.
(This used to be commit cb51c860b352fb9d07fb3298d0317274ba6c9925)

26 years agomake_unihdr() was setting the length to 1/2 the required value.
Luke Leighton [Fri, 17 Oct 1997 17:59:38 +0000 (17:59 +0000)]
make_unihdr() was setting the length to 1/2 the required value.
(This used to be commit 4c99a083b9555b1ccf16faf0d4c1fba8f52bbb6a)

26 years agopipenetlog.c lsaparse.c smb.h :
Luke Leighton [Fri, 17 Oct 1997 16:46:56 +0000 (16:46 +0000)]
pipenetlog.c lsaparse.c smb.h :

SAM logon sorting.  too many buffer pointers.  added in the missing
switch value (value of 3).  dealing with the buffer pointers to the
user info structure in a slightly different way.
(This used to be commit 7993e17c9a1edddae6407d3f12790c461def705a)

26 years agosmbparse.c smb.h :
Luke Leighton [Fri, 17 Oct 1997 13:43:01 +0000 (13:43 +0000)]
smbparse.c smb.h :

uni_max_len and uni_str_len are the other way round, in UNIHDR.

util.c :

increased the show_msg() data size from 256 bytes to 512 bytes:
the LSA SAM Logon response can be about 500 bytes long.

pipenetlog.c :

forgot to set the authoritative field to 1.
(This used to be commit 71c6678cd7ffe30a5da27766cf99147e1921feae)

26 years agoset the wrong info level (0x0C00 0000 instead of 0xC000 0000) so that
Luke Leighton [Fri, 17 Oct 1997 11:54:30 +0000 (11:54 +0000)]
set the wrong info level (0x0C00 0000 instead of 0xC000 0000) so that
nt got confused and thought that the server password had been set instead
of refused.  this is for the SRV_PWSET response.
(This used to be commit f9fbcad42ec20da56466054e1984e391d03b3204)

26 years agoremove a spurious error message from nmbd. The message was:
Andrew Tridgell [Fri, 17 Oct 1997 03:09:03 +0000 (03:09 +0000)]
remove a spurious error message from nmbd. The message was:

WINS server did not respond to name registration!

this messages should only be produced when we are trying to register
our own names, not when we are the one with the name database and we
are doing a NAME_REGISTER_CHALLENGE on behalf of another host (for
secured wins registration)
(This used to be commit 42cb21d7259acfca124e5310894fb4fb8df4ad0c)

26 years agofix the handling of negative name query responses and the handling of
Andrew Tridgell [Fri, 17 Oct 1997 02:56:23 +0000 (02:56 +0000)]
fix the handling of negative name query responses and the handling of
packets with no answer section in general.

The fix has 2 parts:

1) set ans_name to the name we queried if nmb->answers == NULL

2) check for nmb->answers == NULL in several other places where we
currently check for nmb->answers->data

While doing this, I noticed there are lots of places in our nmbd code
where we make assumptions about the packets being well formed. Someone
could easily implement a denial of service attack on nmbd by sending a
packet that causes a null pointer dereference. Does anyone feel like
going through the code and adding checks? Probably the best solution
is to have a single function that "validates" a packet, making sure
that all the required fields are there. This will be a bit tricky as
what fields are required varies a lot between packets. A first pass
would be a function that prints "SUSPECT PACKET" when it hits a packet
that it suspects does not have a required field (or the field is badly
formatted), then we could use this on a live system to find any cases
we've missed.

Any takers?
(This used to be commit e02c21b0b8e3ed6f2d294458160c4f632af67ed3)

26 years agodocument -a "append log" option
Andrew Tridgell [Fri, 17 Oct 1997 01:47:10 +0000 (01:47 +0000)]
document -a "append log" option
(This used to be commit 51182b915268ed1af516090a6230fb8eee252691)

26 years agoadded -a "append log" option
Andrew Tridgell [Fri, 17 Oct 1997 01:46:16 +0000 (01:46 +0000)]
added -a "append log" option
(This used to be commit 4b7d51ffb8cf23662e0e58a785620a0652da5a7c)

26 years agosmb.h :
Luke Leighton [Thu, 16 Oct 1997 16:01:25 +0000 (16:01 +0000)]
smb.h :

id_info_1 has a pointer at the front of it.  so does return credentials,
and so does the client credentials.  these are all from the sam logon.
auth_level is 16 bytes not 32 and is actually called a switch_level.

smbparse.c :

smb_io_unihdr() - uni_max_len and uni_str_len are 16 bytes not 32.
this may have a knock-on effect on smb_in_unihdr2() but we'll see...
(This used to be commit ce36bfb3e4ad4b72a9f9759a3c49d2a73175d249)

26 years agodealing with some stack overflow bug somewhere around the use of
Luke Leighton [Thu, 16 Oct 1997 13:38:16 +0000 (13:38 +0000)]
dealing with some stack overflow bug somewhere around the use of
deal_with_credentials() by moving important code to the beginning
of the function :-) :-) :-).

the new seed (old_cred + time + 1) was getting corrupted.
(This used to be commit dab35ce5d61d53bce6ede44e56d9393645c0d67e)

26 years agoinside the auth 2 response bits, i wasn't storing the received client
Luke Leighton [Thu, 16 Oct 1997 12:59:40 +0000 (12:59 +0000)]
inside the auth 2 response bits, i wasn't storing the received client
credentials for the calculation of the next credentials: i was storing
the auth 2 calculated credentials.

oops.
(This used to be commit eb81fae874383f77ad72c0f7686b8c49e645b0b8)

26 years agoadd ERRDOS/67 ERRnosuchshare to the client.c list of error strings
Andrew Tridgell [Thu, 16 Oct 1997 08:01:00 +0000 (08:01 +0000)]
add ERRDOS/67 ERRnosuchshare to the client.c list of error strings
(This used to be commit 1cccd7c519b8a706567477629bee70f7b7267b5c)

26 years agoAdded Michael Johnsons' PAM modifications <johnsonm@redhat.com>
John Terpstra [Thu, 16 Oct 1997 05:33:24 +0000 (05:33 +0000)]
Added Michael Johnsons' PAM modifications <johnsonm@redhat.com>
This patch has been checked over. JHT
(This used to be commit c84a043f89ccba001597962cd03e2f2a634c4b08)

26 years agofixed the problem that browsing breaks if you put quote marks around
Andrew Tridgell [Thu, 16 Oct 1997 03:53:07 +0000 (03:53 +0000)]
fixed the problem that browsing breaks if you put quote marks around
the server string option.

I fixed it by adding: trim_string(ret, "\"", "\"") to lp_string()
which means that it removes leading and trailing quotes from _all_
strings in smb.conf. I think this is what we want as I can't actually
think of any case where quoted strings are needed.

I suspect that this fix will actually fix browsing at quite a few
sites. It's not uncommon to see people putting "" marks around the
workgroup name or other essential strings.

The real reason it was causing browsing to fail is that the browse.dat
file uses " to delimit fields, which means that it wasn't being parsed
correctly. It would be nice to use a proper database format in
browse.dat sometime. In fact, we really need a generic database type
subsystem in Samba to replace the mish-mash we currrently use
(browse.dat, wins.dat, smbpasswd etc)
(This used to be commit ac50a88e1181bd4954f03e5450dedce87ed781ad)

26 years agoMoved the LGPL from the ubiqx directory into the samba root directory
Christopher R. Hertel [Thu, 16 Oct 1997 01:13:09 +0000 (01:13 +0000)]
Moved the LGPL from the ubiqx directory into the samba root directory
and renamed it COPYING.LGPL.  This is because the ubi_* files are under
LGPL, not regular GPL.
Removed the last few things from the ubiqx directory and deleted it.
(This used to be commit 31d50db98bbb3b64400d432e386056f7963b7d8d)

26 years agoDon't need it any more.
Christopher R. Hertel [Thu, 16 Oct 1997 01:06:12 +0000 (01:06 +0000)]
Don't need it any more.
(This used to be commit 905b2b9562a8c82696d38024ec42aa38ca990277)

26 years agoMade changes to the dir cache functions:
Christopher R. Hertel [Thu, 16 Oct 1997 01:03:18 +0000 (01:03 +0000)]
Made changes to the dir cache functions:
- They now use the ubi_dLinkList linked list code.
  This is not a big gain, I suppose.  It would be significant if there
  were lots of doubly-linked lists in the code and I replaced them all.
  The only other advantage is that the code is more modular, which
  appeals to my own sense of order, if no one elses.  :-}
- I allocate space for the entry structure and the strings in one go,
  instead of using malloc() and separate strdup() calls.  This should
  be more efficient, and allows for a single call to free() to free the
  whole thing.
These are very minor changes, but they do serve to make me more familiar
with the code overall.
(This used to be commit 1dafef88871338f06dbcbbb67ce3bbbb460d7bb6)

26 years agoThis code manages a simple doubly-linked list.
Christopher R. Hertel [Thu, 16 Oct 1997 00:55:11 +0000 (00:55 +0000)]
This code manages a simple doubly-linked list.
(This used to be commit a88ae60fc33e3598f46dfc38e930e261d5e06888)

26 years agoI got fed up trying to put the tree and list stuff into a subdirectory,
Christopher R. Hertel [Thu, 16 Oct 1997 00:46:21 +0000 (00:46 +0000)]
I got fed up trying to put the tree and list stuff into a subdirectory,
so I've started to move them into the main directory.
(This used to be commit 4691a94d3c657321d29231f062aed714dfe4ac26)

26 years agoipc.c: Adding Andrews become_root code to the main branch.
Jeremy Allison [Wed, 15 Oct 1997 21:53:59 +0000 (21:53 +0000)]
ipc.c: Adding Andrews become_root code to the main branch.
locking.c: Adding Andrews become_root code to the main branch.
pipes.c: Fixing the close_file issue.
proto.h: The usual.
reply.c: Move smb_pass into NTDOMAIN defined code. Fixing the close_file issue.
server.c: Fixing the close_file issue.
trans2.c: Fixing the close_file issue.
uid.c: Adding Andrews become_root code to the main branch.
Jeremy (jallison@whistle.com)
(This used to be commit 16fd4337f79ce33f91050c96c4a566221c5d9126)

26 years agosmb.h smbparse.c pipenetlog.c :
Luke Leighton [Wed, 15 Oct 1997 19:16:38 +0000 (19:16 +0000)]
smb.h smbparse.c pipenetlog.c :

whoops, the SAM Logon structure was wrong.  updated this, and
cifsntdomain.txt.  more debug info in pipenetlog.c.  the crash
is somewhere around deal_with_credentials().

byteorder.h :

put in uint8, uint16 and uint32 typecasts around debug info, because
sign extending was resulting in ffffffe8 being displayed instead of e8.

credentials.c :

some debugging info, because i'm tracking a coredump.  without gdb.
nothing like making things difficult.

reply.c :

whoops, missed this (important) bit from paul's code, which tells
the NT workstation that the MACHINE$ entry doesn't already exist,
and we're going to create a default entry with a password "machine"
right now.

proto.h:

the usual.
(This used to be commit ed606bc7d4e6fb1091e527ea70a3e950d50a1db4)

26 years agoAdded ubi_sLinkList module which manages simple singly-linked lists.
Christopher R. Hertel [Wed, 15 Oct 1997 17:59:58 +0000 (17:59 +0000)]
Added ubi_sLinkList module which manages simple singly-linked lists.
(This used to be commit e55a3dc94a824b61a7123b080705be2271268ee4)

26 years agoadded srvsvc basic pipe, straight from paul's code. does NETSHAREENUM
Luke Leighton [Wed, 15 Oct 1997 16:51:03 +0000 (16:51 +0000)]
added srvsvc basic pipe, straight from paul's code.  does NETSHAREENUM
and NETSERVERGETINFO.
(This used to be commit 96b17b829fc787c15cd366eca604c09d68b5b900)

26 years agothe usual proto.h update
Andrew Tridgell [Wed, 15 Oct 1997 09:18:39 +0000 (09:18 +0000)]
the usual proto.h update
(This used to be commit bdf3155418be02e2fe4daa1d2538f236be414e98)

26 years agoadd the port number to a debug statement
Andrew Tridgell [Wed, 15 Oct 1997 09:17:21 +0000 (09:17 +0000)]
add the port number to a debug statement
(This used to be commit 97d06dd05e952a134be26ec5998ec4b8d38991dd)

26 years agoadded loopback_ip. This is used to detect packets from ourselves
Andrew Tridgell [Wed, 15 Oct 1997 09:16:30 +0000 (09:16 +0000)]
added loopback_ip. This is used to detect packets from ourselves
(This used to be commit eb76fea411c5c3aa96b7158d02b49ed42ec7ba70)

26 years agofixed the freeze on logout bug. The fix has several parts:
Andrew Tridgell [Wed, 15 Oct 1997 09:15:45 +0000 (09:15 +0000)]
fixed the freeze on logout bug. The fix has several parts:

1) add a new parameter to queue_netbios_packet(), the "reply_id", this
is the id that should be used when sending a further response to the
packet (such as a response after we get back a reply to a name query
after senidnga  WACK). reply_id is 0 (meaning unused) in most cases.

2) fix the id used in the reply in add_name_respond() from
response_name_query_register()

3) remember to remove the response record at the end of
response_name_query_register()

4) get the right IP address (it was 0.0.0.0) in
response_name_query_register()

5) add a new field reply_id to struct response_record
(This used to be commit e1e86c1a160c8302004ea58e4f0f5874dd179dae)

26 years agofixed a stack overflow bug in api_lsa_req_chal()
Andrew Tridgell [Wed, 15 Oct 1997 04:51:23 +0000 (04:51 +0000)]
fixed a stack overflow bug in api_lsa_req_chal()

changed the order of arguments to smbhash() in credentials.c. Luke,
when you changed from E1() to smbhash() you didn't notice that the
arguments are in a different order. This is why your new code was
failing.

NT logon still fails, but now gets to SAMLOGON. It shouldn't take much
to get it working now.
(This used to be commit 708edc348f0fb81d9c918e4bf857f339a13a3781)

26 years agoforce the salt to be a maximum of 2 characters long in calls
Andrew Tridgell [Wed, 15 Oct 1997 04:04:38 +0000 (04:04 +0000)]
force the salt to be a maximum of 2 characters long in calls
to crypt()

This might solve some password problems, particulary on HPUX
(This used to be commit 45f4ae4327a8836cad22bbf64f1effba6a6eb7f5)

26 years agoThese are the ubiqx modules, as included with the Samba distribution.
Christopher R. Hertel [Wed, 15 Oct 1997 03:11:46 +0000 (03:11 +0000)]
These are the ubiqx modules, as included with the Samba distribution.
Updated the linked list module, which has new and changed macros.
(This used to be commit 2181d929d1757aa523e7afaf0e8c232a51e68d30)

26 years agoFirst draft of a README file to explain the origins of the "ubiqx" code.
Christopher R. Hertel [Wed, 15 Oct 1997 01:16:37 +0000 (01:16 +0000)]
First draft of a README file to explain the origins of the "ubiqx" code.
(This used to be commit df3bafd0c488760b1909329c899102d92a2fe16b)

26 years agoAdded a very small piece of documentation to describe the binary tree
Christopher R. Hertel [Tue, 14 Oct 1997 19:32:30 +0000 (19:32 +0000)]
Added a very small piece of documentation to describe the binary tree
modules.
(This used to be commit 781be1daac75092666c1753f21871f2923a6f775)

26 years agopipentlsa.c :
Luke Leighton [Tue, 14 Oct 1997 19:31:07 +0000 (19:31 +0000)]
pipentlsa.c :

lsa close odd bug.

smbparse.c :

smb_io_dom_sid() _does_ need 4-byte alignment before it.
(This used to be commit 93879ac8a533ad8cc175275cf1fc9a8f152f4b5a)

26 years agoAdded a copy of the LGPL to the samba/ubiqx/ directory.
Christopher R. Hertel [Tue, 14 Oct 1997 19:30:07 +0000 (19:30 +0000)]
Added a copy of the LGPL to the samba/ubiqx/ directory.
(This used to be commit 28de393878872081bac3a0b3ca82d915eae56701)

26 years agobyteorder.h:
Luke Leighton [Tue, 14 Oct 1997 18:37:55 +0000 (18:37 +0000)]
byteorder.h:

created a RW_PIVAL macro which was missing.

smbparse.c:

smb_io_dom_sid() was storing its sub-authorities as uint16s instead
of uint32s.  used the DBG_RW_PIVAL macro instead of DBG_RW_PSVAL.

pipentlsa.c:

not sure.  something to do with the Query Info reply.

pipeutil.c:

make_rpc_reply() had the packed representation field set to 0x0100 0000
instead of 0x1000 0000, which had the interesting result of turning all
uint32 and uint16 field byte ordering the other way round!
(This used to be commit eafd6e9e797c5badb07059d7eddabd6a8947c830)

26 years agocredentials, query info reply.
Luke Leighton [Tue, 14 Oct 1997 17:01:43 +0000 (17:01 +0000)]
credentials, query info reply.
(This used to be commit 9b095887df204393090d7da9a47508685ddd5163)

26 years agodocs/DIAGNOSIS.txt:
John Terpstra [Tue, 14 Oct 1997 13:12:01 +0000 (13:12 +0000)]
docs/DIAGNOSIS.txt:
Added comment right up front about "your server is being unfriendly"
type error messages.

source/Makefile:
Added compile options for RedHat Linux 5.0 series.
(This used to be commit 1f9eb492023de95f8f7cabc2c4cafcf2170d43a8)

26 years agochanged *(uint32*)(clnt_cred) to SIVAL(clnt_cred, ....)
Luke Leighton [Tue, 14 Oct 1997 10:17:12 +0000 (10:17 +0000)]
changed *(uint32*)(clnt_cred) to SIVAL(clnt_cred, ....)
(This used to be commit 0056b154435e9d2a3fd2be37f7c3afd9e3fbfd87)

26 years agoBroke my own rule about checking in uncompiled source :-(.
Jeremy Allison [Tue, 14 Oct 1997 00:36:57 +0000 (00:36 +0000)]
Broke my own rule about checking in uncompiled source :-(.
Jeremy.
(This used to be commit 9fd056c91196746e09f220a15171f3c97791dcce)

26 years agoAdded fixes for become_user braindamage.
Jeremy Allison [Tue, 14 Oct 1997 00:16:37 +0000 (00:16 +0000)]
Added fixes for become_user braindamage.
Jeremy (jallison@whistle.com)
(This used to be commit 08afa51f5c80f3da983781774378bc1646c431d7)

26 years agoanother alignment of client challenge: this one in lsa_io_q_auth_2().
Luke Leighton [Mon, 13 Oct 1997 19:37:43 +0000 (19:37 +0000)]
another alignment of client challenge: this one in lsa_io_q_auth_2().
there are going to be a few of these...
(This used to be commit 3db1fe79c300f17d087c85c7e768a8d11c0f7661)

26 years agolsa_io_r_req_chal() - challenge is not 4-byte aligned after the unicode
Luke Leighton [Mon, 13 Oct 1997 18:11:20 +0000 (18:11 +0000)]
lsa_io_r_req_chal() - challenge is not 4-byte aligned after the unicode
                      strings.
(This used to be commit 717bcd6e3457f355583b4508d1f4edc9a52650df)

26 years agoput a check around become_user(). doesn't authenticate the user, but doesn't
Luke Leighton [Mon, 13 Oct 1997 17:11:07 +0000 (17:11 +0000)]
put a check around become_user().  doesn't authenticate the user, but doesn't
quit the whole pipe, either...
(This used to be commit 14f0c2ddb05a690e671efad8c47da9ff1e39c8ce)

26 years agoresolving some of the confusion over credentials.
Luke Leighton [Mon, 13 Oct 1997 16:32:43 +0000 (16:32 +0000)]
resolving some of the confusion over credentials.
(This used to be commit 9d1f45ca6bbdeeef448ccb55e1275c6f9ec59820)

26 years agosplit pipes.c down into util, netlog and ntlsa.
Luke Leighton [Mon, 13 Oct 1997 15:55:54 +0000 (15:55 +0000)]
split pipes.c down into util, netlog and ntlsa.
(This used to be commit 8fe02c239d70497af449ed0cdf1a32de10021ba1)

26 years agodebugging... no idea what i'm doing.
Luke Leighton [Mon, 13 Oct 1997 14:19:17 +0000 (14:19 +0000)]
debugging... no idea what i'm doing.
(This used to be commit d7a9a02e0a9e1e791810c24bcfcbd39a6bd7dac5)

26 years agoreverted a change made by Luke at his request.
Andrew Tridgell [Mon, 13 Oct 1997 13:49:50 +0000 (13:49 +0000)]
reverted a change made by Luke at his request.

Luke, when you don't know what has been changed in the CVS tree I
highly recommend you point your browser at:

http://samba.anu.edu.au/cgi-bin/cvsweb/samba/source

If you click on a filename you can then see all the commits and
changes that have been made to it over time. You can also download any
version of the file or find the differences between any two versions.

All of this is not dependent on the state of your local CVS sandbox,
so it can be used to find out the "true" state of the tree at any
time.

If you suspect some sort of CVS problem (like a change getting
reverted) then please use the above URL to work out what has
happened. You should be able to see exactly who made what changes and
when.
(This used to be commit 3fc48246ee0d89ad2f10f050d2d68af53446129f)