1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-28 17:47:29 +03:00

696 Commits

Author SHA1 Message Date
Tim Potter
0be611c8dc Replaced some hardcoded hex numbers with constants.
Made a note about NOTIFY_OPTION_TYPE and NOTIFY_OPTION_TYPE_DATA - they are
actually one structure.  The latter is just the deferred referrant of the
former.
(This used to be commit b596c0b171b1fd0e25e52944c880e8a90bc10a2e)
2001-12-17 01:53:02 +00:00
Jean-François Micouleau
9f59fc64b8 update the ldap support code. it compiles.
Ignacio you can update your howto ;-)

samsync: a small patch to try chaning challenges.

	J.F.
(This used to be commit c99bc305599698f2291efbfe20024355cb2bcde0)
2001-12-13 18:09:29 +00:00
Gerald Carter
037b40f01f merge from 2.2
(This used to be commit 5b4b3323a3fbabbb3c7db5eb3b11999bbde470b1)
2001-12-13 17:18:15 +00:00
Jean-François Micouleau
1c95d1d16b decoded SAM_DELTA 0x0e and 0x12.
One is an entry for the trusted domains
The other is an entry for the trusting domains

They are pretty basic, I'll improve them.

	J.F.
(This used to be commit 8d359e62138aa327cb00875dc446234ce4be6f02)
2001-12-12 11:38:57 +00:00
Jean-François Micouleau
c75d9409aa a ugly decoder for SAM_DELTA_DOM_INFO (0x0d)
a correct decoder for SAM_PRIVS_INFO (0x10)

this code is totally useless right now, it's just fun to decode those and
will save tpot some time.

	J.F.
(This used to be commit 314b675ed9ebacba9db25938c43cfa304462ebe2)
2001-12-12 09:43:56 +00:00
Jean-François Micouleau
0ff1a9568b added info level 3 to samrgetgroupinfo. I don't know what the value is.
It's just to keep usermanager happy ;-)

clean up a bit samr_query_aliasinfo to return the group description

added: samr_del_aliasmem, samr_del_groupmem and samr_del_domuser

with the correct scripts, you can now entirely manage the users from
usermanager ! Closer to full PDC every day ;-)

        J.F.
(This used to be commit 0a727afc669704cda9b44d44dbac9e989e906ae3)
2001-12-10 15:03:16 +00:00
Tim Potter
4f53486d78 Added client and server code for the GetPrintProcessorDirectory SPOOLSS
rpc.  This was supposed to fix a printer driver download bug but it didn't
but it seemed a shame to trash all this code so I'm commiting it #ifdef'ed
out in case someone needs it one day.
(This used to be commit bef43656471741c6c10b12e7516c15de9ae76394)
2001-12-10 05:03:17 +00:00
Jean-François Micouleau
e0066d2dd4 again an intrusive patch:
- removed the ugly as hell sam_logon_in_ssb variable, I changed a bit the
definition of standard_sub_basic() to cope with that.

- removed the smb.conf: 'domain admin group' and 'domain guest group'
parameters ! We're not playing anymore with the user's group RIDs !

- in get_domain_user_groups(), if the user's gid is a group, put it first
in the group RID list.

I just have to write an HOWTO now ;-)

        J.F.
(This used to be commit fef52c4b96c987115fb1818c00c2352c67790e50)
2001-12-06 13:09:15 +00:00
Andrew Bartlett
8ba00d147b OK. Smbpasswd -j is DEAD.
This moves the rest of the functionality into the 'net rpc join' code.

Futhermore, this moves that entire area over to the libsmb codebase, rather
than the crufty old rpc_client stuff.

I have also fixed up the smbpasswd -a -m bug in the process.

We also have a new 'net rpc changetrustpw' that can be called from a
cron-job to regularly change the trust account password, for sites
that run winbind but not smbd.

With a little more work, we can kill rpc_client from smbd entirly!
(It is mostly the domain auth stuff - which I can rework - and the
spoolss stuff that sombody else will need to look over).

