summaryrefslogtreecommitdiff
path: root/source3/rpc_server
AgeCommit message (Collapse)AuthorFilesLines
2010-02-17Fix bug #7146 - Samba miss-parses authenticated RPC packets.Jeremy Allison1-120/+311
Parts of the Samba RPC client and server code misinterpret authenticated packets. DCE authenticated packets actually look like this : +--------------------------+ |header | | ... frag_len (packet len)| | ... auth_len | +--------------------------+ | | | Data payload | ... .... | | +--------------------------+ | | | auth_pad_len bytes | +--------------------------+ | | | Auth footer | | auth_pad_len value | +--------------------------+ | | | Auth payload | | (auth_len bytes long) | +--------------------------+ That's right. The pad bytes come *before* the footer specifying how many pad bytes there are. In order to read this you must seek to the end of the packet and subtract the auth_len (in the packet header) and the auth footer length (a known value). The client and server code gets this right (mostly) in 3.0.x -> 3.4.x so long as the pad alignment is on an 8 byte boundary (there are some special cases in the code for this). Tridge discovered there are some (DRS replication) cases where on 64-bit machines where the pad alignment is on a 16-byte boundary. This breaks the existing S3 hand-optimized rpc code. This patch removes all the special cases in client and server code, and allows the pad alignment for generated packets to be specified by changing a constant in include/local.h (this doesn't affect received packets, the new code always handles them correctly whatever pad alignment is used). This patch also works correctly with rpcclient using sign+seal from the 3.4.x and 3.3.x builds (testing with 3.0.x and 3.2.x to follow) so even as a server it should still work with older libsmbclient and winbindd code. Jeremy
2010-02-16s3:rpc streamline memory handlingSimo Sorce1-13/+5
2010-02-15spoolss: disable GetPrinterDriver level 101 (as called by XP).Günther Deschner1-2/+6
We still dont get the marshalling right, disable and XP will just fall back to level 6. Guenther
2010-02-14s3-rpc: convert wkssvc to use TYPESAFE_QSORT()Andrew Tridgell1-10/+4
2010-02-11spoolss: allow to set server architecture via parametric option.Günther Deschner1-2/+2
This allows to set "spoolss:architecture = 'Windows x64'" for debugging purpose. Guenther
2010-02-11s3-spoolss: implement spoolss_EnumJobs level 3.Günther Deschner1-0/+76
Level 3 has been added with NT 4.0 and Windows 7 (at least 64bit version) makes use of it in order to display queued jobs. Windows 7 will *not* fall back to level 2 if we just return WERR_UNKNOWN_LEVEL, instead there will be no printjobs displayed at all. Guenther
2010-02-09Missed one check on the memcpy for bug #7063.Jeremy Allison1-1/+1
Jeremy.
2010-02-09Second part of fix for bug 7063 - Samba 3.4.5 on ubuntu 8.04 64 bit - Core ↵Jeremy Allison1-1/+4
dumps. Ensure we have no naked memcpy calls. This isn't a crash bug (it's already checked in the data_blob_talloc_zero() above, but I want to get into the pattern of having all memcpy's covered by safety checks. Jeremy.
2010-02-02Fix bug 7063 - Samba 3.4.5 on ubuntu 8.04 64 bit - Core dumps.Jeremy Allison1-2/+9
Reported and found by Martin Hochreiter <linuxbox@wavenet.at>. Ensure we copy the right amount of registry data into the outgoing buffer. Jeremy.
2010-01-31s3: Fix some DEBUG messagesVolker Lendecke1-3/+3
2010-01-19s3-spoolss: stricter name checks when opening back-channel notify connection.Günther Deschner1-7/+13
Make sure to always check if the name the client passed in spoolss_RemoteFindFirstPrinterChangeNotifyEx is not one of our names. Guenther
2010-01-10s3: Use sid_check_is_domain instead of a direct sid_equalVolker Lendecke1-3/+6
2010-01-10s3: Replace most calls to sid_append_rid() by sid_compose()Volker Lendecke2-6/+5
2010-01-10s3: Remove the typedef for "auth_serversupplied_info"Volker Lendecke1-1/+1
2010-01-10s3: Remove the typedef for "auth_usersupplied_info"Volker Lendecke1-1/+1
2010-01-07s3: Lock down some srvsvc calls according to what w2k3 seems to doVolker Lendecke1-0/+21
2010-01-06Second part of the fix for bug #7020 - smbd using 2G memory.Jeremy Allison1-0/+7
There was a second leak in the processing of the out_data.frag prs_struct. It needs freeing once the current pdu has been returned asynchronously. Jeremy.
2009-12-22s3:ntlmssp: only include ntlmssp.h where actually neededAndrew Bartlett1-0/+1
Andrew Bartlett
2009-12-15s3: Fix _samr_GetAliasMembership for results with 0 ridsVolker Lendecke1-0/+8
2009-12-10s3-spoolss: fix enumprinter key client and server.Günther Deschner1-2/+11
Guenther
2009-12-08s3-spoolss: use SPOOLSS_ARCHITECTURE_ALL in driver enum server code.Günther Deschner1-1/+1
Guenther
2009-12-08s3-spoolss: cleanup _spoolss_EnumPrinterDrivers().Günther Deschner1-139/+6
Guenther
2009-12-08s3-spoolss: remove unused architecture from fill_printer_driver_info1().Günther Deschner1-5/+3
Guenther
2009-12-08s3-spoolss: remove ridiculous amount of duplicate driver code.Günther Deschner1-436/+44
Guenther
2009-12-08s3-spoolss: fully support level 8 drivers.Günther Deschner1-0/+305
Guenther
2009-12-08s3-spoolss: use driver level info8 everywhere in spoolss server internally.Günther Deschner1-68/+78
Guenther
2009-12-07s3-spoolss: let _spoolss_DeletePrinterData call into ↵Günther Deschner1-38/+5
_spoolss_DeletePrinterDataEx. Guenther
2009-12-07s3-spoolss: let _spoolss_SetPrinterData call into _spoolss_SetPrinterDataEx.Günther Deschner1-74/+30
Guenther
2009-12-07s3-spoolss: let _spoolss_GetPrinterData call into _spoolss_GetPrinterDataEx.Günther Deschner1-101/+44
Guenther
2009-12-07s3-winreg: fill in some inline comments.Günther Deschner1-10/+38
Guenther
2009-12-07s3-winreg: remove trailing whitespace.Günther Deschner1-40/+40
Guenther
2009-12-06s3: Fix a const discard warningVolker Lendecke1-7/+9
2009-12-06s3: talloc_array_length deals file with a NULL argumentVolker Lendecke1-3/+3
2009-12-06s3: Small simplification: qsort deals fine with just one entryVolker Lendecke1-7/+2
2009-12-06s3: Simplify usr_info_cmp by calling timeval_compare()Volker Lendecke1-3/+1
2009-12-06s3: Complete support for NetWkstaGetInfo/NetWkstaEnumUsersIan Puleston1-22/+380
2009-12-06s3: First cut at _wkssvc_NetWkstaEnumUsersVolker Lendecke1-3/+52
This needs access checks!
2009-12-06s3: Support NetWkstaGetInfo 101 and 102Volker Lendecke1-15/+113
2009-12-03s3-spoolss: handle SEC_FLAG_MAXIMUM_ALLOWED in spoolss_OpenPrinterEx.Günther Deschner1-0/+4
In case someone (smbtorture4) requests SEC_FLAG_MAXIMUM_ALLOWED, translate it to a request of PRINTER_ACCESS_ADMINISTER. Guenther
2009-12-02samba-spoolss: use spoolss_StringArray2 in spoolss_EnumPrinterKey.Günther Deschner1-1/+1
This should finally resolve the endian issues we were seeing on sparc and is much cleaner for spoolss clients and servers. Guenther
2009-11-30s3-spoolss: fix fstrings in convert_devicemode() function.Günther Deschner1-2/+5
Guenther
2009-11-27s3-spoolss: simplify _spoolss_EnumPrinterKey a little more.Günther Deschner1-14/+6
Guenther
2009-11-27s3-spoolss: use macros to fillup driver levels.Günther Deschner1-158/+114
Guenther
2009-11-26s3-rpc: running minimal_includes.pl on rpc_client and rpc_server.Günther Deschner3-5/+0
Guenther
2009-11-26s3-rpc: Avoid including every pipe's client and server stubs everywhere in ↵Günther Deschner14-0/+16
samba. Guenther
2009-11-26s3-spoolss: pre cosmetics: reorder levels in construct_printer_info levels.Günther Deschner1-104/+104
Guenther
2009-11-24s3-spoolss: re-arrange driver info level fillup functions.Günther Deschner1-95/+95
Guenther
2009-11-24s3-spoolss: fixes for _spoolss_EnumPrinterKey client and server.Günther Deschner1-1/+1
Thanks Metze for review! Guenther
2009-11-23s3-spoolss: Fix GetPrinter level 101.Günther Deschner1-1/+1
Guenther
2009-11-23s3-printing: use spoolss types and structs while getting and deleting drivers.Günther Deschner1-155/+152
Guenther