1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-04 17:47:26 +03:00

1049 Commits

Author SHA1 Message Date
Jeremy Allison
9a38c05154 r15884: Fix bug #3803 from jason@ncac.gwu.edu - bad comparison.
Jeremy.
(This used to be commit 1d9dbe3b662ea757224ca4d8c991ae73bb92ae8d)
2007-10-10 11:17:11 -05:00
Günther Deschner
347990dc87 r15453: Process all the supported info levels in the samr_query_domain_info2
call.

Guenther
(This used to be commit 9b0731b2a9b45153356f9f7fad384a02028a8bd3)
2007-10-10 11:16:48 -05:00
Günther Deschner
c5e2804762 r15452: Again purely cosmetic reformat of the samr query domain info calls.
Guenther
(This used to be commit 6ed7d7fa70e3f750f921192c0f75594d608875b7)
2007-10-10 11:16:47 -05:00
Günther Deschner
b857785c0e r15443: Purely cosmetic reformat, no functional changes.
Guenther
(This used to be commit ef40428d935831bdb19111c933d20e381647f6f8)
2007-10-10 11:16:45 -05:00
Günther Deschner
0fe21ac560 r15442: Add some more client rpc for the querydominfo calls (from samba4 idl).
Also return the hostname for the level 6 call (to be consistent with the
server name in level 2).

Guenther
(This used to be commit 41b72e77ae70c96de4659af6b4b6bd842dd67981)
2007-10-10 11:16:44 -05:00
Günther Deschner
46c35b17a3 r15441: cleanup older unused padding.
Guenther
(This used to be commit 6e225e0528604c797a953eb8d3b49a873b21584f)
2007-10-10 11:16:44 -05:00
Günther Deschner
52e778e6f8 r15438: Fix samrQueryDomainInfo level 5 where we returned our netbios
name eversince instead of the domain name when we are a DC.

Yes, there are applications relying on this call to be correct.

Guenther
(This used to be commit 26dd22c9af8caf3db236984e4683ba210376ca59)
2007-10-10 11:16:43 -05:00
Günther Deschner
655b04e4f8 r15041: Adding rpc client calls to manipulate auditing policies on remote CIFS
servers. Also add a new "net rpc audit" tool. The lsa query infolevels
were taken from samb4 IDL, the lsa policy flags and categories are
partly documented on msdn. I need to cleanup the double
lsa_query_info_policy{2}{_new} calls next.

Guenther
(This used to be commit 0fed66926f4b72444abfc8ffb8c46cca8d0600aa)
2007-10-10 11:15:59 -05:00
Jeremy Allison
15ebf2cd29 r14829: Fix reversed test in coverity fixes.
Jeremy.
(This used to be commit f1b4e870a52cbd7bb780b206e943987648523060)
2007-10-10 11:15:49 -05:00
Jeremy Allison
ba49732bcf r14778: Fix coverity null deref bugs #268 - #271.
Jeremy.
(This used to be commit 0a1ccfefcf27c5970b82bf8a451bcdaa4fee1bd0)
2007-10-10 11:15:48 -05:00
Jeremy Allison
f6a1f71719 r14776: Fix coverity #263 - #267. No one was checking talloc
returns. Doh !
Jeremy.
(This used to be commit 68097e0fbb8f232573a2f7eae3da3a0c9873fbc5)
2007-10-10 11:15:47 -05:00
Jeremy Allison
4d9ad70060 r14774: Fix null deref coverity bugs #260, #261, #262.
Jeremy.
(This used to be commit 46e575af17cefb0ce7a1fdfacf29f90ae36fa72e)
2007-10-10 11:15:47 -05:00
Jeremy Allison
b98703ccaa r14772: Fix coverity bug #258. Seems coverity has discovered talloc :-).
Jeremy.
(This used to be commit 488b7725168971e6e59f3a2a7476ce82df43579b)
2007-10-10 11:15:47 -05:00
Jeremy Allison
621f91c693 r14770: Fix coverity bug #257. Possible null deref.
Jeremy.
(This used to be commit 4c126ef65dd07352ab936fff774c7435723f5395)
2007-10-10 11:15:47 -05:00
Günther Deschner
20204ab040 r14646: Adding samr querygroup infolevels 2 & 5.
Guenther
(This used to be commit 6c4fe819c69f281915ad0f4c3bde4dfb194aa33a)
2007-10-10 11:15:42 -05:00
Günther Deschner
6e17934ee6 r14643: Merge dcerpc_errstr from Samba 4.
Might need to rework prs_dcerpc_status().

