1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-13 13:18:06 +03:00
Commit Graph

813 Commits

Author SHA1 Message Date
Jeremy Allison
15a6097263 clientgen.c: Added cli_mv() (used in a recent torture test).
reply.c: Changed reply_open_and_X to split out the oplock
request bits from core and extended and if an oplock was granted only set
the corresponding bit on reply.
server.c: Added code to dynamically allocate i/o buffers in oplock_break
(prevents recursion problems) , also made reset of sent_oplock_break
explicit.
Jeremy.
(This used to be commit 16e55ee2b8)
1997-11-30 02:58:34 +00:00
Andrew Tridgell
7da2663f0d don't display locks for dead processes in smbstatus
(This used to be commit c7df484ef6)
1997-11-29 13:35:09 +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 901b95aa77)
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 e360c79c9c)
1997-11-29 02:40:31 +00:00
Andrew Tridgell
7c025b60ac pass the mailslot name to process_logon_packet()
- fixed process_logon_packet() to always send the reply to/from the
correct netbios name (it should match the query)

- only do a NT style QUERYFORPDC if the query came in on a
NT_LOGON_MAILSLOT

Luke, can you check to see if these changes work in your branch with
NT logons?
(This used to be commit e89611985b)
1997-11-28 05:52:31 +00:00
Andrew Tridgell
7f2cd86196 get_entries is an int not a bool
(This used to be commit 84215c9b91)
1997-11-28 05:48:48 +00:00
Samba Release Account
f4e60aab71 preparing for release of 1.9.18alpha12
(This used to be commit 9cac33a13d)
1997-11-28 03:46:03 +00:00
Andrew Tridgell
bca5c727af there was a bug in my oplock bugfix :-)
It's fixed properly now :-)
(This used to be commit a6a04b5c6c)
1997-11-28 03:39:04 +00:00
Andrew Tridgell
f822c17d35 fixed a very nasty oplock bug. We could send oplock break requests on
files that aren't open if the file happened to close while the oplock
was in transit. We would end up sending a oplock break request on
another random file (actually the open file that happened to have the
highest fnum). Then we wouldn't get a response, so smbd would keep
sending and would actually flood the net with an infinite number of
oplock break requests!
(This used to be commit 0da20e0aec)
1997-11-28 03:30:24 +00:00
Andrew Tridgell
6c158adf25 oh no! my favourite hack is broken. You can't do:
[%U]
	path = %H

to get a new homes area. I wonder when it broke?

Anyway, I've fixed it. We can all rest easy now, knowing that you
really can produce an incomprehensible smb.conf and get it to work.
(This used to be commit 2245da4ad6)
1997-11-26 23:43:06 +00:00
Andrew Tridgell
e54a611dad get rid of stat command (it is a hangover from an old experiment)
(This used to be commit 8ced76c4c7)
1997-11-25 12:20:55 +00:00
Andrew Tridgell
ebe7c7a173 added cli_rmdir and cli_mkdir
added test in smbtorture for the server updating the directory modify
time when a file is added to a directory

cleanup in smbtorture so no garbage files are left on the server
(This used to be commit 3a5e07f1e9)
1997-11-24 13:44:52 +00:00
Andrew Tridgell
931d0150b0 added a SMB_QUERY_FILE_ALL_INFO test into smbtorture
W95 doesn't seem to support this call.
(This used to be commit 162947c6e6)
1997-11-23 07:26:42 +00:00
Andrew Tridgell
c16d132bf9 added some QPATHINFO and QFILEINFO tests into smbtorture.
This tests for things like midnight access times, sticky create times
and word reversed INFO_STANDARD returns
(This used to be commit 89141de14e)
1997-11-23 05:55:44 +00:00
Andrew Tridgell
a1c5442abb test SMBsetatr as well
(This used to be commit 2f29c24ba7)
1997-11-23 03:09:59 +00:00
Andrew Tridgell
74f06e4062 minor wsmbconf and cgi changes
(This used to be commit bca9c49e6f)
1997-11-23 02:42:22 +00:00
Andrew Tridgell
8bf0f359f3 added a test for the NT SMBgetatr bug in smbtorture
added support for choosing the protocol level in smbtorture (-m option)

use -1 for null date in cli_close()

get the attributes right in cli_open()
(This used to be commit d64d40a6ec)
1997-11-23 02:41:22 +00:00
Andrew Tridgell
8d971f1db1 this new cgi code includes the ability to act as a mini web server,
allowing people to use web configuration of Samba without installing a
web server
(This used to be commit b4e05c360e)
1997-11-22 07:51:23 +00:00
Andrew Tridgell
a5d239e873 fixed some typecasts of (char *) to (unsigned char *)
(This used to be commit c98ba8c748)
1997-11-22 07:17:32 +00:00
Andrew Tridgell
ab3f4464e8 the usual :-)
(This used to be commit d6467d44b1)
1997-11-22 07:10:22 +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 bac6b0daa2)
1997-11-22 07:09:12 +00:00
Jeremy Allison
5a1c907d3c Just fixed a *serious* bug in nameelect.c to do with local
master browsers. Once we have become a local master, we would
*NEVER* stop announcing ourselves as such. This has serious
implications for the new nmbd code.
Jeremy.
(This used to be commit 8e8d239d9e)
1997-11-21 21:06:40 +00:00
John Terpstra
4e92c7d1a3 Added in mods for new smb.conf "remote browse sync" option as posted to
the samba-1.9.17 tree moments ago.
(This used to be commit 2ee25cd117)
1997-11-21 14:01:23 +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 30b84bb68b)
1997-11-21 04:57:37 +00:00
Andrew Tridgell
31e8936b9a added some debug lines to the rename code
(This used to be commit ee3042eefb)
1997-11-20 01:36:36 +00:00
Andrew Tridgell
6a6653f815 changed nmblookup to only set recursion_desired in queries if the -R
option is used.
(This used to be commit 4561b8242e)
1997-11-19 23:50:02 +00:00
Jeremy Allison
689ed3481d ipc.c: Changed reply_trans to use receive_next_smb() to cope
with local message processing.
reply.c: Added check to reply_lockingX for chain after oplock break.
server.c: Added receive_next_smb().
trans2.c: Changed reply_trans2 to use receive_next_smb() to cope
       with local message processing.
