1
0
mirror of https://github.com/samba-team/samba.git synced 2025-05-10 02:50:25 +03:00

511 Commits

Author SHA1 Message Date
Jeremy Allison
c23ed625b2 includes.h: Added FreeBSD 3.x fixes. Added HPUX10.x fixes.
interface.c: Added netmask fix.
nmbd_nameregister.c: Fixed unitialised variable warnings.
nmbd_winsproxy.c: Fixed unitialised variable warnings.
nmbd_winsserver.c: Fixed DEC warnings.
print_svid.c: Fixed DEC warnings.
printing.c: Added LPRng fixes.
Jeremy.
(This used to be commit 28aff043c4a3693a0c20e87c7ce11eb4bf285b78)
1998-01-07 06:21:56 +00:00
Andrew Tridgell
6e329c6a4b avoid the ~ operator in netmask operations as apparently it causes
problems on some systems (eg. freeBSD 2.2.2). I'm surprised by this
but the change looks harmless. Patch from fred@datalync.com
(This used to be commit ae8151330deafb7abc5aa604e7c8c0b762e3aa20)
1997-12-29 18:46:20 +00:00
Andrew Tridgell
ed2ed5671b fixed a couple of illegal uses of scanf() in the nmbd wins code. They
caused a core dump under IRIX when compiled with -64.
In general you cannot assume things about variable sizes. In
particular sizeof(time_t) may not equal sizeof(long) and
sizeof(uint16) may not equal sizeof(short).
There are probably other bugs like this. We'll need to check all
format statements for use of %ld, %hx etc. In general these should not
be used unless you have an explicit cast to the appropriate type.
(This used to be commit 6ea907e78672558d470e9a819982940a9228e2fa)
1997-12-26 10:01:57 +00:00
Jeremy Allison
aef2c5d699 Added SIGUSR1/SIGUSR2 handling.
Sending nmbd/smbd a SIGUSR1 will raise the debug level by one (capped at 10)
sending a SIGUSR2 will lower it (lower limit at zero).
Jeremy.
(This used to be commit 6a3cb6f4b46129e4d799a24d34cdb9460ed8910f)
1997-12-24 09:30:56 +00:00
Jeremy Allison
d1e796d857 Fixes to compile under OpenBSD from "Todd T. Fries" <toddf@acm.org>
Jeremy.
(This used to be commit 3c9292505914e2119fa7b1973c9fbbe1742262b2)
1997-12-23 07:15:59 +00:00
Jeremy Allison
6f56211721 Fixed stupid bug in read_smb_len where I was calling itself - now
calling the correct fn.
Jeremy.
(This used to be commit c62aa0a7600269c2bb13b939857716a6ee0f34c1)
1997-12-20 14:52:48 +00:00
Jeremy Allison
be71d43585 client.c:
clientgen.c:
clientutil.c:
clitar.c: Changed usage of receive_smb to new function client_receive_smb
          except for one use of receive_smb in client.c. This is the
          receive_smb used to discard packets received whilst in a
          keyboard wait state.
util.c: Created new function client_receive_smb that ignores session
        keepalives just as the old receive_smb used to do. Created
        internal function read_smb_length_return_keepalive that is
        used internally by the changed receive_smb call.
        Changed read_smb_len to not use an internal buffer - it is
        never called with a null buffer so such code is redundant.
Jeremy.
(This used to be commit 1084fb46821cb96702da35439da4a8df9d255698)
1997-12-20 14:36:11 +00:00
Jeremy Allison
d57c055478 loadparm.c: Added fix for veto oplock files bug from Charles Hoch <hoch@hplcgh.hpl.hp.com>
server.c, util.c: Added fix for oplock break requests blocking due to server being
                  blocked in read call. Bug found by Charles Hoch <hoch@hplcgh.hpl.hp.com>.