Andrew Bartlett
(This used to be commit 575897e879fc175ba702adf245384033342c903d)
2001-12-05 11:00:26 +00:00
Andrew Bartlett
d67041a532 Const religion for some of the RPC code.
(This used to be commit 64bf8f81c49744fc0653db655e457981f3bcbac2)
2001-12-05 00:22:24 +00:00
Jean-François Micouleau
cdf9b42754 added a tdb to store the account policy informations.
You can change them with either usermanager->policies->account
or from a command prompt on NT/W2K: net accounts /domain

we can add a rpc accounts to the net command. As the net_rpc.c is still
empty, I did not start. How should I add command to it ? Should I take the
rpcclient/cmd_xxx functions and call them from there ?

alse changed the SAM_UNK_INFO_3 parser, it's an NTTIME. This one is more
for jeremy ;-)

        J.F.
(This used to be commit bc28a8eebd9245ce3004ae4b1a359db51f77bf21)
2001-12-03 17:14:23 +00:00
Andrew Tridgell
b6b84cf709 const religion
(This used to be commit 359ca8f246c46b1700418fe0226458023f808d67)
2001-12-03 08:16:51 +00:00
Tim Potter
6d9adfe73c Renamed sid field in SEC_ACE to trustee to be more in line with MS's
definitions.
(This used to be commit 9712d3f15a47155f558d0034ef71fd06afb11301)
2001-11-30 01:04:15 +00:00
Jean-François Micouleau
fac01bda8b Changed again how the privilege list is handled in the group mapping code.
This time it's a PRIVILEGE_SET struct instead of a simple uint32 array. It
makes much more sense. Also added a uint32 systemaccount to the GROUP_MAP
struct as some privilege showing in USRMGR.EXE are not real privs but a
bitmask flag. I guess it's an heritage from NT 3.0 ! I could setup an NT
3.1 box to verify, but I'm too lazy (yes I still have my CDs).

Added 3 more LSA calls: SetSystemAccount, AddPrivileges and
RemovePrivileges, we can manage all this privilege from UserManager.

Time to change the NT_USER_TOKEN struct and add checks in all the rpc
functions. Fun, fun, fun.

        J.F.
(This used to be commit 3f0a9ef2b8c626cfa2878394bb7b642342342bf3)
2001-11-29 16:05:05 +00:00
Gerald Carter
bd8e916cb5 merge from APPLIANCE_HEAD
(This used to be commit c60aa6c06f376684b6d6d9a2c14305ca9f4657ef)
2001-11-28 21:51:11 +00:00
Herb Lewis
3a193f1597 add .po32 files to ignore list
(This used to be commit 5f625f2877fc5132be3030fc6ea9df4d59ecff05)
2001-11-28 19:49:43 +00:00
Jean-François Micouleau
e158c4123d added samr_set_domain_info and samr_unknown_2E.
We now get the full account policy window in usermanager, and the
framework to store all those values. I plan to add a TDB file to store
them.

oh, and found that the last value in a sam_unknown_info_12_inf struct is
an uint16 and not a uint32.

andrewb: you hardcoded the MAX_PASSWORD_AGE to 21 days. We can now turn it
to a value setable in usermanager.

        J.F.
(This used to be commit 99471d25693f6672d433b90a060378f6faad867f)
2001-11-28 00:06:00 +00:00
Andrew Bartlett
b47f6a4448 Fix ./configure --enable-developer warnings (shadow of global)
(This used to be commit 3f1cfb62e85343a45817651f111f01051fc66b18)
2001-11-25 02:08:43 +00:00
Jean-François Micouleau
ca477a61e7 added lsaenumprivsaccount and lsalookupprivvalue to rpcclient
and more to come ...

	J.F.
(This used to be commit 1748d5a2af1f2dcf718d6f162ed483b001542494)
2001-11-24 00:13:41 +00:00
Jean-François Micouleau
2527f5ef52 Changed how the privileges are stored in the group mapping code. It's now
an array of uint32. That's not perfect but that's better.