Guenther
(This used to be commit 38b18f428ba941f4d9a14fa2de45cb0cd793a754)
2007-10-10 11:15:41 -05:00
Gerald Carter
1839b4be14 r14634: Many bug fixes thanks to train rides and overnight stays in airports
* Finally fix parsing idmap uid/gid ranges not to break with spaces
  surrounding the '-'
* Allow local groups to renamed by adding info level 2 to
  _samr_set_aliasinfo()
* Fix parsing bug in _samr_del_dom_alias() reply
* Prevent root from being deleted via Samba
* Prevent builting groups from being renamed or deleted
* Fix bug in pdb_tdb that broke renaming user accounts
* Make sure winbindd is running when trying to create the Administrators
  and Users BUILTIN groups automatically from smbd (and not just check the
  winbind nexted groups parameter value).
* Have the top level rid allocator verify that the RID it is about to
  grant is not already assigned in our own SAM (retries up to 250 times).
  This fixes passdb with existing SIDs assigned to users from the RID algorithm
  but not monotonically allocating the RIDs from passdb.
(This used to be commit db1162241f79c2af8afb7d8c26e8ed1c4a4b476f)
2007-10-10 11:15:41 -05:00
Jeremy Allison
e6676a9a69 r14387: Try and fix the coverity issues (#53, #54) with negative
sink by ensuring all uses of rpcstr_push are consistent
with a size_t dest size arg.
Jeremy.
(This used to be commit f65d7afe1977d9d85046732842f9643716c15088)
2007-10-10 11:15:27 -05:00
Volker Lendecke
659eb9b71f r14298: The other half of Coverity # 217
(This used to be commit b9fb3fc0e3708b4721aaa1dcb7756d3774fb8db8)
2007-10-10 11:15:24 -05:00
Volker Lendecke
f5fe12d71c r14232: Fix Coverity Bug # 218
(This used to be commit 932d769a32748695cfff4c761422feb2ef15acbb)
2007-10-10 11:15:18 -05:00
Volker Lendecke
79af0b91e0 r14228: Fix Coverity bug # 217
(This used to be commit 680bd1b004f26b5a0449114911c85ca587038147)
2007-10-10 11:15:18 -05:00
Jeremy Allison
e4c733f4ce r14219: Fix coverity #135. Don't deref a ptr if it can be NULL.
Jeremy.
(This used to be commit 666d427c6e10aa4194348e8acc3997682f090b48)
2007-10-10 11:15:17 -05:00
Günther Deschner
c34e73cfcf r14146: Just some typos.
Guenther
(This used to be commit ade86cc787e266850fee982b008a9caf2c8ed7e7)
2007-10-10 11:15:13 -05:00
Volker Lendecke
2a7601fcb4 r14134: Fix Coverity bug # 137
(This used to be commit 62e58d939bf3abf71bb19aade57d406e07403bc8)
2007-10-10 11:15:13 -05:00
Jeremy Allison
b19d871a1a r14115: Fix coverity bug #23. Don't deref a potentially null ptr.
Jeremy.
(This used to be commit df32eb70a45150e459997c2ae92c865cd0e083f6)
2007-10-10 11:11:13 -05:00
Jeremy Allison
aa3cab954e r14092: Fix coverity bug #22. Ensure no possible null
deref.
Jeremy.
(This used to be commit 0026fb0b2843271c27e9dc02a32e88d580bebbc3)
2007-10-10 11:11:11 -05:00
Jeremy Allison
d12fd8dcb7 r14090: Fix coverity bug #21, don't deref potential null.
Jeremy.
(This used to be commit 76c4d5212bcb5f54472c9ceac2368078ebad7a3b)
2007-10-10 11:11:11 -05:00
Jeremy Allison
a9d1af9d31 r14083: Fix coverity bug #19. Don't deref possible NULL.
Jeremy.
(This used to be commit fc8e1e5c02dd950ed1f8656a5d7ab47fa7ec1ea7)
2007-10-10 11:11:11 -05:00
Jeremy Allison
d785b61a16 r14080: Fix Coverity bug #18. Ensure non-null before ref.
Jeremy.
(This used to be commit 617c5805e59dd601b8841251032e3db4d6a64621)
2007-10-10 11:11:10 -05:00
Günther Deschner
fc5a7fe064 r14061: Some debugging for the new LOGON/ACB-flags.
Guenther
(This used to be commit 7616317f9f45dfbc453a7687e8b8b6ff57ddb0a3)
2007-10-10 11:11:09 -05:00
Jeremy Allison
b05af76541 r14047: Coverity fix #17. Ensure srv_name and info cannot
be zero before deref.
Jeremy.
(This used to be commit fbf9db6624d9584a26ae302df3c76555bbd2bb1e)
2007-10-10 11:11:08 -05:00
Jeremy Allison
d8ba987bfe r14045: Coverity fix #14. Ensure if len is set buf != NULL.
Jeremy.
(This used to be commit fb1a6073321840fecf22f3e0f7541f5ad87f5e49)
2007-10-10 11:11:07 -05:00
Jeremy Allison
8d1dd8bb96 r14043: After discussion with Jerry revert part of the
Coverity null-ref patch - put prs_rpcbuffer_p
back to the way it was (with an additional
coverity paranoia check) - move the real test
into rpcbuf_alloc_size instead.
Jeremy.
(This used to be commit f74993e65c01bc0ef73d3e8710bb2f840910161a)
2007-10-10 11:11:07 -05:00
Volker Lendecke
874a9d02de r14025: Remove unused code. When we want to export samsync, we better first port
pidl...

Fix Coverity # 15.

Volker
(This used to be commit 29b4b986cc225a98d263c883fd52e8b210099b9e)
2007-10-10 11:11:06 -05:00
Jeremy Allison
a3586ff60c r14014: Coverity paranoia. Shut it up by making the guarentee
in the code explicit - but this was a false positive (CID #16).
Jeremy.
(This used to be commit 43a0e869f2aee9b4e22d0d7fc92051e82f7536ad)
2007-10-10 11:11:05 -05:00
Jeremy Allison
cd49e2546e r13989: Fix for Coverity bug #45 and associated spoolss RPC_BUFFER
problems. Ensure that if the parse succeeds on UNMARSHALL
we have a valid (although possibly empty) RPC_BUFFER returned.
Jeremy.
(This used to be commit d319cc9c08bfa865a6431a8631a9c609f589be1f)
2007-10-10 11:11:03 -05:00
Jeremy Allison
894358a8f3 r13915: Fixed a very interesting class of realloc() bugs found by Coverity.
realloc can return NULL in one of two cases - (1) the realloc failed,
(2) realloc succeeded but the new size requested was zero, in which
case this is identical to a free() call.

The error paths dealing with these two cases should be different,
but mostly weren't. Secondly the standard idiom for dealing with
realloc when you know the new size is non-zero is the following :

 tmp = realloc(p, size);
 if (!tmp) {
    SAFE_FREE(p);
    return error;
 } else {
    p = tmp;
 }

However, there were *many* *many* places in Samba where we were
using the old (broken) idiom of :

 p = realloc(p, size)
 if (!p) {
    return error;
 }

which will leak the memory pointed to by p on realloc fail.

This commit (hopefully) fixes all these cases by moving to
a standard idiom of :

 p = SMB_REALLOC(p, size)
 if (!p) {
    return error;
 }

Where if the realloc returns null due to the realloc failing
or size == 0 we *guarentee* that the storage pointed to by p
has been freed. This allows me to remove a lot of code that
was dealing with the standard (more verbose) method that required
a tmp pointer. This is almost always what you want. When a
realloc fails you never usually want the old memory, you
want to free it and get into your error processing asap.

For the 11 remaining cases where we really do need to keep the
old pointer I have invented the new macro SMB_REALLOC_KEEP_OLD_ON_ERROR,
which can be used as follows :

 tmp = SMB_REALLOC_KEEP_OLD_ON_ERROR(p, size);
 if (!tmp) {
    SAFE_FREE(p);
    return error;
 } else {
    p = tmp;
 }

SMB_REALLOC_KEEP_OLD_ON_ERROR guarentees never to free the
pointer p, even on size == 0 or realloc fail. All this is
done by a hidden extra argument to Realloc(), BOOL free_old_on_error
which is set appropriately by the SMB_REALLOC and SMB_REALLOC_KEEP_OLD_ON_ERROR
macros (and their array counterparts).

It remains to be seen what this will do to our Coverity bug count :-).

Jeremy.
(This used to be commit 1d710d06a214f3f1740e80e0bffd6aab44aac2b0)
2007-10-10 11:10:59 -05:00
Gerald Carter
129fd6c5c6 r13878: move PORT_DATA_1 to use static sized UNICODE strings as per MSDN
(This used to be commit c803e1b2afdfc5bd983f046c976c01adebcfa1ad)
2007-10-10 11:10:57 -05:00
Günther Deschner
9f2e29799e r13864: Some cleanup and the samr set security object function client-side.
Guenther
(This used to be commit 0ae3fddf95a95ec8a2f4d52e1276c1721b33ddfd)
2007-10-10 11:10:57 -05:00
Volker Lendecke
a787e2d124 r13841: Fix an uninitialized variable warning.
Jerry, this just fixes the warning. This routine does not seem to cope well
with !UNMARSHALLING. You might want to look...

Volker
(This used to be commit 2c0c40dfb5da9e901e099295f43032a745e71253)
2007-10-10 11:10:56 -05:00
Gerald Carter
5df58c38f3 r13829: From the "It's not pretty but it works" category
* Finish prototype of the "add port command" implementation
  Format is "addportcommand portname deviceURI"

* DeviceURI is either
  - socket://hostname:port/
  - lpr://hostname/queue
  depending on what the client sent in the request
(This used to be commit 6d74de7a676b71e83a3c3714743e6380c04e4425)
2007-10-10 11:10:56 -05:00
Gerald Carter
889ff32b5e r13824: * add api table for Xcv TCPMON and LOCALMON calls starting
with the "MonitorUI" call
* Fix some parsing errors

This gets us to the Add Port Wizard dialog.
(This used to be commit a444aa7f0088fb71ff89df8c280209188b33ec3d)
2007-10-10 11:10:56 -05:00
Gerald Carter
e33b728c7b r13815: "Into the blind world let us now descend,"
Began the poet, his face as pale as death.
"I will go first, and you will follow me."
---

Adding XcvDataPort() to the spoolss code for remotely
add ports.  The design is to allow an intuitive means
of creating a new CUPS print queue from the Windows 2000/XP
APW without hacks like specifying the deviceURI in the
location field of the printer properties dialog.

Also set 'default devmode = yes' as the new default
since it causes no harm and only is executed when you
have a NULL devmode anyways.
(This used to be commit 123e478ce5b5f63a61d00197332b847e83722468)
2007-10-10 11:10:55 -05:00
Jeremy Allison
a7552e677e r13802: I *knew* ASU on sparc had to be good for *something* ! :-).
Fix incorrect size understanding of sid name type (yes it's
already correct in the Samba4 IDL :-).
Jeremy.
(This used to be commit 305a774d2880a57d1ebdf2ecf2d7e0b519695a33)
2007-10-10 11:10:54 -05:00
Günther Deschner
e54786b535 r13711: * Correctly handle acb_info/acct_flags as uint32 not as uint16.
* Fix a couple of related parsing issues.
* in the info3 reply in a samlogon, return the ACB-flags (instead of
  returning zero)