(This used to be commit f4ae644e13)
1997-11-18 23:30:49 +00:00
Andrew Tridgell
eb97fc7d5a don't do the 255.255.255.255 mapping for group names if the name type
is 0x1c. This allows remote logon servers when using a Samba WINS server.

I did some experiments with a real NT WINS server and this behaviour
is much closer to being correct. It will only be totally correct when
we add proper group name support.
(This used to be commit c43b7e29ba)
1997-11-18 04:12:54 +00:00
Jeremy Allison
9f804556c4 loadparm.c : Added "veto oplock files" parameter.
make_printerdef.c: Fixed warning.
quotas.c: Fixed irix root errors.
server.c: Fixed oplock reference count bug.
smb.h: Added IS_VETO_OPLOCK_PATH().
Jeremy.
(This used to be commit c28487df63)
1997-11-17 19:16:38 +00:00
Andrew Tridgell
30dfa00877 added code to test the cli_NetServerEnum() function in clientgen.c
(This used to be commit 4933ba49b5)
1997-11-11 02:51:20 +00:00
Andrew Tridgell
5b6d9d4376 fixed a bug which caused nmbd to core dump. The problem was incorrect
parameters to cli_NetServerEnum()
(This used to be commit 628d5895aa)
1997-11-11 02:38:54 +00:00
Jeremy Allison
daa6189910 Left global_oplock_break set while request to break oplock is
outstanding to client. Done to allay Andrews' fears about
readbraw crossing on the wire :-).
Jeremy.
(This used to be commit 2fe8a730d9)
1997-11-11 01:19:32 +00:00
Andrew Tridgell
5c3f9f4e2c auto-create the locks directory on startup
(This used to be commit a0ab8fe54c)
1997-11-11 00:48:42 +00:00
Jeremy Allison
c2d2a17fbd Removed pwd_validate.c as no longer in main branch.
Jeremy
(This used to be commit 5a4a936b2c)
1997-11-10 19:38:17 +00:00
Jeremy Allison
77aec4ae63 Rolled back tree state to 11:59pm 8th November 1997 EST to
remove problems.
Jeremy
(This used to be commit 4a36ac236c)
1997-11-10 19:23:17 +00:00
Luke Leighton
cc512947c9 byteorder.h :
typecasting for the debug messages of the data dump.  hm.

#ifdef NTDOMAIN

ntclient.c rpc_pipes/lsaparse.c rpc_pipes/ntclientnet.c rpc_pipes/smbparse.c :

	adding "Net Server Password Set" functionality to smbclient.

#endif
(This used to be commit ad43183d2d)
1997-11-09 20:42:47 +00:00
Luke Leighton
e357d91068 attempting to mark up 32 bit error codes, needed for NT domains.
separated out smb server-mode password validation into a separate file.
added called and calling netbios names to client gen state: referenced
section in rfc1002.txt.
created workstation trust account checking code in ntclient.c

there might be a bug in reply_session_setup_andX.  i indented and added { }
around single-line if statements: the lm password checking code now doesn't
look right (around the GUEST_SESSSETUP bits).  *no code semantics have been
changed by the indentation process*.
(This used to be commit f27966957f)
1997-11-09 17:30:10 +00:00
Luke Leighton
a81dd62af0 mod_smbpasswd() was junking the smbpasswd file...
uninitialised variable warnings.
(This used to be commit 1b0bd98bb3)
1997-11-08 14:23:49 +00:00
Andrew Tridgell
fbb57e5923 a few more tests added, including one that tests whether the server
understand the full range of byte offsets in locking requests. Samba
doesn't (due to the 31 bit limitation in fcntl locking)
(This used to be commit af1f408a05)
1997-11-08 05:33:45 +00:00
Andrew Tridgell
a90d206131 added two more sets of tests to the smbtorture test. The tests I added
are ones that I know Samba fails. They are:

  1) correct support for retaining locks over a close (ie. the server
     must not use posix semantics)
  2) support for lock timeouts
  3) the server supports multiple locking contexts on the one SMB
  connection, distinguished by PID.
  4) the server correctly fails overlapping locks made by the same PID (this
     goes against POSIX behaviour, which is why it is tricky to implement)
  5) the server denies unlock requests by an incorrect client PID

I've been discussing with Jeremy ways that we can re-implement the
locking code to handle these correctly. This test code will be useful
to see that we have got it right.
(This used to be commit 097781e299)
1997-11-08 04:02:05 +00:00
Luke Leighton
029904995d local time discrepancies between the date on my computer and the date on
chris' computer (probably about four minutes) meant that chris' commits
didn't get downloaded when i did a cvs update.

therefore, i did a cvs update; make proto; cvs commit, and still got problems.

so, five minutes later, i do a cvs update, and _then_ chris' server.c and
mangle.c mods get downloaded, and i have to do another make proto.


this particular problem has hit us *really* badly in the past, because i
was taking files home (onto a portable that i hadn't reset the time on
since i went to the states) and then recopying them back onto the computer
here.  if i do this, i do a touch *.c *.h; cvs -t update.  *then* a cvs commit.
(This used to be commit edb9c52948)
1997-11-07 03:37:18 +00:00
Luke Leighton
b9c6add645 ipc.c :
added a #define around the alignment thing: it's a way to stop
	NetMonitor from decoding your packets!!!!

proto.h :

	usual.

reply.c :

	added what i believe to be the correct error messages for getting
	correct domain joining.

