1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-23 09:57:40 +03:00

7698 Commits

Author SHA1 Message Date
Tim Potter
703d06fee0 Removed unused variables. -
Andrew Tridgell
bcd234a3da added 'wbinfo --sequence' to show sequence numbers of all domains -
Tim Potter
3cd97d65de Added administrator access check for server side add, delete and setform
rpcs.  The only one I have been able to verify is addform - can't get the
client side routines working properly yet.  )-:
-
Tim Potter
1803778451 Added make functions for SPOOL_Q_{ADD,SET,DELETE}FORM.
I'm pretty sure that the useless_ptr in spoolss_io_q_setform() needs to be
initialised to 1 otherwise the form isn't marshalled at all.  JF, can you
verify this?  If so then this probably applies to the io functions for
setform and deleteform.
-
Andrew Bartlett
f3f375dc6b Initialise some SAM_ACCOUNT structs to NULL, and add some more error checking.
Andrew Bartlett
-
Tim Potter
a7e67dc00a Added addform, setform and deleteform cli functions. -
Tim Potter
825b5c8bd6 Added addform, setform and deleteform commands. The only one I could get
to actually work was addform.  )-:

Removed a whole bunch of calls to werror_to_ntstatus() because there isn't
a one-to-one mapping of NTSTATUS values to WERROR values.  This function
maps WERR_ACCESS_DENIED to NTSTATUS_INVALID_LOCK_SEQUENCE or something
silly like that.
-
Tim Potter
2c906ff77d Added some constants for the flags field in the FORM_1 structure.
The level2 field in SPOOL_Q_ADDFORM is probably part of the FORM structure
as a discriminated union.
-
Tim Potter
e4c13c51fa Added constant for WERR_FILE_EXISTS. -
Andrew Tridgell
9930cf9733 this fixes the problem of not being able to add a SD to a file on a
non-domain Samba server from a NT4 client.

Note that this exactly reverses a change by Jeremy on the 18th of
December 2001, reverting the code back to what JF originally wrote. I
have looked carefully with a sniffer and JFs original NULL sid is
correct (ie. it matches what NT4 does) and also fixes the problem.

Sending a blank sid (which is what jeremy's patch did) causes NT4 to
give a classic "parameter is incorrect error" and prevents the
addition of new ACLs.
-
Samba Release Account
6f977036ad preparing for release of 3.0-alpha14 -
Andrew Bartlett
86d5326d0d Back out herb's changes (to allow smbpasswd -x to work on accounts outside
/etc/passwd) and replace them with a version that works.  Unfortunetly HEAD and
2.2 have different passdb interfaces and different local_password_change
functions...

Andrew Bartlett
-
Andrew Bartlett
3a413ef1ea An attempt at producing the correct Makefile magic for wrepld_proto.h to be
automatically generated on first 'make'.  This wasn't being picked up by the
build farm becouse of the explicit 'make proto'.

The 'make proto' bit isn't somthing our alpha testers know about (its certainly
not clearly documented) and its meant to be automatic.

I hope this works...

Andrew Bartlett
-
Tim Potter
ab049355af Addd wrepld (what a cool name!) -
Tim Potter
1b9b4e46d2 Added wrepld_proto.h -
Tim Potter
6a58c9bd06 Removed version number from file header.
Changed "SMB/Netbios" to "SMB/CIFS" in file header.
-
Tim Potter
78013c0ecc Unused file. -
Gerald Carter
69a9c005c2 merge from 2.2 -
Herb Lewis
539b025397 merge change from @_2 to allow smbpasswd -x to delete user even if no
entry in /etc/passwd.

There are still differences in the local_password_change function. I'm
not sure which was the latest so I didn't change any thing else. Someone
needs to take a look and sync these up.
-
Tim Potter
418bdd5919 Fix for password change from Samuel Ziegler <sam@xpedion.com> -
Tim Potter
b5540bee7b Removed silly fprintf(stderr, ...) debug.
Part of Samuel Ziegler's patch to get winbind password changing working
again in HEAD.
-
Martin Pool
91e8cb7662 Doc. -
Jeremy Allison
48fc42c710 Fix "strict allocate" to write the data out on ftruncate with extend.
Jeremy.
-
Tim Potter
3c887d9021 Since we have dynamic initialisation in the group mapping code, make
init_group_mapping() a static function and don't call it from any client
programs.

Not sure whether I've made a bigger mess here or not...
-
Gerald Carter
7235a21ca4 make all-docs to make sure everything is up-to-date -
Andrew Bartlett
9d62f25f5d Name another talloc. -
Simo Sorce
a034bfb9ef minor fix and checks -
Andrew Bartlett
f1d8d50976 Some more 'winbind default domain' support patches from Alexander Bokovoy
<a.bokovoy@sam-solutions.net>.

This patch is designed to remove the 'special cases' required for this support.

In particular this now kills off winbind_initgroups, as it appears no longer to
be required.