Jeremy.
(This used to be commit 209f894fdbcfbf7a7952b6228342b86e088a9582)
1997-12-20 10:52:00 +00:00
Jeremy Allison
42e0d9a1f0 trans2.c: Forced trans2_findfirst to behave as NT does in error returns.
util.c: Applied fix from Branko Cibej <branko.cibej@hermes.si> where
StrnCaseCmp tests one character too many.
Jeremy.
(This used to be commit cb771b2667070cff8d6cf86998a11ba2e4977690)
1997-12-20 05:25:37 +00:00
Jeremy Allison
64f0348a3f This is it ! The mega-merge of the JRA_NMBD_REWRITE branch
back into the main tree.
For the cvs logs of all the files starting nmbd_*.c, look
in the JRA_NMBD_REWRITE branch. That branch has now been
discontinued.
Jeremy.
(This used to be commit d80b0cb645f81d16734929a0b27a91c6650499bb)
1997-12-13 14:16:07 +00:00
Jeremy Allison
155562e514 fixed over char 127 problems with isupper/islower.
Jeremy.
(This used to be commit 4ac95226fff8e48a0024e2beb78df662fcfeda62)
1997-12-11 12:25:01 +00:00
Jeremy Allison
419e8823e9 kanji.c: Patch from Anders Blomdell <anders.blomdell@control.lth.se>
for problem with kanji sj_strXXX functions.
Jeremy.
(This used to be commit bf48151e6ddfa72303be7eac9e156046d4fb5b5e)
1997-12-11 11:07:09 +00:00
Andrew Tridgell
c81a3b8a56 got rid of the WRAP_MALLOC code - mem_man does it better
(This used to be commit d9bb3a4eba9c630370fea0fa297b176fd2afb532)
1997-12-04 07:49:37 +00:00
Andrew Tridgell
02bc90ea44 change the "username map" option to allow the user to stop the
processing part way through the file if a match is found. If a line
starts with ! and a match is made by that line then processing
stops. This allows better wildcard handling.

(patch from Anselm.Kruis@Physik.Uni-Muenchen.DE)
(This used to be commit af57bc05fe0f248aaef329358c583abcffe1657c)
1997-12-03 04:20:39 +00:00
Andrew Tridgell
2b8247dd09 add a warning if the timezone is not a multiple of 1 minute. This
should catch broken timezone files in slackware linux.
(This used to be commit ce37bd9dcaeaf0c5e97845954342762ebaf43b10)
1997-12-03 03:46:43 +00:00
Andrew Tridgell
cc12fc66d1 I'm slowly getting though the todo list :-)
This change allows people to select the SYSLOG_FACILITY in local.h, or
add it to the Makefile if they want to.
(This used to be commit afe88facbfb85113105bf516e066b6c1e971f6b7)
1997-12-03 03:21:25 +00:00
Andrew Tridgell
3e23d79cfe fix toupper(c) on a already uppercase char and tolower(c) on an
already lowercase char when using code pages. Jeremy, can you confirm
that this looks right?  It comes from PR#1992
(This used to be commit 157fde339695d3185ecf857187e981edd06a8b65)
1997-12-03 02:27:50 +00:00
Andrew Tridgell
7b10574429 dont try getpeername() when Client isn't initialised
(This used to be commit a32ca542ad294ecc3848ca511337a8cc994d67be)
1997-12-02 23:24:26 +00:00
Andrew Tridgell
ec8e33cde6 use -1 not 0xffffffff in SIVALS() macros
use the same process_exists() code on all systems (it's probably
faster anyway)
(This used to be commit 901b95aa77ac1ecc45823c23fb4e1d9da8dc8318)
1997-11-29 13:29:13 +00:00
Andrew Tridgell
cf9d07cc7d added a sent_oplock_break element to Files[] as a paranoia check so we
can't sent a oplock break twice on the same file.

changed some debug levels in the oplock code to level 0 so we can
track down a bug

zero the returned Files[] entry in find_free_file()

don't try to overcome client bugs in the handling of non-encrypted
passwords if in server level security mode

added paranoid null termination of password buffers

slight change to my ajt_panic() routine
(This used to be commit e360c79c9cec681c4609783019749773d3e79386)
1997-11-29 02:40:31 +00:00
Andrew Tridgell
51f20adc6b added true enumerated types in loadparm.c. Now we don't need all those
"interpret_security" and similar functions. This also means that
testparm produces string values for these enumerated types rather than
an integer. This was done to make the web interface much cleaner.