smb.h :

	some guesses at good names of the SAMR_XXXX functions.  sorting
	out the SAMR_LOOKUP_RIDS function.  this is *not* the same as
	the LSA_LOOKUP_RIDS function, unless paul accidentally put it
	on the ntlsa pipe by mistake, instead of the samr pipe :-)

rpc_pipes/lsa_hnd.c rpc_pipes/pipe_hnd.c :

	moved creation and allocation of unique policy handles into this module.

rpc_pipes/pipesamr.c rpc_pipes/samrparse.c rpc_pipes/smbparse.c :

	SAMR_LOOKUP_RIDS is beginning to look _suspiciously_ like the
	LSA_LOOKUP_RIDS function.  but i know that there are subtle
	discrepancies.
(This used to be commit 6bc07b0b41)
1997-11-07 03:28:43 +00:00
Christopher R. Hertel
f9bbcb3fb3 Modified Files:
mangle.c server.c proto.h

mangle.c
  I am planning to replace the mangled_stack array with a proper stack,
  but found many style inconsistencies (no, really).  As you might expect,
  I have standardized on my own preferences.  ;)

  I also found a potential problem in create_mangled_stack (which I've
  renamed as reset_mangled_stack).  If the stack size were passed into
  the function as 0 or less, there was the possibility that the array
  would have been freed twice.  I doubt that this ever happens, but I
  don't like to leave holes.

  Of course, the fix will be irrelevent once I replace the array with
  a linked-list-based stack.

server.c
  Changed the call to create_mangled_stack() to a call to reset_mangled_stack().

proto.h
  Regenerated to match the above changes.  (A real comment!  How unusual!)
(This used to be commit 34d1b3e4fa)
1997-11-07 03:06:24 +00:00
Jeremy Allison
36e5b646d9 ipc.c: Changing back arbitrary alignment change until I know *why*
luke changed it.
proto.h: The usual.
uid.c: Fix crash bug when attaching with smbclient -mCORE. A vuid
pointer was being used when it was null.
Jeremy.
(This used to be commit ff94f97cf2)
1997-11-06 23:34:51 +00:00
Luke Leighton
bd529d7a83 following a cvs error, i am rewriting this monster-commit. with bad grace.
Modified Files:
---------------

Makefile:

	adding extra files

ipc.c :

	send_trans_reply() - alignment issue.  this makes the alignment
	the same as that in NT.  this should be looked at by people who
	understand the SMB stuff better than i.

	api_fd_commands[] - added samr and wkssvc pipes.

loadparm.c :

	lp_domain_controller() changed to mean "samba is a domain controller".
	it's a "yes/no" parameter, now.  no, it isn't used _anywhere_.

namedbwork.c nameelect.c :

	if "domain controller = yes" then add SV_TYPE_DOMAIN_CTRL to the
	host _and_ workgroup announcements.  yes, you must do both: nt does.

namelogon.c :

	important NETLOGON bug in SAMLOGON request parsing, which may be
	the source of some people's problems with logging on to the Samba PDC.

password.c :

	get_smbpwnam() renamed to get_smbpwd_entry().

pipes.c :

	added samr and wkssvc pipes.

proto.h :

	usual.  can we actually _remove_ proto.h from the cvs tree, and
	have it as one of the Makefile dependencies, or something?

reply.c :

	get_smbpwnam() renamed to get_smbpwd_entry() - also changed response
	error code when logging in from a WORKSTATION$ account.  yes, paul
	is right: we need to know when to return the right error code, and why.

server.c :

	added call to reset_chain_pnum().

	#ifdef NTDOMAIN added call to init_lsa_policy_hnd() #endif.  jeremy,
	you'd be proud: i did a compile without NTDOMAIN, and caught a link
	error for this function.

smb.h :

	defines and structures for samr and wkssvc pipes.

smbpass.c :

	modified get_smbpwnam() to get_smbpwd_entry() and it now takes
	two arguments.  one for the name; if this is null, it looks up
	by smb_userid instead.

	oh, by the way, smb_userids are actually domain relative ids
	(RIDs).  concatenate a RID with the domain SID, and you have
	an internet globally unique way of identifying a user.

	we're using RIDs in the wrong way....

	added mod_smbpwnam() function.  this was based on code in smbpasswd.c

rpc_pipes/lsaparse.c :

	added enum trusted domain parsing.  this is incomplete: i need
	a packet trace to write it properly.

rpc_pipes/pipe_hnd.c :

	added reset_chain_pnum() function.

rpc_pipes/pipenetlog.c :

	get_smbpwnam() function renamed to get_smbpwd_entry().

	arcfour() issues.

	removed capability of get_md4pw() function to automatically add
	workstation accounts.  this should either be done using
	smbpasswd -add MACHINE$, or by using \PIPE\samr.

rpc_pipes/pipe_util.c :

	create_pol_hnd() - creates a unique LSA Policy Handle.  overkill
	function: uses a 64 bit sequence number; current unix time and
	the smbd pid.

rpc_pipes/smbparse.c :

	arcfour() issues.

	smb_io_unistr2() should advance by uni_str_len not uni_max_len.

	smb_io_smb_hdr_rb() - request bind uses uint16 for the context
	id, and uint8 for the num_syntaxes.  oops, i put these both as
	uint32s.


Added Files:
------------

rpc_pipes/lsa_hnd.c :

	on the samr pipe, allocate and associate an LSA Policy Handle
	with a SID.  you receive queries with the LSA Policy Handle,
	and have to turn this back into a SID in order to answer the
	query...

rpc_pipes/pipesamr.c rpc_pipes/samrparse.c

	\PIPE\samr processing.  samr i presume is the SAM Replication pipe.

rpc_pipes/pipewkssvc.c rpc_pipes/wksparse.c

	\PIPE\wkssvc processing.  the Workstation Service pipe?


