1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-11 16:58:40 +03:00

89 Commits

Author SHA1 Message Date
David O'Neill
767f73aee6 Cleanup of Get_Pwnam(). Adds debugging, cleans up the allow_change
codepath.
-
Gerald Carter
059f4fee5d new version of Get_Pwnam()
o check the username in all lowercase
  o check the username as transmitted if this would be a different case
  o check the username in all upper case if this is a new version


-- jerry
-
Jeremy Allison
4ffda462b9 Even when looking up a users groups via winbindd even if the lookup for
the list of groups a user is in succeeds via winbind, we must allow the
lookup of the group name -> gid we are checking if the user is a member
of to go via winbind or /etc/group - as it may be a group on the local
box we are checking against. This is a subtle one.....
Jeremy.
-
Jeremy Allison
fd17374e6d John Reilly @ HP (who is a wonderful human being and *definately* needs
CVS commit access :-) has written a simple routine that peeks inside the
MS PE printer driver file format and can tell if a driver is W2K or NT4.x.
So we can now correctly return the driver version number. Hurrah !
JF - this is the code you always wanted ..... :-) :-).
Jeremy.
-
Jeremy Allison
e222057140 Added David O'Neills fix to HEAD (hmmm. how did this compile... :-).
Jeremy.
-
Jeremy Allison
5b0038a2af Fix to allow smbd to call winbindd if it is running for all group enumeration,
falling back to the UNIX calls on error. This should fix all problems with
smbd enumerating all users in all groups in all trusted domains via winbindd.
Also changed GETDC to query 1C name rather than 1b name as only the PDC
registers 1b.
Jeremy.
-
Jeremy Allison
b1cb7bec51 Turns out we do need the pwnam check as on many systems the users
primary group is not listed in the groups file...
Jeremy.
-
Jeremy Allison
b057a7349b Fix to avoid calling getgrgid for no reason.
Jeremy.
-
Andrew Tridgell
2740a80e30 don't return a passwd struct for usernames that don't
belong to us
-
Andrew Tridgell
6cbb826b15 use "winbind separator" option for domain/user separator character -
Andrew Tridgell
ada483cb56 - changed smb_getpwnam() to use winbind style usernames
- finished ntdom -> winbind rename in head
-
Andrew Tridgell
8b7a10febe a minimal change to get appliance mode to work with winbindd
we needed to accept usernames of the form DOMAIN/user, which means we
needed to pass the domain to a getpwnam() like routine in certain
critical spots.

What I'd rather do is get rid of "char *user" everywhere and use the
new userdom_struct, but that will have to wait a few days.
-
Andrew Tridgell
453a822a76 first pass at updating head branch to be to be the same as the SAMBA_2_0 branch -
Luke Leighton
054195df9b changed function name of get_home_dir() to get_unixhome_dir(), to stop
clash with gnu readline library.

fixed issue with [homes] service not being there - call lp_add_home()
just before starting the msrpc processing.
-
Luke Leighton
2245b0c6d1 the first independent msrpc daemon - lsarpcd.
one horrible cut / paste job from smbd, plus a code split of shared
components between the two.

the job is not _yet_ complete, as i need to be able to do a become_user()
call for security reasons.  i picked lsarpcd first because you don't
_need_ security on it (microsoft botched so badly on this one, it's not
real.  at least they fixed this in nt5 with restrictanonymous=0x2).
fixing this involves sending the current smb and unix credentials down
the unix pipe so that the daemon it eventually goes to can pick them
up at the other end.

i can't believe this all worked!!!
-
Luke Leighton
436a891455 using jeremy's sys_getpwnam() call in the more critical area: Get_Pwnam().
made sure that hashed_getpwnam() has the copy-passwd-struct-wrapper
around it, too.
TODO: replace all calls of getpwnam() with sys_getpwnam().
-
Luke Leighton
41f071642d patch from michael stockman <pgmtekn-micke@algonet.se> to provide a static
struct passwd in _Get_Pwnam().  _Get_Pwnam() is responsible for malloc/
freeing the string pointers to this struct passwd, NOT the callers of
_Get_Pwnam().
-
Luke Leighton
1d2557cc27 #ifdef'd out hashed_getpwnam. -
Tim Potter
36d7cb4ccc Moved code that changes the pw_passwd entry (i.e shadow password and
weird unixware stuff) into _Get_Pwnam() to fix a memory allocation bug.

