1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-20 14:03:59 +03:00

919 Commits

Author SHA1 Message Date
Andrew Tridgell
3dfc0c8472 changed to use slprintf() instead of sprintf() just about
everywhere. I've implemented slprintf() as a bounds checked sprintf()
using mprotect() and a non-writeable page.

This should prevent any sprintf based security holes.
(This used to be commit ee09e9dadb69aaba5a751dd20ccc6d587d841bd6)
1998-05-11 06:38:36 +00:00
Jeremy Allison
9f57f01b14 clitar.c: #ifdef'ed out all the bits that were giving 'defined but not used'
messages.
nttrans.c: More updates.
smb.h: Removed stuff that didn't belong in the smb_passwd struct. Persuaded Luke
       to use a new structure.
web/swat.c: Fixed gcc complaints about shadowing global 'string'.
Jeremy.
(This used to be commit 61c1dbb9785ed1e6fe40f93c7cc65024884df6f5)
1998-05-08 16:59:30 +00:00
Richard Sharpe
bb8706f407 Se-submitting clitar.c/
I now only have one warning in my code which is the result of some code I have started
working on but am not yet using in the code, along with a warning that is caused
by one of the include files (a nested comment).

I used -Wall -Wshadow -Wstrict-prototypes
(This used to be commit 7b98fd5b69282320af700833c2d2720c42a382d8)
1998-05-08 13:51:17 +00:00
Jeremy Allison
2b4d426726 Rolling back again to the equivalent of revision 1.22, as the current
CVS head branch will not compile.
Jeremy.
(This used to be commit 18a0a10dcb04733a2d7ba0e16d07ab7e6e2d54be)
1998-05-06 17:54:28 +00:00
Richard Sharpe
b59916ebf7 Real fix for clitar.c problems. Have now made all the right
things static, and have done a 'make proto; make clean; make'.

Still get 54 compiler warnings under Digital UNIX cc.

Honest. :-)
(This used to be commit 47eb7e5be2f12206bd2de0670be478d80e1d84de)
1998-05-06 02:35:56 +00:00
Jeremy Allison
905261c53c Rolling clitar.c back to the previous rev 1.22 as the current one
needs fixing (sorry).
Jeremy.
(This used to be commit 50f75b11465ac45f1944ed613a65524ca4e60594)
1998-05-05 18:11:24 +00:00
Richard Sharpe
38b8e524ea Added bug fixes to clitar to ensure proper longfile name restores
occur.

Also getting ready for setting directory dates correctly
(This used to be commit fc0cad9035f9cbb5d8a5ee0221c342a3f90cf201)
1998-05-05 13:03:44 +00:00
Jeremy Allison
e7ac86607c This looks like a big change but really isn't.
It is changing the global variables "myname" and "myworkgroup"
to "global_myname" and "global_myworkgroup" respectively.

This is to make it very explicit when we are messing
with a global (don't ask - it makes the domain client
code much clearer :-).

Jeremy.
(This used to be commit 866406bfe399cf757c8275093dacd5ce4843afa0)
1998-04-25 01:12:08 +00:00
Jeremy Allison
cac6a060af Changes to allow Samba to be compiled with -Wstrict-prototypes
with gcc. (Not a big change although it looks like it :-).

Jeremy.
(This used to be commit cd2613c57261456485fe4eeecfda209ada70de8e)
1998-04-13 19:24:06 +00:00
Richard Sharpe
e0c21df69a Changes to client.c support the need for directories to be processed by whatever
action is passed to do_dir.

Changes to clitar.c as requested by Canon Information Systems Research Australia:

1. Support restoring long file names
2. Write directory entries to TAR files as first part of setting directory create
   times