holy cow.
(This used to be commit 1bd084b3e6)
1997-11-06 23:03:58 +00:00
Jeremy Allison
ec35f1c1cc local.h: Added OPLOCK_BREAK_TIMEOUT_FUDGEFACTOR.
proto.h: The usual.
server.c: Added timestring() messages to oplock logs. Added fix
          to allow file open processing to continue is an oplock
          break message times out.
Jeremy.
(This used to be commit c453692171)
1997-11-06 19:11:16 +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 b4e55cd476)
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 f13dbdf307)
1997-11-06 06:50:21 +00:00
Jeremy Allison
52fa04d173 Change to always register the WORKGROUP<1e> name as does Win95.
Jeremy.
(This used to be commit 313fdcd3e9)
1997-11-05 22:09:15 +00:00
Andrew Tridgell
bd83f461a1 add NO_SEMUN for HP
I really wish you could say

	#ifndef "struct foo_struct"

in C :-)
(This used to be commit acffb39f1a)
1997-11-05 12:21:45 +00:00
Luke Leighton
028679f144 smb.h :
LSA_OPENSECRET and three other unknown #defines are commented as not
	being the real defines for these!!!

rpc_pipes/pipenetlog.c :

	USE_ARCFOUR for Server Password Set.  and then ignore the password (agh!)
	this will *fail* to do logins, by the way.  i need to add a routine
	to update the smb password (next job).
(This used to be commit b9d26344cc)
1997-11-04 20:27:08 +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 6064c9d80f)
1997-11-03 19:24:45 +00:00
Luke Leighton
4039df6d4b added code that _uses_ arcfour. arcfour itself, or anything remotely
like it, has *not* been added.

this is the client and server side of the SAM Logon NT and LM OWF password
obfuscation (rc4 with the long-term session key).
(This used to be commit 4cf4dd6967)
1997-11-03 15:47:03 +00:00
Samba Release Account
083a3be7d7 preparing for release of 1.9.18alpha11
(This used to be commit cadd772df7)
1997-11-02 20:47:35 +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 15f44d2891)
1997-11-02 20:35:20 +00:00
Luke Leighton
eebb68b92e loadparm.c :
added "domain hosts allow" and "domain hosts deny".  these are to be
	used to specify which workstations can log in to a samba PDC from.
	it is also used to check whether to add an initial machine password
	into the smbpasswd database or not

smbpass.c :

	added capability to add a machine password to the smbpasswd database.
	***** the default uid is zero *****

rpc_pipes/pipenetlog.c :

	use of "domain hosts allow/deny" parameters to allow login access.

proto.h :

	usual.
(This used to be commit 2e7d341030)
1997-11-02 19:27:26 +00:00
Andrew Tridgell
e67c2e9dc6 fix some uchar/char conflicts
(This used to be commit c164681dfe)
1997-11-02 04:11:05 +00:00
Andrew Tridgell
4012c1cc8f convert the credentials code back to uchar[8] from uint32[2]
This should fix the byte order problems (maybe!)
(This used to be commit 21878e7d86)
1997-11-02 04:01:57 +00:00
Andrew Tridgell
56eece129e got rid of redundent rpc_pipes/rpc_proto.h
(This used to be commit 1a454f8188)
1997-11-02 03:10:42 +00:00
Andrew Tridgell
d186100b66 fix comments
(This used to be commit b3fd976b6c)
1997-11-02 01:33:28 +00:00
Andrew Tridgell
4fe3b2ce75 to avoid any possibility of the pipe getting full and blocking we now
only allow one query in the async dns pipe at a time. The others are
queued in the parent.
(This used to be commit f1004dd52a)
1997-11-02 01:25:50 +00:00
Andrew Tridgell
60e8211021 don't print the progress so often - it slows down the client too much
(This used to be commit cc6e770663)
1997-11-01 23:43:12 +00:00
Andrew Tridgell
87cada5fd3 minor async DNS cleanups
- start it earlier
- set DEBUGLEVEL to -1 to prevent any debug calls in child
- exit with _exit() to prevent logfile corruption
(This used to be commit 21dd073a20)
1997-11-01 23:42:28 +00:00
Samba Release Account
8e873b415b preparing for release of 1.9.18alpha10
(This used to be commit fa251b7eba)
1997-11-01 19:36:04 +00:00
Luke Leighton
c533c07553 client.c clientutil.c proto.h
rpc_pipes/ntclientlsa.c rpc_pipes/ntclientnet.c
rpc_pipes/ntclientpipe.c :

	added extra argument to cli_call_api() to allow specifying the length of
	the \PIPE\ name.  it appears that, like when the name of the pipe is NULL
	and OS-2 requires two extra bytes _after_ the NULL name, that NT requires
	two bytes after the NULL-terminated name "\PIPE\".  these two bytes vary,
	but values seen so far are: 0x72 0x70; 0x63 0x65; 0x44 0x65; 0x4E 0x00.

	there appears not to be much logic to this.  purpose unknown.

ntclient.c:

	put Set Named Pipe Handle State call directly after SMBopenX call.