Note that the Get_Pwnam() function now returns a const struct passwd *
as a hint to other developers not to change entries in the struct
passwd.
-
Luke Leighton
06fce76e53 clean-up of cache-getpw-hash code needed (make proto showed up loads
of functions that should be static).
-
Luke Leighton
899fc053c5 Jani Jaakkola's "getpwuid() / getpwnam()" hash-cache-hack -
Luke Leighton
2cce78aa00 trying to track down issues in get_home_dir(). -
Jeremy Allison
18ff93a9ab Added the same open()/fopen()/creat()/mmap() -> sys_XXX calls.
Tidied up some of the mess (no other word for it). Still doesn't
compile cleanly. There are calls with incorrect parameters that
don't seem to be doing the right thing.

This code still needs surgery :-(.

Jeremy.
-
Andrew Tridgell
3eade55dc7 bounds check next_token() to prevent possible buffer overflows -
Andrew Tridgell
4eb28f7148 added test for getpwanam(). -
Andrew Tridgell
3bda7ac417 merge from the autoconf2 branch to the main branch -
Jeremy Allison
97209a2946 Fixed (hopefully) last bug with username mapping.
map_username wasn't returning true on a map which
was causing find_service not to find a home directory.
Jeremy.
-
Jeremy Allison
beef636a4d Makefile: Added ubi_sLinkList.o as the groupname.o file needs it. Added groupname.o
includes.h: Added ubi_sLinkList.h include.
loadparm.c: Added groupname map parameter.
password.c: Fix HPUX big_crypt.
username.c: New user_in_list() code. Moved groupname map code to groupname.c
lib/rpc/server/srv_util.c: Added lookup_wellknown_sid_from_name().

New groupname map stuff. Note that nothing currently uses this but at
compiles ok.

Jeremy.
-
Jeremy Allison
fa95fae5ee ipc.c: map_username is now a BOOL function.
reply.c: map_username is now a BOOL function.
server.c: Added capability to do map_username on service names
          when looking for a home directory. That's what the
          original code would do.
lib/rpc/server/srv_util.c: Changed domain_ to builtin_ for
                           BUILTIN aliases.
username.c: Work in progress on groupname map parameter.
Jeremy
-
Jeremy Allison
fb6ed81844 De-coupled the mapping of a Windows to UNIX username from the Get_Pwnam
username case conversion wrapper. It is now (very) explicit where we are
mapping between an incoming Windows username, and when we are doing a
UNIX password entry lookup, which may change the case of the given
username.
This makes things *much* clearer (IMHO:-) and will ease the adding of
the 'groupname map' parameter, and the addition of the special 'jeremy'
mode for Samba where unix users will not be needed. (We must think of
a better name for it :-).
Jeremy.
-
Jeremy Allison
cd2613c572 Changes to allow Samba to be compiled with -Wstrict-prototypes
with gcc. (Not a big change although it looks like it :-).

Jeremy.
-
Jeremy Allison
b9c1697723 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.
-
Andrew Tridgell
af57bc05fe 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)
-
Jeremy Allison
e7eb1f044d Adding Andrews buffer overflow fixes into the main branch.
Jeremy (jallison@whistle.com)
-
Jeremy Allison
97ed4fea67 Makefile: Changed proto: target to not include c files not used currently.
Caused proto.h to be from a sorted list of C files.
arcfour.h: Added prototypes.
client.c: Added username%password in environment patch from John Blair <jdblair@frodo.tucc.uab.edu>
loadparm.c: Added username manipulation code from Peter McCool [SMTP:peter@qimr.edu.au]
username.c: Added username manipulation code from Peter McCool [SMTP:peter@qimr.edu.au]
mkproto.awk: Added arc4_key type.
proto.h: Updated & sorted.
Jeremy (jallison@whistle.com)
-
Samba Release Account
cf23a155a1 'The mother of all checkins' :-). Jeremy Allison (jallison@whistle.com)
Wed May  7 1997: Update for 1.9.17alpha1 release - 'browsefix release'
designed to make browsing across subnets work.