Added more privileges too.

Changed the local_lookup_rid/name functions in passdb.c to check if the
group is mapped. Makes the LSA rpc calls return correct groups

Corrected the return code in the LSA server code enum_sids.

Only enumerate well known aliases if they are mapped to real unix groups.
Won't confuse user seeing groups not available.

Added a short/long view to smbgroupedit.

now decoding rpc calls to add/remove privileges to sid.

        J.F.
(This used to be commit f29774e58973f421bfa163c45bfae201a140f28c)
2001-11-23 15:11:22 +00:00
Jean-François Micouleau
fbfd27a495 added lsa_enum_sids to rpcclient
fixed lsa_enum_rpivs server code. This time it works as W2K.
fixed smbgroupedit to compile and work.

	J.F.
(This used to be commit 646651018a2736833e49e76f6ca735a4647d9746)
2001-11-22 23:50:16 +00:00
Jean-François Micouleau
33e20222e0 add another command to rpcclient: getdispname. Show the full description
of a privilege.

	J.F.
(This used to be commit 84035ae72f422edadd9fa7e493c3d8176bb6a53d)
2001-11-22 16:54:48 +00:00
Jean-François Micouleau
2e8ae88785 add a command to rpcclient: enumprivs
J.F.
(This used to be commit fa63cb78e326040f68d858d593ba98e06c26c92e)
2001-11-22 16:12:43 +00:00
Gerald Carter
59b2e772e2 remove unused variables
(This used to be commit 90ed3d47e16a511161532f75b98db3f4b10ba685)
2001-11-22 06:44:05 +00:00
Gerald Carter
116740a5df merge from 2.2
(This used to be commit 96b3a65a73d403a41bf1b3aba79bd743698344ac)
2001-11-22 05:56:09 +00:00
Jean-François Micouleau
b03e162127 samr_querydom_info level 1: found the meaning of the unknow fields. And
discovered that our reply is short by 4 bytes since day 1 of this code.

Added a decode function to rpcclient too.