(This used to be commit 54c245be15)
1997-11-01 19:20:29 +00:00
Andrew Tridgell
6a0590d709 set O_CREAT on lock file
(This used to be commit 32fecea63b)
1997-11-01 13:28:21 +00:00
Andrew Tridgell
224c40a523 a simple SMB torture tester. This will allow us to evaluate locking
techniques more accurately.
(This used to be commit 054e3b2ae3)
1997-11-01 13:22:16 +00:00
Andrew Tridgell
0024725005 change a debug level
(This used to be commit d8b896a90f)
1997-11-01 08:13:54 +00:00
Andrew Tridgell
92fcced605 don't use SEM_UNDO because of ridiculously small undo limits on some
OSes. Instead add explicit checks for dead locks at startup.
(This used to be commit 79858d610c)
1997-11-01 08:13:42 +00:00
Andrew Tridgell
264b1e0e75 some locking code cleanups
(This used to be commit 6d77311d6c)
1997-11-01 07:33:55 +00:00
Andrew Tridgell
03deca0070 re-initialise the timezone on each new connection. This means you
don't need to restart smbd after a DST change.
(This used to be commit 2a50d5d5ed)
1997-11-01 07:22:18 +00:00
Andrew Tridgell
4400805208 change from * to ^ in hashing of device/inode. Using * meant that if
the device number happened to divide the number of hash buckets we
would only use a small fraction of the hash buckets, which would slow
things down.
(This used to be commit 623ffd701f)
1997-10-31 05:56:07 +00:00
Andrew Tridgell
88bd62c9b0 define NO_SEMUN for svr4
(This used to be commit a43fa71a5f)
1997-10-31 05:54:36 +00:00
Andrew Tridgell
30c046901b OSF1 doesn't define union semun either.
(This used to be commit af7700aa2e)
1997-10-31 04:51:29 +00:00
Andrew Tridgell
23c68038b9 pm_process() never closed the file (a memory and file descriptor leak)
(This used to be commit 0d9b0d0fff)
1997-10-31 04:27:55 +00:00
Andrew Tridgell
ad5c8bad8a no Makefile needed here either
(This used to be commit 4d9cd22c9e)
1997-10-31 02:50:37 +00:00
Andrew Tridgell
f0b2473966 removing the files that are now in rpc_pipes
For future reference, if you want to move files about then don't do it
this way. The history info is lost.

Instead contact me first and tell me what you want moved and why. Then
I'll decide if we can do it while retaining the history info.
(This used to be commit 0e244f9e7c)
1997-10-31 02:46:26 +00:00
Andrew Tridgell
d5fdd84ffa - cleanup some warnings
- redo the prototypes
(This used to be commit 31dcb51e05)
1997-10-31 02:40:55 +00:00
Luke Leighton
e77e5e6ef8 blanked out these files, so that if someone does make proto, they don't
interfere with the files in the rpc_pipes/ directory.

andrew doesn't want to lose any cvs history by moving files around, so
he's going to look into that tomorrow.
(This used to be commit 5858cb97f5)
1997-10-30 22:33:59 +00:00
Luke Leighton
9fc5056a4a added a client-side "set named pipe handle state" function. not known
exactly when you call this (before or after a bind).  can sort that out
later.
(This used to be commit a64ba16db6)
1997-10-30 22:21:49 +00:00
Luke Leighton
55e2dc7c6f storing pipe name state (from set named pipe handle state call) in the
pipes array.
(This used to be commit 5335d5cdc4)
1997-10-30 21:51:15 +00:00
Christopher R. Hertel
3e0fb1883c Modified Files:
ubiqx/Makefile ubiqx/README.UBI

Added new modules to the Makefile.  Changed the text of the README to
reflect the directory change.

Added Files:
        ubiqx/ubi_AVLtree.c ubiqx/ubi_AVLtree.h
        ubiqx/ubi_BinTree.c ubiqx/ubi_BinTree.h
        ubiqx/ubi_SplayTree.c ubiqx/ubi_SplayTree.h
        ubiqx/ubi_StackQueue.c ubiqx/ubi_StackQueue.h
        ubiqx/ubi_sLinkList.c ubiqx/ubi_sLinkList.h

This is the remainder of the toolkit.  A quick rundown:
  sLinkList  = A simple singly-linked list.
  StackQueue = Implements both a stack and a queue.
  dLinkList  = (Not added 'cause it's already there.)  A doubly-linked list.

  BinTree    = Base level binary tree module.  (No height balancing, just
               the basics.)
  AVLtree    = Descendant type of BinTree.  Implements a height-balanced
               (AVL) binary tree.
  SplayTree  = Descendant type of BinTree.  Implements a splay-balanced
               binary tree.

Renamed Files:
        ubiqx/COPYING.LGPL ==> ubiqx/COPYING.LIB

This matches the naming that GNU suggests.
(This used to be commit c6205dd45e)
1997-10-30 18:05:56 +00:00
Luke Leighton
739a730637 Makefile:
simply adding pipes.o to SMBDOBJ3.

rpc_pipes/pipe_hnd.c :

	created pipe handles module.

pipes.c server.c :

	use of pipe_hnd functions in SMBopenX and SMBclose, on the IPC$ pipe.
(This used to be commit ada256b5e3)
1997-10-30 17:08:42 +00:00
Luke Leighton
f1093ad693 Makefiles for libraries. the dependencies aren't quite right, and i
don't know how to sort them.

make proto in each library directory.  over-ride the make proto for ubiqx,
so that it doesn't happen, but throws up a warning instead.
(This used to be commit 93df2c62cc)
1997-10-30 15:42:40 +00:00
Andrew Tridgell
397e1d64d7 Chris will be pleased to know that mkproto.awk no longer runs on the
ubiqx files :-)
(This used to be commit 13d9025592)
1997-10-30 08:50:18 +00:00
Andrew Tridgell
628d7993d5 moved ubi_ modules back into the ubiqx directory.
I've added a very simple (and portable) method for having separate
source directories.

This should also help when we add directories for the various ports. A
unix directory would make sense.
(This used to be commit dc8998b1d3)
1997-10-30 08:44:29 +00:00
Samba Release Account
6f3623285e preparing for release of 1.9.18alpha9
(This used to be commit 9212c93bee)
1997-10-30 01:13:34 +00:00
Luke Leighton
a275e5d4e1 removed mechanism that created actual files NETLOGON, lsarpc and the like,
which are pipes on the IPC$ connection.

created mechanism to record pipe names in a separate pipes_struct.  it
is planned to expand this, to return sensible things like interface
structures, and policy handles (RPC_IFACE and LSA_POL_HND).  and the like.
(This used to be commit 33cce5fac0)
1997-10-30 01:05:13 +00:00
Samba Release Account
4da6236108 preparing for release of 1.9.18alpha8
(This used to be commit 48548526e8)
1997-10-29 21:20:34 +00:00
Luke Leighton
21fda98dc9 byteorder.h :
have another go at reporting stuff the right way round (on SPARCs)