Guenther
(This used to be commit 5b89e8bc24f0fdc8b52d5c9e849aba723df34ea7)
2007-10-10 11:10:25 -05:00
Jeremy Allison
115996503c r13585: Sorry Gunther, had to revert this. It's got a buffer
overrun. Spoke to Jerry about the correct fix. Will add
this after.
Jeremy.
(This used to be commit 33e13aabd3825c59d15dc897536e2ccf8c8f6d5e)
2007-10-10 11:10:16 -05:00
Günther Deschner
4ea92f3098 r13581: Correctly parse a non-null terminated, little-endian UCS2 string in the
PAC_LOGON_NAME structure. This was broken on big-endian machines
(Solaris SPARC and ppc). Fixes Bug #3330.

Jerry, this should be in 3.0.21c.

Guenther
(This used to be commit 9732490811f8f02ee547ddc6e2694e1122a3a518)
2007-10-10 11:10:16 -05:00
Gerald Carter
2203bed32c r13576: This is the beginnings of moving the SAM_ACCOUNT data structure
to make full use of the new talloc() interface.  Discussed with Volker
and Jeremy.

* remove the internal mem_ctx and simply use the talloc()
  structure as the context.
* replace the internal free_fn() with a talloc_destructor() function
* remove the unnecessary private nested structure
* rename SAM_ACCOUNT to 'struct samu' to indicate the current an
  upcoming changes.  Groups will most likely be replaced with a
  'struct samg' in the future.

Note that there are now passbd API changes.  And for the most
part, the wrapper functions remain the same.

While this code has been tested on tdb and ldap based Samba PDC's
as well as Samba member servers, there are probably still
some bugs.  The code also needs more testing under valgrind to
ensure it's not leaking memory.

But it's a start......
(This used to be commit 19b7593972480540283c5bf02c02e5ecd8d2c3f0)
2007-10-10 11:10:15 -05:00
Gerald Carter
fb5362c069 r13571: Replace all calls to talloc_free() with thye TALLOC_FREE()
macro which sets the freed pointer to NULL.
(This used to be commit b65be8874a2efe5a4b167448960a4fcf6bd995e2)
2007-10-10 11:10:14 -05:00
Günther Deschner
6a6f2463f6 r13522: Add SAMR_GET_USRDOM_PWINFO client-side.
Guenther
(This used to be commit 290a581b7567eab82b18fbadae9aa2ab29e95069)
2007-10-10 11:10:09 -05:00