splitted the STRING2 fields filling while trying to understand the win9x
userlist bug. (didn't fix the bug, but the reply looks closer to NT).

        J.F.
(This used to be commit bfbe7f377e5fcb09e87bfc866196dfc51a8fe64d)
2001-11-21 23:25:30 +00:00
Jeremy Allison
02eda2e251 Tidyups when I was doing the big merge...
Jeremy.
(This used to be commit 9148bb9eaa67de60c3b0b4709a9c05a840c20c66)
2001-11-17 03:19:17 +00:00
Jeremy Allison
186726b7f8 Tidyups and things I discovered during the merge...
Jeremy.
(This used to be commit 9c8439f25b90d80adcd7161bfed3664af6256940)
2001-11-15 21:06:41 +00:00
Jeremy Allison
3a50f1fde7 No longer used.
Jeremy.
(This used to be commit be7323163bec9367e7457d7b6a4792fd00aa8ef5)
2001-11-15 20:28:38 +00:00
Martin Pool
ea40fa55f0 Doxygen demo for Tim.
(This used to be commit 5c892badbcad43b8a2e002d1a42483c402f2d3e9)
2001-11-15 06:03:22 +00:00
Martin Pool
fea97ecd7c spoolss_io_devmode private data is binary and should be shown in hex,
not ascii.
(This used to be commit be5d32eb9c58bb1911299d095efcf230d50ed590)
2001-11-08 03:12:22 +00:00
Tim Potter
7623cec4ad Wrote some stubs for new win2k only spoolss rpc commands:
GetPrinterDataEx() and SetPrinterDataEx().  Not sure what the command
number is for the latter is - I haven't seen it on the wire yet.
(This used to be commit 87614c74b3d66cf2ca706b33e6cf0a32b4166e7a)
2001-11-05 06:15:02 +00:00
Andrew Tridgell
c3f21fc360 get the string lengths right in domain logons
Andrew, this fixes domain logons in head. Please look at the change,
as I think you may have misunderstood the max_str_len field (which is
badly named)
(This used to be commit fd3a657b440a61c0c146947bb62d2b83c1689b87)
2001-11-04 18:13:33 +00:00
Andrew Bartlett
acb81fe408 Various post AuthRewrite cleanups, fixups and tidyups.
Zero out some of the plaintext passwords for paranoia

Fix up some of the other passdb backends with the change to *uid_t rather than
uid_t.

Make some of the code in srv_netlog_nt.c clearer, is passing an array around,
so pass its lenght in is definition, not as a seperate paramater.

Use sizeof() rather than magic numbers, it makes things easier to read.

Cope with a PAM authenticated user who is not in /etc/passwd - currently by
saying NO_SUCH_USER, but this can change in future.

Andrew Bartlett
(This used to be commit 514c91b16baca639bb04638042bf9894d881172a)
2001-11-01 05:02:41 +00:00
Andrew Bartlett
60f0627afb This is a farily large patch (3300 lines) and reworks most of the AuthRewrite
code.

In particular this assists tpot in some of his work, becouse it provides the
connection between the authenticaion and the vuid generation.

Major Changes:
	- Fully malloc'ed structures.
	  - Massive rework of the code so that all structures are made and destroyed
	    using malloc and free, rather than hanging around on the stack.
	- SAM_ACCOUNT unix uids and gids are now pointers to the same, to allow them
	   to be declared 'invalid' without the chance that people might get ROOT by
	   default.

	- kill off some of the "DOMAIN\user" lookups.  These can be readded at a more
	  appropriate place (probably domain_client_validate.c) in the future. They
	  don't belong in session setups.

	- Massive introduction of DATA_BLOB structures, particularly for passwords.

	- Use NTLMSSP flags to tell the backend what its getting, rather than magic
	  lenghths.

	- Fix winbind back up again, but tpot is redoing this soon anyway.

	- Abstract much of the work in srv_netlog_nt back into auth helper functions.

This is a LARGE change, and any assistance is testing it is appriciated.

Domain logons are still broken (as far as I can tell) but other functionality
seems
intact.

Needs testing with a wide variety of MS clients.

Andrew Bartlett
(This used to be commit f70fb819b2f57bd57232b51808345e2319d52f6c)
2001-10-31 10:46:25 +00:00
Tim Potter
eab05eac39 This one's a doozy. A cut&paste bug incorrectly sets the max string length
of the lm challenge/response header in the NET_ID_INFO_2 structure included
in a network logon request.  It seems Windows 2000 is the only OS that
cares about this.
(This used to be commit 0f6207f45567a8af0a125a838a5ed68ea6c22283)
2001-10-31 04:55:43 +00:00
Tim Potter
560c0c92ad Removed confusing comment.
(This used to be commit b496936634a4b676aa2df973e64c91aa0da5d7d5)
2001-10-30 05:29:37 +00:00
Andrew Bartlett
d9d7f023d8 This commit is number 4 of 4.
In particular this commit focuses on:

Actually adding the 'const' to the passdb interface, and the flow-on changes.

Also kill off the 'disp_info' stuff, as its no longer used.

While these changes have been mildly tested, and are pretty small, any
assistance in this is appreciated.

----

These changes introduces a large dose of 'const' to the Samba tree.
There are a number of good reasons to do this:

	- I want to allow the SAM_ACCOUNT structure to move from wasteful
	pstrings and fstrings to  allocated strings.  We can't do that if
	people are modifying these outputs, as they may well make
	assumptions about getting pstrings and fstrings

	- I want --with-pam_smbpass to compile with a slightly sane
	volume of warnings, currently its  pretty bad, even in 2.2
	where is compiles at all.

	- Tridge assures me that he no longer opposes 'const religion'
	based on the ability to  #define const the problem away.

	- Changed Get_Pwnam(x,y) into two variants (so that the const
	parameter can work correctly): - Get_Pwnam(const x) and
	Get_Pwnam_Modify(x).

	- Reworked smbd/chgpasswd.c to work with these mods, passing
	around a 'struct passwd' rather  than the modified username

---

This finishes this line of commits off, your tree should now compile again :-)