While I was doing this I found a couple of very nasty bugs in the
parm_table code. Someone had added a handle_character_set() function
that treated the char** pointer for a P_STRING as an integer! This
would have caused memory corruption for anyone using the "character
set" option. The loadparm code is delicate - please be careful about
using it's more esoteric features!

I've also removed the "coding system" global and made it a
P_STRING. The integer value was never used anywhere in Samba.
(This used to be commit bac6b0daa288e879330e3d585582122bb93a1ffb)
1997-11-22 07:09:12 +00:00
Andrew Tridgell
e8f3f79aa5 use LocTimeDiff() not TimeDiff() to ensure that longdate conversion is
consistent (this is really just a cosmetic change)
(This used to be commit 30b84bb68bfbfb022decc36c1b4869a39a06e556)
1997-11-21 04:57:37 +00:00
Andrew Tridgell
3670f3d9c0 change from %D to %m/%d/%Y in timestring(). This doesn't really matter
as it is only for logging but it will prevent people from writing in
to say that we are not y2k compliant after running auto-diagnostic
tests.
(This used to be commit b4e55cd4765085fc2465c6ff757094e05eabc51e)
1997-11-06 13:45:50 +00:00
Andrew Tridgell
ba5086d03e no asm/signal.h for linux as this is not portable
add auto username from LOGNAME for smbtorture

proto fix in ufc.c
(This used to be commit f13dbdf307ccffc15a74e2ffa72da666e53a72b6)
1997-11-06 06:50:21 +00:00
Jeremy Allison
cdc6099647 Rolling back the files
loadparm.c : to equivalent to version 1.67
reply.c : to equivalent to version 1.69
server.c : to equivalent to version 1.122
util.c : to equivalent to version 1.98

to remove the incorrect changes.

proto.h: The usual.

rpc_pipes/smbparse.c : Backeting stuff that SHOULD NOT BE IN THE
                       none-NTDOMAIN build !

Jeremy.
(This used to be commit 6064c9d80fd9fcc3ceec528494ba5e2591610098)
1997-11-03 19:24:45 +00:00
Luke Leighton
b26623bc3a Christian Lademann's contribution: new capabilities in smb.conf.
'<' and '|' characters indicate read file and execute command respectively,
and feed the output into the parameter (!!!).

'<$' and '|$' means run standard_sub_basic() on them.

this is going to be fun to document in smb.conf.5....

also, Christian created a new "online" service parameter.  services can
be taken "off-line"....
(This used to be commit 15f44d28916cdc1432bffdbb999c7cf7efd8fb86)
1997-11-02 20:35:20 +00:00
Andrew Tridgell
0024725005 change a debug level
(This used to be commit d8b896a90fb693187a11456e46971c873e9f0d60)
1997-11-01 08:13:54 +00:00
Luke Leighton
520878fd1f ipc.c ntclientpipe.c:
response to Bind Acknowledgment needs a lookup table for the PIPE string
	(secondary address in RPC_HDR_BA structure).

smbparse.c util.c :

	interesting problem, i think caused by us typecasting a uint16* buffer
	to char*.  found on a SPARC.
(This used to be commit 420408ee83902faa6cf871f26e93ad5efb483727)
1997-10-29 19:05:34 +00:00
Luke Leighton
ebafb1e288 called dump_data() from show_msg().
(This used to be commit 89664898e2457de2986d515f6f476993ee1bbea2)
1997-10-29 15:35:53 +00:00
Luke Leighton
fe0a702322 byteorder.h :
added mode for printing debug array data as chars not uint8/16/32s.
	only really useful for (uint8) strings or (uint16) unicode strings

lsaparse.c smbparse.c smb.h :

	rpc bind and rpc bind ack structures and parsing and creation functions.

ipc.c pipes.c pipenetlog.c pipentlsa.c pipesrvsvc.c :

	using rpc bind / bind ack parsing routines instead of incorrect use of
	api_LsarpcTNP1 function.

ntclient.c :

	creation of do_rpc_bind() function.