srvparse.c :

	copyright messages
(This used to be commit 4b54d22d59)
1997-10-29 20:23:01 +00:00
Luke Leighton
1337b61703 zero data parameter being passed to smb_io_rpc_hdr(), which couldn't cope.
(This used to be commit c0137cd8fe)
1997-10-29 20:08:09 +00:00
Luke Leighton
77cc0d6bac typecast in calls to print_asc() wrong
(This used to be commit 4088683ee0)
1997-10-29 19:58:20 +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 420408ee83)
1997-10-29 19:05:34 +00:00
Samba Release Account
26f5e4f25c preparing for release of 1.9.18alpha7
(This used to be commit dceace804e)
1997-10-29 15:38:31 +00:00
Luke Leighton
ebafb1e288 called dump_data() from show_msg().
(This used to be commit 89664898e2)
1997-10-29 15:35:53 +00:00
Luke Leighton
0db5b8fdc9 ipc.c :
bind ack should contain \PIPE\pipename not just pipename.

ntclientpipe.c :

	sanity in bind ack: pipe name checks; transfer syntax checks; reason checks.
(This used to be commit c2e2197e9d)
1997-10-29 14:34:17 +00:00
Luke Leighton
a2cbf43a6d split ntclient.c down into appropriate modules.
(This used to be commit 50d7e4d6f6)
1997-10-29 13:24:42 +00:00
Andrew Tridgell
87ea4b93ec damn. We need root privilages to do semaphore operations even if we
have done the semget() as root.  The problem is that become_root() and
unbecome_root() are so slow!

I've provided two options. The default is to set the semaphores (but
_not_ the shared memory) world writeable so that a become_root() isn't
needed. Otherwise you can define SECURE_SEMAPHORES and pay the
performance penalty.
(This used to be commit 2bbd8d2cbc)
1997-10-29 02:59:22 +00:00
Andrew Tridgell
cb6941a193 - don't allow locking to initialise twice
- check that it is initialised before de-initialising it!
(This used to be commit 68ad7b9199)
1997-10-29 02:18:08 +00:00
Andrew Tridgell
4fd96fddd2 clean up the hash entry code a bit. Got rid of lp_shmem_hash_size()
and made it private to the 2 shmem implementations. Added new
shmops->hash_size() function.

Added code to handle the IPC system limits by looping decreasing the
size of the resources (semaphores and shared memory) that we request
until we get under the system limits, which can be quite low on some
systems!

Added checks that the creator of the IPC objects is root. Otherwise we
would be open to a security hole where someone pre-creates the shared
memory segment and attaches.
(This used to be commit 6b6f624b63)
1997-10-29 01:59:54 +00:00
Luke Leighton
b925b3d20c added frag field to make_rpc_hdr() function
(This used to be commit 6b0e519294)
1997-10-29 01:05:46 +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 21c89e2f17)
1997-10-29 00:04:14 +00:00
Jeremy Allison
ecb952f913 Utility code to produce printer definition files from MS files.
Part of code to support Windows 95 automated printer driver installs.
Written by Jean-Francois Micouleau <Jean-Francois.Micouleau@utc.fr>.
(This used to be commit 6e9f817414)
1997-10-28 23:58:31 +00:00
Jeremy Allison
8f0316bdbc Adding Windows 95 printer driver code donated by Jean-Francois.Micouleau@utc.fr.
New program, make_printerdef, plus two new parameters :

[global] "printer driver file"
[local] "printer driver location"

Jeremy.
(This used to be commit 9a5b42e6b3)
1997-10-28 19:32:59 +00:00
Luke Leighton
d8e79427c9 smb.h smbparse.c pipeutil.c :
added bind and bind ack structures and parsing functions.  restructured
	rpc header stuff.

ntclient.c pipenetlog.c pipentlsa.c pipesrvsvc.c :

	having to deal with restructuring above.
(This used to be commit 9f2c4f1fee)
1997-10-28 17:54:10 +00:00
Andrew Tridgell
79f670128f enable sysv ipc and fast share modes on OSF1
(This used to be commit 3480524e15)
1997-10-28 15:07:01 +00:00
Andrew Tridgell
f320197654 need includes.h to compile on some systems (eg. sunos4)
(This used to be commit 7d80e25bb4)
1997-10-28 15:02:15 +00:00
Andrew Tridgell
9c717c285a fix for broken sunos4 includes (doesn't have SHM_R)
(This used to be commit 6ca96782ac)
1997-10-28 14:59:06 +00:00
Andrew Tridgell
c79e0abdd7 fix cast
(This used to be commit af13f5e178)
1997-10-28 14:55:47 +00:00
Andrew Tridgell
d6739a10d0 define semun for broken solaris sysvipc
(This used to be commit 4db076e08b)
1997-10-28 14:55:22 +00:00
Andrew Tridgell
e75de8adc6 lower the default hash size if SEMMSL isn't defined
(This used to be commit 9f0be847fd)
1997-10-28 14:40:31 +00:00
Andrew Tridgell
ba4d965fc0 define USE_SYSV_IPC on sunos4
(This used to be commit 6388da22eb)
1997-10-28 14:25:26 +00:00
Andrew Tridgell
e06da92b37 define USE_SYSV_IPC on a bunch more systems.
Needs some testing though.
(This used to be commit 8f2366e57d)
1997-10-28 14:22:50 +00:00
Andrew Tridgell
c9fa24b7a8 SYSV IPC implementation of fast share modes.
It will try sysv IPC first, then if that fails it will try mmap(),
then after that it will try share files.

I have defined USE_SYSV_IPC for Linux, Solaris and HPUX at the
moment. Probably a lot more could have it defined. In fact, the vast
majority of systems support it. Need autoconf again :-)