Andrew Bartlett
(This used to be commit c95f5aeb9327347674589ae313b75bee3bf8e317)
2001-10-29 07:35:11 +00:00
Jeremy Allison
cb4b13a82b Fixed the bug with member servers in a Samba PDC hosted domain not allowing
other access. Problem was max time was being set to 0xffffffff, instead of
0x7fffffff.
Jeremy.
(This used to be commit 94403d841710391ec26539e4b4157439d5778ff7)
2001-10-02 06:57:18 +00:00
Tim Potter
dc1fc3ee8e Removed 'extern int DEBUGLEVEL' as it is now in the smb.h header.
(This used to be commit 2d0922b0eabfdc0aaf1d0797482fef47ed7fde8e)
2001-10-02 04:29:50 +00:00
Andrew Bartlett
81ad252fbc These are RIDs not Unix UIDs so make this clear in the feild names.
Andrew Bartlett
(This used to be commit d1bc778301b31d77fdc3837ec3cff24ce37adcd7)
2001-09-22 03:44:15 +00:00
Simo Sorce
e7db47bffb move to SAFE_FREE()
(This used to be commit 94b0fde8a8a4e888cee93ebde79390c7942a2785)
2001-09-17 10:00:29 +00:00
Tim Potter
504eff41b3 Merge prs_hash1() function from tng.
(This used to be commit 3245714243d15160b9e0e27c413fef65ea91f455)
2001-09-14 04:36:19 +00:00
Tim Potter
c849bd3196 Decode 68-byte password blocks using sam replication password key (which
is actually the user session key).
(This used to be commit 0f041597f8afa378fc3177264f1e52e014e6cf00)
2001-09-14 04:35:48 +00:00
Andrew Tridgell
39d7983a47 - enable MSDFS by default, there seems no reason not to have it enabled
by default in Samba 3.x

- got rid of some unused parameters in Makefile.in

- declare DEBUGLEVEL in debug.h rather than in each file
(This used to be commit b8651acb9c0d7248a6a2e82c33b1e43633fd83fd)
2001-09-12 03:08:51 +00:00
Andrew Tridgell
c76dd14040 it now all compiles - so try enabling it by default and see what explodes on the build farm
(This used to be commit 5bb7e4f0f65edf1db20245f403cbe81833134240)
2001-09-04 10:57:29 +00:00
Tim Potter
8c569f70ee Welcome to tpot's exploit world!
- put in checks for return values in rpc parsing routines

- replace a bunch of stupid &(foo->bar) with &foo->bar

- fixed bug in net_io_sam_alias_mem_info where there are zero members in
the alias
(This used to be commit eecdba2b015ed48d7dd88daea2af466f28cd2ff7)
2001-09-04 07:24:13 +00:00
Andrew Tridgell
19fea3242c the next stage in the NTSTATUS/WERROR change. smbd and nmbd now compile, but the client code still needs some work
(This used to be commit dcd6e735f709a9231860ceb9682db40ff26c9a66)
2001-09-04 07:13:01 +00:00
Andrew Bartlett
b4ed8c8365 Fix up some compile issues. We can't have C99 comments and add a smattering
of const.
(This used to be commit af53e774d754d72b01d9840e8b45d27bc394e33d)
2001-08-31 03:38:48 +00:00
Tim Potter
d5c9172ada Merge of sam sync code from TNG.
Reverse-engineered the sam replication protocol from staring at hex dumps
for a while.  It's pretty similar to the sam sync protocol with a couple of
different delta header types.

I wasn't able to figure out the format of the privilege stuff - needs more
time and a whiteboard.  (-:

The impressive bit is that the sam sync stuff from tng basically just
worked thanks mainly to Luke Leighton's efforts in this area.
(This used to be commit 3a60cb44f22d5f3f8c78a56ed8f5ea4794cd7ab3)
2001-08-28 06:43:43 +00:00