THAT'S IT, FOLKS!
(This used to be commit 21c89e2f17c51939fd6b53dddbe3072419eb0db2)
1997-10-29 00:04:14 +00:00
Luke Leighton
a60ad7bef3 default server_name if NIS server is unavailable should be the local
machine, not a NULL string.
(This used to be commit 5b15b17fc6da0e2b496822638edf566dedf3efde)
1997-10-24 13:58:21 +00:00
Luke Leighton
a12f047533 nterr.c :
added a structure that wraps nt errors as strings and enums, so we
	can do a smb_nt_error() function.

Makefile ntclient.c :

	added ntclient.c, broken out nt domain stuff into a separate file.
	getting fed up of compile-times and size of client.c.

	fixed the do_lsa_req_chal() function.  made it read the response,
	and return the challenge credentials received from the server.

	next stop: do_lsa_auth_2().

client.c :

	removed nt domain logon functions into a separate file.

pipenetlog.c pipentlsa.c pipesrvsvc.c smbparse.c :

	i'd broken the offsets of the RPC_HDR while trying to sort out the
	nt client code.  fixed it again.  added some robustness stuff.

util.c :

	the unistrn2() function was null-terminating the string at one
	character too many.
(This used to be commit 39cec7f698c4461aee05cfbb213879fbd486117d)
1997-10-24 13:15:34 +00:00
Jeremy Allison
abb255cfe6 Big change to make nmbd code more readable/understandable.
Main change is removal of find_name_search() confusion.
This has been replaced with find_name_on_subnet() which
makes it explicit what is being searched.

Also changed wins_subnet to be wins_client_subnet in
preparation for splitting the wins subnet into client
and server pieces.

This is a big nmbd change and I'd appreciate any
bug reports.

Specific changes follow :

asyncdns.c:
     Removed wins entry from add_netbios_entry(). This is now
     explicit in the subnet_record parameter.

interface.c:
     iface_bcast(), iface_nmask(), iface_ip() return the
     default interface if none can be found. Made this
     behavior explicit - some code in nmbd incorrectly
     depended upon this (reply_name_status() for instance).

nameannounce.c:
     find_name_search changes to find_name_on_subnet.

namebrowse.c:
     wins_subnet renamed to wins_client_subnet.

namedbname.c:
     find_name_search removed. find_name_on_subnet added.
     add_netbios_entry - wins parameter removed.

namedbsubnet.c:
     find_req_subnet removed - not explicit enough.

nameelect.c:
     wins_subnet renamed to wins_client_subnet.

namepacket.c:
     listening() simplified.

nameresp.c:
     wins_subnet renamed to wins_client_subnet.

nameserv.c:
     find_name_search moved to find_name_on_subnet.

nameserv.h:
     FIND_XXX  -> changed to FIND_SELF_NAME, FIND_ANY_NAME.

nameservreply.c:
     find_name_search moved to find_name_on_subnet.
     Debug entries changed.

nameservresp.c:
     wins_subnet renamed to wins_client_subnet.

namework.c:
     wins_subnet renamed to wins_client_subnet.

nmbd.c:
     wins parameter removed from add_netbios_entry.

nmbsync:
     wins_subnet renamed to wins_client_subnet.

proto.h: The usual.

server.c:
     remove accepted fd from fd_set.

Jeremy (jallison@whistle.com)
(This used to be commit 2c97b33fc0b5ef181dbf51a50cb61074935165bf)
1997-10-23 22:30:57 +00:00
Luke Leighton
5cd52a56a4 playing about, trying to SMBopenX a \PIPE\NETLOGON (should be a SMBopen)
and then send a LSA_REQ_CHAL down it.
(This used to be commit 473f21071fad603865358821b83df6b58c9a06a5)
1997-10-23 13:38:46 +00:00
Luke Leighton
2e8cedba64 loadparm.c :
added "domain other sids" parameter

pipenetlog.c :

	using "domain other sids" parameter in SAM Logon response.
	using new name_to_rid() function for r_uid and r_gid.

pipentlsa.c :

	minor mods to do with new name_to_rid() function.