It should actually be faster than the mmap() version, and doesn't need
any lock files. This means the problem of the share mem file being on
a NFS drive will be gone.
(This used to be commit cc8fe0f062)
1997-10-28 14:19:54 +00:00
Andrew Tridgell
7c20ee083f refuse pathworks type R connect (patch from Stephen Tweedie)
(This used to be commit c63fee2b28)
1997-10-28 06:07:07 +00:00
Luke Leighton
aee261e784 added LSA_Q_CLOSE and LSA_R_CLOSE (also to smb.h). implemented in smbclient.
updated Query Info Policy to report domain name and domain sid for info levels
3 and 5.
fixed bug in dom_sid_to_string (idauths decoded wrong).  fixed bug in DOM_SID:
subauths are 32 bit not 16.
(This used to be commit 2f3cca23e2)
1997-10-27 19:00:38 +00:00
Jeremy Allison
6fc83d5c36 Fixed bug where we are a WINS server but not a domain master
browser. We were doing a name query instead of a name status.
Jeremy.
(This used to be commit 4021a1bf55)
1997-10-27 18:28:06 +00:00
Jeremy Allison
a030c93878 Fixed ntclient.c so it would compile.
Jeremy.
(This used to be commit 598e98e561)
1997-10-27 18:07:36 +00:00
Samba Release Account
e6ee5fc2d9 preparing for release of 1.9.18alpha6
(This used to be commit 28ef0df30e)
1997-10-27 17:18:51 +00:00
Luke Leighton
13291ce01d added LSA Query Info Policy.
fixed a problem with byte ordering (doing an SIVAL of the setup parameters
which was _also_ being done in the creation of the SMB header.  oops).
(This used to be commit 541fb82895)
1997-10-27 17:04:15 +00:00
Luke Leighton
f868196c1d checks against file handle in api_fd_reply(). i don't know what error
message should be returned, so i just let it fall through to sending an
"api_unsupported"
(This used to be commit 85d132da67)
1997-10-27 16:14:29 +00:00
Luke Leighton
8586dda29b added LSA Open Policy query and response processing to smbclient
(This used to be commit 16cc27852b)
1997-10-27 15:09:23 +00:00
Andrew Tridgell
71d648cdb4 change the default file permissions on the SHARE_MEM_FILE* to
0644. smbstatus now gets only read permission on the share files and
does no locking.

also get rid of some unnecessary umask(0) calls. smbd always runs with
umask(0)
(This used to be commit c6ac10170d)
1997-10-27 14:27:17 +00:00
Andrew Tridgell
464dc54336 also disable read prediction in 1.9.18
(This used to be commit 0f15558efb)
1997-10-27 13:38:07 +00:00
Andrew Tridgell
8047228db4 Fixed 2 oplock bugs:
1) the oplock macros in smb.h used | where they should have used
&. This means that smbd thought that all clients were always
requesting oplocks. This would have _really_ confused smbclient
and smbfs when they started receiving async oplock break requests when
they don't even know what an oplock is!

2) an oplock break request from a client can be embedded in a normal
lockingX request, and will be if the client has batched any lock
requests internally. The smbd code assumed that all oplock break
requests had num_locks==num_ulocks==0 which is not true. The only
thing special about a oplock break request with
num_locks==num_ulocks==0 is that no reply is sent. Otherwise it is
processed as a normal locking request in addition to the oplock break
processing.

These two fixes get the MS mail system in Win98 working on a Samba
1.9.18 network drive.

Andrew
(This used to be commit ed71534df5)
1997-10-27 12:02:34 +00:00
Luke Leighton
95b3b1473f hooray. hooray some more. hooray a lot. got the client-side working.
Q/R LSA_REQ_CHAL; Q/R LSA_AUTH2; Q/R LSA_SAMLOGON; Q/R LSA_SAMLOGOFF.
the last (non-essential right now) bit is the LSA_SRV_PWSET.

the next stage is to do LSA_OPENPOLICY; add the pipe binds (missing right
now); then we can test against an NT Server.
(This used to be commit 0a549e62fb)
1997-10-26 18:42:47 +00:00
Andrew Tridgell
2058763455 added -U option to nmblookup. This is similar to -B except that it
forces the client to send a unicast instead of a broadcast netbios
packet. This is useful for diagnostics.
(This used to be commit 57e0fac614)
1997-10-26 07:50:28 +00:00
Andrew Tridgell
f8c059517a fix some casting errors in smbencrypt and some multiply-defined errors
in clientutil.c (Luke, you can't just copy a global variable
declaration from one file to another, you need to declare one of them
extern)
(This used to be commit 944ecbcbd4)
1997-10-26 07:45:36 +00:00
Andrew Tridgell
a342ff5bf4 The browse synchronisation code in nmbsync.c now uses the clientgen.c
code, which means we don't have to link with a fake getpass routine
and we don't have a whole pile of global variables that really have
nothing to do with nmbd and were there to keep the client code happy.

The code should function identically to what it did before (hopefully
it was correct)

The only thing that now uses the horrible clientutil.c code is
smbclient.
(This used to be commit 4bf5c03b18)
1997-10-26 07:32:02 +00:00
Samba Release Account
326da272da preparing for release of 1.9.18alpha5
(This used to be commit 1b17455066)
1997-10-25 19:13:07 +00:00
Luke Leighton
11ff512ed6 oops!
(This used to be commit 2119624010)
1997-10-25 17:58:53 +00:00
Luke Leighton
7e56b5a173 added correct client-side credential generation / checking to the LSA SAM
Logon query.  i think i even got the client-side checking of the response
credentials right!
(This used to be commit f14c111835)
1997-10-25 17:38:37 +00:00
Luke Leighton
5493293442 got the SAM logon request generated, and received a SAM logon response back.
YEAH!

need to add:

	- client-side credential calculation
	- client-side parsing of the SAM logon response.