3. Ensure zero length files get correct mtime
4. Allow DOS and UNIX pathnames in command line parameters.
(This used to be commit 0c228f0b33950c8d38de0529e88a38848742a50d)
1998-04-11 07:52:13 +00:00
Jeremy Allison
612cbb6a60 Patch from Chris Maltby <chris@softway.com.au>. His comments follow:
+ improvement to smbtar to allow exclusion/inclusion of system and
    hidden files, and to generate a listing of what has been archived
    in a format useful for automated backup systems.

  + add the "Softq" spooling system to samba's printing capabilities.

  + I have "fixed" the intrusion of US style dates into samba reporting
    as well. The format yyyy/mm/dd is not only uunambiguous, but also
    has the benefit of making lexicographic sorts work correctly.

Jeremy.
(This used to be commit f9dacd1d8b89fccad859c0c6bc7a492823eb4b06)
1998-04-02 01:01:24 +00:00
Jeremy Allison
6cd35ce945 client.c: Fixed problem where debug level on command line was overridden by smb.conf.
smbpasswd.c: Removed bugs I put in yesterday (thanks Luke :-) and added error
message reporting for remote password changing.
Jeremy.
(This used to be commit 6a3394a285a250d1029cdd545dd0bf832284555a)
1998-03-26 19:11:31 +00:00
Jeremy Allison
7abbf368f9 Adding the same changes to HEAD as were added to BRANCH_1_9_18.
Changed smbpasswd to be client-server for a normal user, rather
than accessing the private/smbpasswd file directly (it still accesses
this file directly when run as root, so root can add users/change a
users password without knowing the old password).

A shakeout of this change is that smbpasswd can now be used to
change a users password on a remote NT machine (yep - you heard
that one right - we can now change a NT password from UNIX !!!!!).

Jeremy.
(This used to be commit 20770b6f1c25288e90d3e0d215afa7f0809ce124)
1998-03-19 20:06:47 +00:00
Jeremy Allison
c54af0f8b2 Adding the same change as was added to 1.9.18 branch to add the
"name resolve order" parameter.

source/Makefile: Re-ordered link for name resolve order code.
source/clientgen.c:
source/clientutil.c: Added calls to resolve_name().
source/includes.h: Added HPUX zombie fix.
source/loadparm.c: Added new name resolve order parameter.
source/namequery.c: Re-wrote to include parsing of lmhosts file, new resolve_name()
                    function requested by John.
source/nmbd.c: Tell resolve_name not to do WINS lookups if we are the WINS server.
source/nmbd_lmhosts.c: Call lmhosts parsing functions in namequery.c
source/password.c: Call resolve_name() to lookup security=server name.

source/reply.c:
source/time.c:
source/trans2.c: "fake directory create times" fix from Jim Hague - hague@research.canon.com.au.
source/util.c: Removed isalnum() test in Get_Hostname() that seems to cause
               problems on many systems.

Jeremy.
(This used to be commit 7f118970da7c43eaddcf92dc056d3e849f1e7d5c)
1998-03-16 20:59:47 +00:00
Andrew Tridgell
b85346942e another makeover of loadparm to support new stuff in swat and
testparm.

In particular I added:

- ability to optionally save default values of all parameters when
  calling lp_load(). This can then be used to save only non-default
  parameters in lp_dump(). This makes the saved smb.conf (and viewed
  parameters in testparm) much shorter

- ability to not load ipc share in lp_load()

- separators in parm_table[] so parameters can be grouped logically.

- flag to mark parameters that are local but which should be also
  viewed as global as far as parameters editing is concerned
(This used to be commit f9af35da26e58fb0b644b5f0169f1c212230047a)
1998-03-14 08:27:41 +00:00
Jeremy Allison
fdeea341ed "For I have laboured mightily on Luke's code, and hath broken
all I saw" - the book of Jeremy, chapter 1 :-).

So here is the mega-merge of the NTDOM branch server code.
It doesn't include the new client side pieces, we'll look
at that later.

This should give the same functionality, server wise, as
the NTDOM branch does, only merged into the main branch.

Any fixes to domain controler functionality should be
added to the main branch, not the NTDOM branch.

This code compiles without warnings on gcc2.8, but will
need further testing before we are sure all the working
functionality of the NTDOM server branch has been
correctly carried over.

I hereby declare the server side of the NTDOM branch
dead (and all who sail in her :-).

