summaryrefslogtreecommitdiff
path: root/source4/torture/rpc/spoolss.c
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r5941: Commit this patch much earlier than I would normally prefer, but ↵Andrew Bartlett1-7/+7
metze needs a working tree... The main volume of this patch was what I started working on today: - Cleans up memory handling around DCE/RPC pipes, to have a parent talloc context. - Uses sepereate inner loops for some of the DCE/RPC tests The other and more important part of this patch fixes issues surrounding the new credentials framwork: This makes the struct cli_credentials always a talloc() structure, rather than on the stack. Parts of the cli_credentials code already assumed this. There were other issues, particularly in the DCERPC over SMB handling, as well as little things that had to be tidied up before test_w2k3.sh would start to pass. Andrew Bartlett (This used to be commit 0453f9d05d2e336fba1f85dbf2718d01fa2bf778)
2007-10-10r5902: A rather large change...Andrew Bartlett1-4/+17
I wanted to add a simple 'workstation' argument to the DCERPC authenticated binding calls, but this patch kind of grew from there. With SCHANNEL, the 'workstation' name (the netbios name of the client) matters, as this is what ties the session between the NETLOGON ops and the SCHANNEL bind. This changes a lot of files, and these will again be changed when jelmer does the credentials work. I also correct some schannel IDL to distinguish between workstation names and account names. The distinction matters for domain trust accounts. Issues in handling this (issues with lifetime of talloc pointers) caused me to change the 'creds_CredentialsState' and 'struct dcerpc_binding' pointers to always be talloc()ed pointers. In the schannel DB, we now store both the domain and computername, and query on both. This should ensure we fault correctly when the domain is specified incorrectly in the SCHANNEL bind. In the RPC-SCHANNEL test, I finally fixed a bug that vl pointed out, where the comment claimed we re-used a connection, but in fact we made a new connection. This was achived by breaking apart some of the dcerpc_secondary_connection() logic. The addition of workstation handling was also propogated to NTLMSSP and GENSEC, for completeness. The RPC-SAMSYNC test has been cleaned up a little, using a loop over usernames/passwords rather than manually expanded tests. This will be expanded further (the code in #if 0 in this patch) to use a newly created user account for testing. In making this test pass test_rpc.sh, I found a bug in the RPC-ECHO server, caused by the removal of [ref] and the assoicated pointer from the IDL. This has been re-added, until the underlying pidl issues are solved. (This used to be commit 824289dcc20908ddec957a4a892a103eec2da9b9)
2007-10-10r5611: Add EnumPrinterDataEx-test (for now just for PrinterDriverData, we needGünther Deschner1-1/+37
to enumerate (recursively!) over all keys with EnumPrinterKey later on. Guenther (This used to be commit 46ae4010f2293fb1933aacd2da582fcb1c0a5e1d)
2007-10-10r5553: Add idl and test for spoolss_AddPort(). It always seems to returnTim Potter1-2/+37
WERR_NOT_SUPPORTED though. (This used to be commit ba4730a37838f45db1b77b777af8efdb45a06006)
2007-10-10r5552: Don't try to read the value of r.out.result when the dcerpc clientTim Potter1-35/+87
function returns non-OK. If a non-OK status is returned then some or all or r.out is likely to be uninitialised. (This used to be commit 0e83a306b06442a1adfe02ea6bdb727a42c7bacf)
2007-10-10r5539: more bad name checks and don't check for \\localhost and \\127.0.0.1Stefan Metzmacher1-2/+3
we maybe use this in the build farm metze (This used to be commit 98e32260f5f4bf3b66fd9238c061618a3b49197c)
2007-10-10r5537: - make use of bitmaps and enumsStefan Metzmacher1-27/+16
- add and fix some PrinterInfo levels - add and fix some DriverInfo levels - fix EnumPrinterDriver torture test the curent RPC-SPOOLSS now passes on w2k3 metze (This used to be commit 14b88ca20dc64702f1c1b457a09b1f13b1964654)
2007-10-10r5516: NT4 doesn't support GetPrinterDataEx()Stefan Metzmacher1-1/+5
metze (This used to be commit 81f4afcbfa296f54634ba2a88e9ef3e966405fc3)
2007-10-10r5503: - add torture test which tests for invalid printernamesStefan Metzmacher1-20/+95
- add OpenPrinter() server code that just calls OpenPrinterEx() - fix OpenPrinterEx logic, we pass the invalid printer names test now metze (This used to be commit 3085d3728eaf76097319f648ab4bc7f9447bbe10)
2007-10-10r5498: fix OpenPrinter() idl and torture testStefan Metzmacher1-11/+8
metze (This used to be commit fd7950abe62e91108157619ace8e96e99110b668)
2007-10-10r5489: hide handwritten pull/push/print code from the callerStefan Metzmacher1-98/+27
for the spoolss_Enum* functions metze (This used to be commit bfcc86e706cf32672323eda939e5def6694509a8)
2007-10-10r5037: got rid of all of the TALLOC_DEPRECATED stuff. My apologies for theAndrew Tridgell1-1/+1
large commit. I thought this was worthwhile to get done for consistency. (This used to be commit ec32b22ed5ec224f6324f5e069d15e92e38e15c0)
2007-10-10r4616: the first phase in the addition of proper support forAndrew Tridgell1-1/+1
dcerpc_alter_context and multiple context_ids in the dcerpc client library. This stage does the following: - split "struct dcerpc_pipe" into two parts, the main part being "struct dcerpc_connection", which contains all the parts not dependent on the context, and "struct dcerpc_pipe" which has the context dependent part. This is similar to the layering in libcli_*() for SMB - disable the current dcerpc_alter code. I've used a #warning until i get the 2nd phase finished. I don't know how portable #warning is, but it won't be long before I add full alter context support anyway, so it won't last long - cleanup the allocation of dcerpc_pipe structures. The previous code was quite awkward. (This used to be commit 4004c69937be7e5dae56f9567ca607f982d395d3)
2007-10-10r4035: more effort on consistent naming of the access mask bits.Andrew Tridgell1-1/+1
This removes the duplicate named SEC_RIGHTS_MAXIMUM_ALLOWED and SEC_RIGHTS_FULL_CONTROL, which are just other names for SEC_FLAG_MAXIMUM_ALLOWED and SEC_RIGHTS_FILE_ALL. The latter names match the new naming conventions in security.idl Also added names for the generic->specific mappings for files are directories (This used to be commit 17a4e0b3aca227b40957ed1e0c57e498debc6ddf)
2007-10-10r3428: switched to using minimal includes for the auto-generated RPC code.Andrew Tridgell1-0/+1
The thing that finally convinced me that minimal includes was worth pursuing for rpc was a compiler (tcc) that failed to build Samba due to reaching internal limits of the size of include files. Also the fact that includes.h.gch was 16MB, which really seems excessive. This patch brings it back to 12M, which is still too large, but better. Note that this patch speeds up compile times for both the pch and non-pch case. This change also includes the addition iof a "depends()" option in our IDL files, allowing you to specify that one IDL file depends on another. This capability was needed for the auto-includes generation. (This used to be commit b8f5fa8ac8e8725f3d321004f0aedf4246fc6b49)
2007-10-10r3396: Rename form_name -> formname. This time, check smbtorture builds beforeTim Potter1-1/+1
committing. (-: (This used to be commit c776232d0130638a85cc8ce75e4bbef75952e856)
2007-10-10r3324: made the smbtorture code completely warning freeAndrew Tridgell1-10/+16
(This used to be commit 7067bb9b52223cafa28470f264f0b60646a07a01)
2007-10-10r3317: Fix the buildVolker Lendecke1-2/+2
(This used to be commit 5e8fd27d6ec7f44e6e802a2f29ec54e96fa78af0)
2007-10-10r3218: Fix the buildVolker Lendecke1-1/+1
(This used to be commit 478ba629158e8ce5e15467105b1013ba60f04ec1)
2007-10-10r2209: patch from volker to add EnumPorts spoolss IDL and test codeAndrew Tridgell1-0/+66
the ndr->offset=0; stuff is ugly. We need a better way to handle this. (This used to be commit e909bfa708aeceeaa37faa6f6dff0274f8ac7920)
2007-10-10r2207: this bug caued valgrind to consume infinite memory till the kernel ↵Andrew Tridgell1-0/+1
killed it :( (This used to be commit 60a88595e23eb2953edfacf9dfc9fe3f08ec5eeb)
2007-10-10r1041: - pulled the domain join code out of the netlogon test and made it a ↵Andrew Tridgell1-4/+4
separate utility function, to allow multiple torture tests to temporarily join a domain - fixed a session key size problem - added a schannel test suite - allow schannel to work with ncacn_ip_tcp (This used to be commit 36f05e4d575099fcb957b8a55781c38dcd2e1177)
2007-10-10r889: convert samba4 to use [u]int16_t instead of [u]int16Stefan Metzmacher1-3/+3
metze (This used to be commit af6f1f8a01bebbecd99bc8c066519e89966e65e3)
2007-10-10r884: convert samba4 to use [u]int32_t instead of [u]int32Stefan Metzmacher1-14/+14
metze (This used to be commit 0e5517d937a2eb7cf707991d1c7498c1ab456095)
2004-02-03- add 'print' to the DCERPC binding stringsStefan Metzmacher1-2/+0
e.g. ncacn_np:myserver:[samr,sign,print] will now enable the packet debugging and the debugging is not bound anymore to the debuglevel >= 2 in the torture tests - also the dcesrv_remote module now supports debugging of the packets use the 'dcerpc_remote:binding' smb.conf parameter. metze (This used to be commit 40abf3c584efed7f977ddd688ea064540e5a5b13)
2004-01-20check for the correct fault code when the server fails a use of aAndrew Tridgell1-3/+9
incorrect policy handle (This used to be commit 8cd6e90eb8716ba43f5940245d7be580aab4ba83)
2004-01-20added code to the RPC-SPOOLSS test that demonstrates that policyAndrew Tridgell1-0/+41
handles are not shared between open dcerpc connections, even when those connections are on the same SMB socket. I have tested this with w2k3, w2k and NT4. It seems that policy handles have a strict scope of the dcerpc connection on which they were opened. I realise that this goes against existing folk-law in the team, but it seems that the previous testing (I'm not sure who did this?) was wrong. Perhaps clients do send us policy handles from other connections, but if they do then the correct thing to do is to fail the operation with a dcerpc fault. I suspect that failing it with exactly the right dcerpc fault code is important. (This used to be commit 2ed24d29bafd9055d5782acdd595cd0f378a651a)
2003-11-30 * removed a bunch of unused codeAndrew Tridgell1-14/+14
* made some functions static (This used to be commit 829b87f30d5f4cc7174b716f3354982d84af4818)
2003-11-30Added EnumPrinterDriver, GetPrinterDriver (still in progress)Tim Potter1-10/+159
(This used to be commit a818439b5915fd70b8aa3d3045f658b3f59a6bea)
2003-11-28GetPrinterDataEx, SetPrinterDataEx, DeletePrinterDataEx.Tim Potter1-0/+41
(This used to be commit e8367f57356bc3da78a6217158f9d639ba4ca5fa)
2003-11-28Add SetPrinterData, DeletePrinterData.Tim Potter1-0/+54
(This used to be commit ea534f82d0620cbda5a960e492ec2fc1702fe975)
2003-11-28fixed some warningsAndrew Tridgell1-1/+1
(This used to be commit 1c2b8a93c50e3d5485732a2f06847166e883f939)
2003-11-28Fix bug in EnumPrinterData test.Tim Potter1-1/+39
Implement GetPrinterData RPC. (This used to be commit 270c4fe389fb67ccbe0b9174267b40738ca43052)
2003-11-28Added EnumJobs, GetJob, SetJob RPCs.Tim Potter1-0/+137
(This used to be commit a06cbbbf1fa1e873bb13bc86d14694b2af791e22)
2003-11-27Implemented SetForm RPC.Tim Potter1-3/+24
(This used to be commit bdb0dfc370b4deb9e7f5a381092538c3e502f191)
2003-11-27Add DeleteForm, start cleaning up tests.Tim Potter1-20/+64
(This used to be commit 10b31623fd421d341787d0769839ea5dca5ae7c0)
2003-11-27Implemented AddForm RPC. The mystery of the useless_ptr has beenTim Potter1-0/+20
solved. It was a pointer in a union member. RPC-SPOOLSS tests a bit messy and could do with a cleanup. (This used to be commit cf8cd4485261e861b16b98fb918758ff11282f1d)
2003-11-26Implemented EnumForms and GetForm.Tim Potter1-0/+106
(This used to be commit 822750592cffb175aa7afb268bc7cb47bbab47e4)
2003-11-22 * fixed null terminated string handlingAndrew Tridgell1-1/+1
* fixed nested relative offsets in push functions the spoolss torture test now passes! (This used to be commit 60ced76160e4f4e2b511ebbeec31130c8ebcdd22)
2003-11-22 * fixed handling of relative subcontext unionsAndrew Tridgell1-2/+2
* fixed GetPrinter in spoolss after OpenPrinter (This used to be commit 4aea2d79dd6b14e0fdfafd2236849ece01839ce0)
2003-11-22a fairly major upgrade to the dcerpc systemAndrew Tridgell1-0/+2
* added a NDR validator. The way it works is that when the DCERPC_DEBUG_VALIDATE_* flags are set the dcerpc system will perform NDR buffer validation. On sending a request the packet is first marshalled, then unmarahslled, then marshalled again, and it is confirmed that the two marshalling results are idential. This ensures that our pull and push routines are absolutely in sync, so that we can be very confident that if a routine works in the client then the corresponding routine must work on the server side. A similar validation is performed on all replies. * a result of this change is that pidl is fussier about the [ref] tag. You can only use it on pointers (which is the only place it makes sense) * fixed a basic alignment bug in the push side of the NDR code * added server side pull/push support. Our dcerpc system is now fully ready to be used on the server side. * fixed the relative offset pointer list. It must be traversed in reverse order on push * added automatic value setting for the size parameter in outgoing SdBuf structures. * expanded the ndr debugging code to always give a message on any failure * fixed the subcontext push code * fixed some memory leaks in smbtorture RPC tests (This used to be commit 8ecf720206a2eef3f8ea7cbdb1f460664a5dba9a)
2003-11-20EnumPrinterData in spoolss now worksAndrew Tridgell1-5/+5
(This used to be commit af07ca7fbcb4118f2415218d0c48798119b7c6b2)
2003-11-18cope with no printers returned from EnumPrintersAndrew Tridgell1-0/+5
(This used to be commit 8c49669dbec96df365d1866df24a17c1ff2c6cd0)
2003-11-18Working on EnumPrinterData. There appears to be an alignment problemTim Potter1-0/+45
after reading a non-empty DATA_BLOB in the reply. (This used to be commit 3165bf532f6b5a074f20f38a9af56325eedbb1c2)
2003-11-18use the auto-generated UUID, version and name rather than listing themAndrew Tridgell1-1/+4
in the dcerpc core code (This used to be commit 16ffeb7c80bfe7f1bfbfce8c98066e9ddbca7686)
2003-11-18* use the new auto-generated debug code method.Andrew Tridgell1-2/+2
* add a couple more info levels to wkssvc (This used to be commit c69161bdb13745f271b0cfa9a9af349f7a95edc6)
2003-11-17 * add another WERR err codeAndrew Tridgell1-1/+1
* use the top-level function argument printing to show more detail in RPC-* tests (This used to be commit 33bb8785625b1845750f28f2d810e7096afe9f8e)
2003-11-17use [subcontext] to make GetPrinter a bit easier in smbtortureAndrew Tridgell1-15/+5
(This used to be commit a5140985d8f57695b4165c72af217092da6fae5f)
2003-11-17call OpenPrinterEx on each printer on the server, and then callAndrew Tridgell1-75/+161
GetPrinter with all info levels on each printer (This used to be commit 136b3cfc0460315e924c3d9c8328c1850fc21fba)
2003-11-17added OpenPrinter and a test function. Note that the Samba3 structureAndrew Tridgell1-0/+36
for OpenPrinter was wrong. (This used to be commit 186ddbbf8774d0960852ea9186c8e4e6f7be7a0f)