pipesrvsvc.c :

	in the "net share enum" response, allocate some more space for the buffer.
	there can be only 32 share entries in the response anyway.  this needs
	to be dealt with.

pipeutil.c :

	modified name_to_rid() function to use new parameters "domain admin users"
	and "domain guest users", but will otherwise do unix uid + 1000.

	moved make_dom_gids() here.

proto.h:

	the usual.

smb.h smbparse.c :

	renamed sid_no to sid_rev_num in DOM_SID, and gid to r_gid in DOM_GID.

util.c :

	moved make_dom_gids() from here.
	created char *unistrn2(uint16* uni_buffer, int max_len)
(This used to be commit ec60e48d7982240b7755d246b2f1e8989467f66f)
1997-10-22 11:31:37 +00:00
Luke Leighton
efe9b26a7b 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)
1997-10-21 18:25:14 +00:00
Jeremy Allison
79f4fb52c1 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)
1997-10-20 18:52:04 +00:00
Luke Leighton
77a9385525 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)
1997-10-20 16:25:19 +00:00
Luke Leighton
423a7c4171 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)
1997-10-20 12:10:58 +00:00
Andrew Tridgell
f4b4b3e6e3 casting cleanups
(This used to be commit ab849a97821c9e1f199eea8ea2ec477687bed947)
1997-10-20 02:50:12 +00:00
Luke Leighton
54ffd7f5c9 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)
1997-10-19 15:33:25 +00:00
Jeremy Allison
c336a2f081 .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)
1997-10-17 23:08:07 +00:00
Luke Leighton
f3c37f925e 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)
1997-10-17 13:43:01 +00:00
Andrew Tridgell
cc0f55bd5b added loopback_ip. This is used to detect packets from ourselves
(This used to be commit eb76fea411c5c3aa96b7158d02b49ed42ec7ba70)
1997-10-15 09:16:30 +00:00
Luke Leighton
0b04310b8a align_offset() adjusted pointer to wrong location. oops.
(This used to be commit ba28678e3f673cd10d936f59ff0df6a852aca793)
1997-10-13 11:15:46 +00:00
Luke Leighton
a26037ac7c added debugging macros (suitable eventually for use in tcpdump, hopefully)
(This used to be commit 946d73cf838976b905550288cac3aea7c43959f6)
1997-10-12 11:46:42 +00:00
Luke Leighton
9160c85a78 namelogon.c :
added NTLOGON.  (fixed the case 0:)

namepacket.c:

	call to NTLOGON mailslot

nameserv.h

	defines for NETLOGON and NTLOGON mailslot

util.c:

	added andrew's dump_data() function.
(This used to be commit 1eaad1c99463dcd42eb8ff4ea5686ad9ec6fc42e)
1997-10-11 15:10:57 +00:00
Andrew Tridgell
1ece349db5 fixed the log wrapping bug.
This is a very nasty bug that I think explains quite a few
intermittent problems people have been having with Samba.

It may be worth checking on other cases where errno can be overwritten
by seemingly innocuous things (in this case a DEBUG() line)
(This used to be commit 1448f528b60402170257c1cdf6831cc40b4c86c9)
1997-10-10 02:32:01 +00:00
Luke Leighton
ad54a56714 credentials.c:
use UTIME structure (defined and commented in smb.h to be time, secs,
                         since 01jan1970)

pipes.c:

	another sub-function.

util.c:

	added char *unistr2(uint16 *buff) function.  same as unistr except
    it takes uint16* instead of char*.

smbparse.c smb.h:

	more structure sorting.

proto.h:

	the usual.
(This used to be commit 72a86f514f0c92b69499718e63f5dd73ebece56e)
1997-10-09 14:40:46 +00:00
Christopher R. Hertel
ed61181f29 I rewrote the name_mangle() and name_len().
The interface is the same, but I've simplified the code a bit and added
a few comments.  I tested the changes and the output is the same as that
produced by the original (at least, it was in all of my tests).  CRH
(This used to be commit 707d0ec388c0045938f367e1d17919bfc8637fea)
1997-10-07 22:04:05 +00:00