Andrew Bartlett
-
Andrew Bartlett
8cac618174 Yes, dev is an 'input/output' paramater...
Andrew Bartlett
-
Andrew Bartlett
cd6a2dad4e Patch from Kevin Stefanik <kstef@mtppi.org> to do some more error checking for
group mapping init failures.
-
Gerald Carter
55c53ef089 merge from 2.2 and regenerate -
Andrew Bartlett
e40a0a7f27 Give pdbedit a -D paramater for setting the DEBUGLEVEL (makes debugging passdb
much saner :-).

Change to pdb_init_sam()/pdb_free_sam() loop rather than reset based due to
the talloc basis.

Andrew Bartlett
-
Gerald Carter
e3b87ffc8c merge from APPLIANCE_HEAD -
Andrew Bartlett
25cadce67b - Provide sid->name lookup support for non-unix accounts.
- Rework the name -> sid lookup function to always try local lookup first (for
local domain names) before trying winbind.  This seems to eliminate my winbind
feedback loop problems.  (I don't use winbind for nsswitch, where there are
almost certainly further issues).

Andrew Bartlett
-
Andrew Bartlett
5dfba2cf53 Back out some of the less well thought out ideas from last weeks work on
winbind default domains, particulary now I understand whats going on a lot
better.  This ensures that the RPC client code does as little 'magic' as
possible - this is up to the application/user.  (Where - for to name->sid code
- it was all along).  This leaves the change that allows the sid->name code to
return domains and usernames in seperate paramaters.

Andrew Bartlett
-
Andrew Bartlett
151dd7bc6c Bring this code into line with new winbind_lookup_name() interface. I think
this might need a bit more work - or at least documentation.

This is certainly a worthwile little hack, as it avoids the need to invert the
group database.  I don't think we should allow unqualified domains here - as
that allows us to distinguish between (at least some) usernames and these
'special' groups.
-
Andrew Bartlett
c84fa7f5fd Make a talloc'ed copy of this strings so we can pass the right kind of pointer
to the function.  This fixes a nice little segfault the brute-force-casting
created. :-)

Andrew Bartlett
-
Andrew Bartlett
3e71521957 Rework lookup_name() to take seperate username/domain args, and to remove
varioius crazy 'if winbind didn't find it' cases.  This makes winbind default
domain support easier to intergrate with smbd.
-
Andrew Bartlett
e7b3d64f60 Add the become_root()/unbecome_root() wrapper around the lookup_name() call,
and its new args.
-
Andrew Bartlett
6e7667125d Move the lsa code across to the changed args for lookup_name, and surround it
in become_root()/unbecome_root().

Also only allocate the memory the client reqests - and don't allow the client
to trigger an SMB_ASSERT if they ask for 'more'.

Up the maximum number of sids allowed, and note that this is an arbiary guess,
and can be raised without consequence.

Andrew Bartlett
-
Andrew Bartlett
100d2705dd We may as well not use these temporary variables - they are only used once and
just make it harder to debug (gcc stips optomises them away).
-
Andrew Bartlett
d1ea20cc23 local_lookup_name() doens't acutally use its 'domain' argument, so drop it and
make its use clearer.
-
Andrew Bartlett
ce1b4d4c30 Change the winbind interface to use seperate 'domain' and 'username' feilds for
the sid->uid and uid->sid conversions.

Remove some duplicate arguments from these funcitons, and update the
request/response structures for this and the 'winbind domain name' feature.

As such 'winbindd_lookup_name' now takes both a domain and username.
-
Andrew Bartlett
85018fecfa Allow a winbind client to obtain the server's domain name. -
Andrew Bartlett
a41fe2f6c8 Remove the 'direct to winbind' hacks, as they should (if I understand
correctly) be no longer needed.  This is in aid of the 'winbind default domain'
code - which works much better when smbd always goes via the standard unix
interfaces.

Andrew Bartlett
-
Andrew Bartlett
e72e511935 This always points at a string literal, so it probably should be 'const'. -
Andrew Bartlett
554842e0a5 Fix up a security issue with the way we handle domain groups retuned on the
info3.  These are RIDs, and it only makes sense to combine them with the domain
SID returned with them.  This is important for trusted domains, where that sid
might be other than the one we currently reterive from the secrets.tdb.

Also remove the become_root()/unbecome_root() wrapper from around both
remaining TDB users:  Both are now initialised at smbd startup.

Andrew Bartlett
-
Andrew Bartlett
8ffc024ebc fix typo -
Andrew Bartlett
168c712bf3 The new plugable password backend system needs to be initialised after
lp_load().

Andrew Bartlett
-
Andrew Bartlett
5fe1ea7f11 These changes commited on a 'no less broken' basis.
The previous code attempted to call winbind to find out the domain sid.  This
couldn't work for a number of reasons - not the least of which was that both
the client and server ends would reject any name (in this case domain name)
without a \ in it (or lp_winbind_seperator()).

I think this is what was intended to occour.  If there is still some need to
contact winbind for this information, I suggest a new call be created for this
- as it the server-side code doesn't allow for this information to be extracted
easily in any case.

Finally, it gets in the way of the default domain code a bit - hence why I was
actually looking at it...

Andrew Bartlett
-