(This used to be commit 349677de3f)
1997-10-25 15:49:27 +00:00
Luke Leighton
027630f9ff sam logon query creation functions. written twice because i deleted it.
(This used to be commit 9eee8c2007)
1997-10-25 13:15:52 +00:00
Luke Leighton
390c1f3c4d Makefile :
adding bits for new nt domain code

byteorder.h :

	trying to get macros right, and not to crash on SUNOS5...

client.c :

	added #ifdef NTDOMAIN, and created do_nt_login() function.  don't
	want to have to recompile client.c unless absolutely necessary.

credentials.c :

	moved deal_with_creds() [possibly inappropriately] into credentials.c

ipc.c reply.c server.c uid.c :

	attempting to make (un)become_root() functions calleable from smbclient.
	this is a little tricky: smbclient might have to be another setuid
	root program, immediately setuid'ing to non-root, so that we can
	reset-uid to root to get at the smbpasswd file.  or, have a secure
	pipe mechanism to smbd to grab smbpasswd entries.  or the like.

smbdes.c smbencrypt.c :

	created a function to generate lm and nt owf hashes.

lsaparse.c ntclient.c smbparse.c :

	added nt client LSA_AUTH2 code.  it works, too!

pipenetlog.c pipentlsa.c pipesrvsvc.c :

	simplification.  code-shuffling.  getting that damn offset right
	for the opcode in RPC_HDR.

smb.h :

	changed dcinfo xxx_creds to DOM_CRED structures instead of DOM_CHAL.
	we might need to store the server times as well.

proto.h :

	the usual.
(This used to be commit 82436a3d99)
1997-10-25 10:58:18 +00:00
Samba Release Account
1bdf2d8fa5 preparing for release of 1.9.18alpha4
(This used to be commit bf5b060bd9)
1997-10-24 14:40:37 +00:00
Samba Release Account
78095482be preparing for release of samba-1.9.18alpha4
(This used to be commit e24465890a)
1997-10-24 14:39:28 +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 5b15b17fc6)
1997-10-24 13:58:21 +00:00
Luke Leighton
be0f2e14b5 nmblib.c :
adding some debug info

pipenetlog.c pipentlsa.c pipesrvsvc.c :

	using unistrn2 instead of unistr2 in the SAM logon username.
	wrong offset for command in request (use "reserved" field
	not cancel_count.  AGH i'll get there)
(This used to be commit 6d301d2cfd)
1997-10-24 13:51:17 +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 39cec7f698)
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 2c97b33fc0)
1997-10-23 22:30:57 +00:00
Luke Leighton
5557ab3c00 renamed static cli_setup_pkt() to static cli_setup_packet() because it
clashed with the currently-used cli_setup_pkt() in clientutil.c
(This used to be commit 25560cf40b)
1997-10-23 19:27:53 +00:00
Luke Leighton
56214b5089 commas in the wrong places...
(This used to be commit 0ca7a64515)
1997-10-23 19:24:58 +00:00
Luke Leighton
310536a709 missed nmbsync.c when adding setup count and setup pointer arguments to
cli_call_api().  sorting this for jeremy.

there is a discrepancy between the client.c list_servers() and the nmbsync.c
add_info() calls to cli_call_api() - one has an mdrcount of 1024, the other
of zero.

i don't know what difference this makes.
(This used to be commit d8c265c515)
1997-10-23 17:54:21 +00:00
Luke Leighton
203c93e922 general sorting out, from crashes generated by do_lsa_req_chal() in client.c
trying to set up the data parameters etc and not understanding what's going on.

in api_netlogTNP, added smb_io_rpc_hdr() call to decode the header received
(and in this instance, generated by do_lsa_req_chal()).  and then noticed
that it's two bytes out.  but i don't know how to do "byte parameters"
and it's not the same format as the LSA_REQCHAL received from nt workstations.

agh!
(This used to be commit 0cc8ce43e1)
1997-10-23 16:17:07 +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 473f21071f)
1997-10-23 13:38:46 +00:00
Luke Leighton
d38aba33af client.c :
send to \PIPE\ not \PIPE\NETLOGON.

ipc.c :

	fstring name not being bzero'd caused problems when calling named_pipe().
(This used to be commit 2393c49b05)
1997-10-22 18:37:43 +00:00
Luke Leighton
a947dff4c0 Makefile client.c :
adding start of undocumented options to do NT domain logons, client-side.
	starting with LSA_REQCHAL.

	the code here happily crashes smbd: i'll investigate this further... :-)

smbparse.c pipeutil.c lsaparse.c :

	moved some of the common make_xxxx() functions out of pipeutil.c
	so that the make_xxxx and (smb/lsa)_io_xxxx functions now sit
	together.  makes sense, really...

	added a make_q_req_chal() function.

	restructured make_rpc_reply() and called it make_rpc_hdr().  created
	functions create_rpc_reply() and create_rpc_response().

pipenetlog.c pipentlsa.c pipesrvsvc.c

	calling new create_rpc_reply() function instead of old make_rpc_reply().

proto.h :

	usual.

smb.h:

	added enum for RPC_PACKET_TYPE
(This used to be commit b88ee3e16c)
1997-10-22 17:51:02 +00:00
Luke Leighton
5897f0493d Makefile client.c clientutil.c clitar.c nmbsync.c :
redid the split that i did a year ago, taking the functions in client.c
	out into clientutil.c.  guess what?  we could now do encrypted password
	NetServerEnum2 calls in nmbd, if we wanted to.

	i can now use cli_call_api() to send to different pipes.  i hope.

pipenetlog.c:

	allow adding to users group _and_ to admin group.  if adding to
	guest group, don't allow adding to users or admin as well.

smb.h :

	added some pipe #defines (\PIPE\NETLOGON \PIPE\srvsvc ...)

proto.h :

	usual.
(This used to be commit 6ee065ce6e)
1997-10-22 14:28:19 +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 ec60e48d79)
1997-10-22 11:31:37 +00:00