Jeremy.
(This used to be commit 118ba4d77a33248e762a2cf843fb7cbc906ee6e7)
1998-03-11 21:11:04 +00:00
Jeremy Allison
b7fb6c6b38 Change the multibyte character set support so that
Kanji support is one case of multibyte character
support, rather than being a specific case in
single byte character support.

This allows us to add Big5 Chinese support (code page 950)
and Korean Hangul support (code page 949) at very little
cost. Also allows us to easily add future multibyte
code pages.

Makefile: Added codepages 949, 950 as we now support more multibyte
codepages.
asyncdns.c: Fixed problem with child being re-spawned when parent killed.
charcnv.c
charset.c
client.c
clitar.c
kanji.c
kanji.h
smb.h
util.c
loadparm.c: Generic multibyte codepage support (adding Big5 Chinese
            and Korean Hangul).
nmbd.c: Fixed problem with child being re-spawned when parent killed.
mangle.c: Modified str_checksum so that first 15 characters have more
          effect on outcome. This helps with short name mangling as
          most 'long' names are still shorter than 15 chars (bug was
          foobar_mng and foobar_sum would hash to the same value, with
          the modified code they hash differently.
Jeremy.
(This used to be commit 299016338cfb47f0c585875ef9b468121fcee97d)
1998-03-03 20:19:14 +00:00
Herb Lewis
b3d9fe61f3 -N option still prompted for password in smbclient -L usage
(This used to be commit 140fba461bc22f26055c13b04a084d2df16ac604)
1998-02-26 20:41:05 +00:00
Jeremy Allison
990c84354a Sometime after 1.9.17p5 smbclient stopped being able to do
NetBIOS name lookups by broadcast and instead only does DNS.
With the belief that this was not what was intended (I think
it happened in the clientutil.c cleanup) I have added that
capability back to smbclient by adding the #define USENMB
into clientutil.c, and adding the required namequery.o into
the object lists for smbclient and smbmount (as they now
need it to link).
If this was done intentionally let me know and I'll back
this out.
Jeremy.
(This used to be commit 1da47e79d3055468b03f496982af0fb836d91f8c)
1998-02-14 07:11:46 +00:00
Jeremy Allison
a093e73d94 Fix for crash bug with amanda - from "Michael C. Povel" <Michael.Povel@hub.de>.
Jeremy.
(This used to be commit 735adfa01b7b2e540bb5476a77d6b689ca70852a)
1998-02-13 12:40:23 +00:00
Jeremy Allison
6d488ae796 Added fix for doing pq command (from "James J. Szinger" <james.szinger@yale.edu>).
Jeremy.
(This used to be commit 7123405d6351cf6457adb1199dab3c6416bf9865)
1998-02-12 11:59:55 +00:00
Jeremy Allison
55f400bd84 This is *not* a big change (although it looks like one).
This is merely updating the Copyright statements from 1997 to 1998.
It's a once a year thing :-).
NO OTHER CHANGES WERE MADE.
Jeremy.
(This used to be commit b9c16977231efb274e08856f7f3f4408dad6d96c)
1998-01-22 13:27:43 +00:00
Volker Lendecke
0b2e57592c *** empty log message ***
(This used to be commit 1e1b0c80f84657f89ffcd4132887cd9f8a26885a)
1998-01-22 03:47:48 +00:00
Jeremy Allison
fec28f2def Makefile: Added new codepage - 866.
charset.c: Supporting code for codepage 866.
clientutil.c: Fix compile bug in little-used #define.
includes.h: Supporting code for codepage 866.
make_smbcodepage.c: Supporting code for codepage 866.
pcap.c: Fix bug for lpstat.
Jeremy.
(This used to be commit 6040d7a39e5d5ab426905aa79b871df815fb9b62)
1998-01-16 06:29:38 +00:00
Volker Lendecke
bd33a35fb5 Added manpages.
Removed obsolete options from smbmount help message.
Volker
(This used to be commit 2d550d28cd9d3cdb6f72e1f387d9c65dbc1404ad)
1998-01-06 00:13:44 +00:00
Volker Lendecke
c271da9c85 the real source code for the smbfs utilities. Forgot to do
cvs add first.
Volker
(This used to be commit 65406a546e15e53fcb0b724d0df3bc56a784edff)
1998-01-05 22:56:29 +00:00
Volker Lendecke
8d50079a6e Added 3 commands:
smbmount: This is a stripped down smbclient that communicates with
the Linux 2.1.x kernel to supply authenticated smb connections for
smbfs mount points.
smbmnt/smbumount: setuid commands that do the actual smb mount system
call after having done the appropriate security checks
(This used to be commit ccbbc4e647ad900b215dae949d5bcd45671c68c8)
1998-01-05 22:54:32 +00:00
Jeremy Allison
5f38824696 Bugfix from Branko Cibej <branko.cibej@hermes.si>
- client.c had a workaround embedded in it for his
earlier bug in StrnCaseCmp - removed this.
Jeremy.
(This used to be commit 7cb4e4b099cef0be3a7440bd5feb8b3d0c3c5f18)
1997-12-24 04:32:01 +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
Andrew Tridgell
edc0554f7c fix a bug that sometimes prevented smbclient from connecting with
protocol < LANMAN1
(This used to be commit 95ad2c284dad9c5042ac113eb7067a10531d34a1)
1997-12-14 17:48:55 +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
Andrew Tridgell
1463cb1a43 fixed the help message for -p (someone complained!)
(This used to be commit c779ed654ec7d9f1fc870476a05d2294e8c0faea)
1997-12-02 23:32:03 +00:00
Andrew Tridgell
e54a611dad get rid of stat command (it is a hangover from an old experiment)
(This used to be commit 8ced76c4c71c67c54bf0deedff5a7adfca04e4f3)
1997-11-25 12:20:55 +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
Jeremy Allison
77aec4ae63 Rolled back tree state to 11:59pm 8th November 1997 EST to
remove problems.
Jeremy
(This used to be commit 4a36ac236c2ad634f05efcd0179875d09988614a)
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 ad43183d2dd62a808c9fba03f81562362d4de713)
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 f27966957fa7f16d337a4a58719239d036deab4c)
1997-11-09 17:30:10 +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 4cf4dd696714492f8e51661cab4736d66ab2916b)
1997-11-03 15:47:03 +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 21878e7d8628d05786c3c76f2943e31df1096577)
1997-11-02 04:01:57 +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 54c245be152e5fa8f5b535c93f8d11c5f591e23f)
1997-11-01 19:20:29 +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 054e3b2ae3a8cfb98fde72becef9b05de34d2ba7)
1997-11-01 13:22:16 +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 a64ba16db615f83739c147a521ccff3f7c42987b)
1997-10-30 22:21:49 +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 33cce5fac0e2f818a19a6c4e6a797ef44f3b5c75)
1997-10-30 01:05:13 +00:00
Luke Leighton
a2cbf43a6d split ntclient.c down into appropriate modules.
(This used to be commit 50d7e4d6f6b5d770742ee83523d6146cf51f8259)
1997-10-29 13:24:42 +00:00
Luke Leighton
b925b3d20c added frag field to make_rpc_hdr() function
(This used to be commit 6b0e51929495582bc48a4d5fba24aa7c1f7caaf6)
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 21c89e2f17c51939fd6b53dddbe3072419eb0db2)
1997-10-29 00:04:14 +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 9f2c4f1fee7e411adba8f529b7666a7325584457)
1997-10-28 17:54:10 +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 2f3cca23e2465ca6a3a31fda005af1fd74f6af92)
1997-10-27 19:00:38 +00:00
Jeremy Allison
a030c93878 Fixed ntclient.c so it would compile.
Jeremy.
(This used to be commit 598e98e5612250966696826a98de35356f8f03d8)
1997-10-27 18:07:36 +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 541fb82895008cc30477019cdcafed9fdbbeac43)
1997-10-27 17:04:15 +00:00