diff options
author | Matthew Chapman <matty@samba.org> | 1999-02-24 01:52:30 +0000 |
---|---|---|
committer | Matthew Chapman <matty@samba.org> | 1999-02-24 01:52:30 +0000 |
commit | 05f772b431f9c77a2fb37736fc4f801d84cac365 (patch) | |
tree | 12722ff39b9a869d85beb4aa228192c2a1fe110f /source3/smbd/ipc.c | |
parent | 1e71ecdcb21f24e70ee5edbbc05de0284fa588f4 (diff) | |
download | samba-05f772b431f9c77a2fb37736fc4f801d84cac365.tar.gz samba-05f772b431f9c77a2fb37736fc4f801d84cac365.tar.xz samba-05f772b431f9c77a2fb37736fc4f801d84cac365.zip |
Win9x user level security.
* Added SAMR_LOOKUP_DOMAIN (-> SamrLookupDomainInSamServer)
* Added real SAMR_ENUM_DOM_GROUPS (corresponding to
SamrEnumerateGroupsInDomain). The existing one is just an alias for
SamrQueryDisplayInformation (see below).
* Added three extra info levels to SAMR_QUERY_DISPINFO. Info level 3 is
what was previously SAMR_ENUM_DOM_GROUPS; info levels 4 and 5 are
simple user/group list requests used by Win9x and I suspect (haven't
checked) the "low speed connection" User Manager.
* Added another two aliases for SAMR_QUERY_DISPINFO, opcodes 0x30 and
0x33. Usually the first is with info level 3 and the second 4 but there is
some overlap so indeed these should be implemented as just aliases.
* Return ERRDOS/ERRmoredata on extra data instead of
STATUS_BUFFER_OVERFLOW for Win95's benefit. On a named pipe this results
in an SMBreadX as usual.
Still need to fix SAMR_QUERY_DOMAIN_INFO which has a hard-coded number of
users and groups - which Win95 proceeds to truncate at.
(This used to be commit 7d03e6e21908f3a759a4e65c5edd850622335e3e)
Diffstat (limited to 'source3/smbd/ipc.c')
-rw-r--r-- | source3/smbd/ipc.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/source3/smbd/ipc.c b/source3/smbd/ipc.c index 31ae8e6fc02..c8c3b521944 100644 --- a/source3/smbd/ipc.c +++ b/source3/smbd/ipc.c @@ -187,9 +187,13 @@ static void send_trans_reply(char *outbuf, if (buffer_too_large) { +#if 0 /* issue a buffer size warning. on a DCE/RPC pipe, expect an SMBreadX... */ SIVAL(outbuf, smb_flg2, FLAGS2_32_BIT_ERROR_CODES); SIVAL(outbuf, smb_rcls, 0x80000000 | NT_STATUS_ACCESS_VIOLATION); +#endif + SCVAL(outbuf, smb_rcls, ERRDOS); + SSVAL(outbuf, smb_err, ERRmoredata); } copy_trans_params_and_data(outbuf, align, |