byteorder.h:	Updated copyright to 1997.
charcnv.c:      Updated copyright to 1997.
charset.c 	Updated copyright to 1997.
charset.h	Updated copyright to 1997.
client.c	Updated copyright to 1997.
clientutil.c	Updated copyright to 1997.
dir.c		Updated copyright to 1997.
fault.c		Updated copyright to 1997.
includes.h	Updated copyright to 1997.
interface.c	Updated copyright to 1997.
ipc.c		Updated copyright to 1997.
kanji.c		Updated copyright to 1997.
kanji.h		Updated copyright to 1997.
loadparm.c	Updated copyright to 1997.
locking.c	Updated copyright to 1997.
mangle.c	Updated copyright to 1997.
message.c	Updated copyright to 1997.
nameannounce.c

	Made use of WINS subnet explicit.
Added reset_announce_timer() so announcement
can be made immediately when we become a master.
Expanded code to do sync with dmb.

namebrowse.c

	Removed redundent checks for AM_MASTER in
sync code. Made use of WINS subnet explicit.

namedbname.c	Made use of WINS subnet explicit.
namedbresp.c	Made use of WINS subnet explicit.
namedbserver.c	Made use of WINS subnet explicit.

namedbsubnet.c

	Explicitly add workgroup to WINS subnet
when we become a dmb. Made use of WINS subnet explicit.

namedbwork.c

	Made use of WINS subnet explicit. Removed
redundent check_work_servertype() function.

nameelect.c

	Explicitly add workgroup to WINS subnet
when we become a master browser. Made use of WINS subnet explicit.

namelogon.c	Updated copyright to 1997.
namepacket.c	Updated copyright to 1997.
namequery.c	Updated copyright to 1997.

nameresp.c

	Made use of WINS subnet explicit. Made nmbd fail if
configured as master browser and one exists already.

nameserv.c

	Made use of WINS subnet explicit. Remove redundent
logon server and domain master code.

nameserv.h	Add emumerate subnet macros.
nameservreply.c	Made use of WINS subnet explicit.
nameservresp.c	Updated copyright to 1997.

namework.c

	Made use of WINS subnet explicit. Updated code to
add sync browser entries to add subnet parameter.

nmbd.c

	Added sanity check for misconfigured nmbd.

nmblib.c	Updated copyright to 1997.
nmblookup.c	Updated copyright to 1997.
nmbsync.c

	Removed redundent AM_ANY_MASTER check.

params.c	Updated copyright to 1997.
password.c	Updated copyright to 1997.
pipes.c		Updated copyright to 1997.
predict.c	Updated copyright to 1997.
printing.c	Updated copyright to 1997.

proto.h

	Changed protos for new nmbd code.

quotas.c	Updated copyright to 1997.
replace.c	Updated copyright to 1997.
reply.c		Updated copyright to 1997.
server.c	Updated copyright to 1997.
shmem.c		Updated copyright to 1997.
smb.h		Updated copyright to 1997.
smbencrypt.c	Updated copyright to 1997.
smbpasswd.c	Updated copyright to 1997.
smbrun.c	Updated copyright to 1997.
status.c	Updated copyright to 1997.
system.c	Updated copyright to 1997.
testparm.c	Updated copyright to 1997.
testprns.c	Updated copyright to 1997.
time.c		Updated copyright to 1997.
trans2.c	Updated copyright to 1997.
trans2.h	Updated copyright to 1997.
uid.c		Updated copyright to 1997.
username.c	Updated copyright to 1997.
util.c		Updated copyright to 1997.
version.h

	Changed to 1.9.17alpha1.
-
Samba Release Account
25175ce311 Fixed issue with null ypdomainname being used.
Jermy.
-
Andrew Tridgell
b551dc98f7 got rid of a lot of redundent header files as we now globally generate
prototypes automatically using "make proto". This is much less prone
to error than the old method of manually adding prototypes
-
Samba Release Account
291551d807 Initial version imported to CVS -