summaryrefslogtreecommitdiff
path: root/source3/rpc_server/srv_spoolss.c
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r21047: Hand marshalling hack from Martin Zielinski <mz@seh.de>Jeremy Allison1-0/+9
to allow Vista to upload printer drivers (it wants level 8 which we don't support yet). Downgrade in the same way that Windows servers do. Jeremy. (This used to be commit 01c659692c3e054904f1af815cf243b8a1dde109)
2007-10-10r13815: "Into the blind world let us now descend,"Gerald Carter1-45/+10
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-10r5806: * fix a couple more segvs in spoolssGerald Carter1-0/+3
* comment out unused variable after jra's change to revert the 56bit des smb signing changes (This used to be commit 13ed08cd2a1097021cc44f4109859ba89db7df81)
2003-08-23it never amazes me when some new things crawls out of the windowsGerald Carter1-1/+1
spooler. :-( When installing the Adobe PS driver onto a Samba printer via cupsaddsmb, I noticed a WIN2k client sending DeletePrinterData("DependentFiles") pver and over. I also noticed that we never checked to see if the value was valid. No now we do and return WERR_BADFILE which I think is correct. Next, I noticed that we never wrote the updated printer out to disk after a succesfully DeletePrinterData[Ex](). Finally, I found a driver (Canon BJC 1000 using the Adobe PS drivers and foomatic PPD file) that was destroying the device name string in the devmode. So now get_a_printer_2() always writes out the device name in \\server\share form. I think these changes might fix bug 294. (This used to be commit deb25780874b66e68ac597db24fbc50e7f7458b5)
2003-08-14Attempt at fixing bug #283. There however is no solution.Gerald Carter1-2/+9
There is a workaround documented in the bug report. This patch does: * add server support for the LSA_DS UUID on the lsarpc pipe * store a list of context_ids/api_structs in the pipe_struct so that we don't have to lookup the function table for a pipe. We just match the context_id. Note that a dce/rpc alter_context does not destroy the previous context so it is possible to have multiple bindings active on the same pipe. Observed from standalone win2k sp4 client. * added server code for DsROleGetPrimaryDOmainInfo() but disabled it since it causes problems enumerating users and groups from a 2ksp4 domain member in a Samba domain. (This used to be commit 96bc2abfcb0dd0912696fad76e43cb217b33e061)
2003-08-01Update my copyrights according to my agreement with IBMJim McDonough1-1/+1
(This used to be commit a2bd8f0bfa12f2a1e33c96bc9dabcc0e2171700d)
2003-08-01Fix copyright statements for various pieces of Anthony Liguori's work.Jim McDonough1-1/+1
(This used to be commit 15d2bc47854df75f8b2644ccbc887d0357d9cd27)
2003-04-28Use NTSTATUS as return value for smb_register_*() functions and init_module()Jelmer Vernooij1-2/+2
function. Patch by metze with some minor modifications. (This used to be commit bc4b51bcb2daa7271c884cb83bf8bdba6d3a9b6d)
2003-04-15use the new modules system for the rpc modules (backport from HEAD)Jelmer Vernooij1-4/+0
(This used to be commit aca7319e8d45eb604f28b8bd490413b08e2c98f2)
2003-02-14merge from HEAD - enable dynamic RPC modulesJim McDonough1-14/+15
(This used to be commit d9c485b01017594d113502f9de2248d6c120cfa3)
2002-08-17Sync 3.0 branch with HEADJelmer Vernooij1-0/+63
(This used to be commit e01596853e3eea533baa08c33f26ded75f33fdd4)
2002-07-15updated the 3.0 branch from the head branch - ready for alpha18Andrew Tridgell1-2/+123
(This used to be commit 03ac082dcb375b6f3ca3d810a6a6367542bc23ce)
2002-04-22printing merge from HEADGerald Carter1-4/+0
(This used to be commit d3aed37dd87d425f51bcdc4e5151f0b0fe8f9c6b)
2002-03-26OpenPrinter() merge from 2.2Gerald Carter1-0/+31
(This used to be commit 619397cc90549d4602ecddc25ee50eb247c913ee)
2002-03-15syncing up printing code with SAMBA_2_2 (already done some mergesGerald Carter1-7/+27
in the reverse). * add in new printer change notify code from SAMBA_2_2 * add in se_map_standard() from 2.2 in _spoolss_open_printer_ex() * sync up the _print_queue_struct in smb.h (why did someone change the user/file names in fs_user/fs_file (or vice-versa) ? ) * sync up some cli_spoolss_XXX functions (This used to be commit 5760315c1de4033fdc22684c940f18010010924f)
2002-01-30Removed version number from file header.Tim Potter1-2/+1
Changed "SMB/Netbios" to "SMB/CIFS" in file header. (This used to be commit 6a58c9bd06d0d7502a24bf5ce5a2faf0a146edfa)
2001-12-10Added client and server code for the GetPrintProcessorDirectory SPOOLSSTim Potter1-1/+39
rpc. This was supposed to fix a printer driver download bug but it didn't but it seemed a shame to trash all this code so I'm commiting it #ifdef'ed out in case someone needs it one day. (This used to be commit bef43656471741c6c10b12e7516c15de9ae76394)
2001-11-22merge from 2.2Gerald Carter1-0/+60
(This used to be commit 96b3a65a73d403a41bf1b3aba79bd743698344ac)
2001-11-09Fixed a few typos and added the opnum for ADDPRINTERDRIVEREX to theGerald Carter1-2/+2
rpc_spoolss.h header file. (This used to be commit d4cafc076be99a66d0660f695995801b4f1d7bfd)
2001-11-05Wrote some stubs for new win2k only spoolss rpc commands:Tim Potter1-0/+63
GetPrinterDataEx() and SetPrinterDataEx(). Not sure what the command number is for the latter is - I haven't seen it on the wire yet. (This used to be commit 87614c74b3d66cf2ca706b33e6cf0a32b4166e7a)
2001-10-02Removed 'extern int DEBUGLEVEL' as it is now in the smb.h header.Tim Potter1-2/+0
(This used to be commit 2d0922b0eabfdc0aaf1d0797482fef47ed7fde8e)
2001-09-17move to SAFE_FREE()Simo Sorce1-2/+2
(This used to be commit 5ceecc7bef71b455ba7c4efd9928e2433dccc961)
2001-09-04the next stage in the NTSTATUS/WERROR change. smbd and nmbd now compile, but ↵Andrew Tridgell1-1/+1
the client code still needs some work (This used to be commit dcd6e735f709a9231860ceb9682db40ff26c9a66)
2001-08-27converted another bunch of stuff to NTSTATUSAndrew Tridgell1-1/+1
(This used to be commit 1d36250e338ae0ff9fbbf86019809205dd97d05e)
2001-07-25Held a shoot-out between NT_STATUS_NO_PROBLEMO and NT_STATUS_NOPROBLEMO.Tim Potter1-1/+1
According to the incorruptible judges find and grep, the latter won. Mmm - procrastination. (-: (This used to be commit 2e339403605177b15d5185a8fdd1b06f3f043168)
2001-06-21Merging Gerry's spoolss changes.Jeremy Allison1-0/+33
Jeremy. (This used to be commit 6b4a70cd8285c1e4d452e3af7df070b4c446ff54)
2001-05-18merge from 2.2 (deleteprinterdriver RPC)Gerald Carter1-0/+33
(This used to be commit 515caaf7b448e55206433a9ca04fb5078f91cde2)
2001-03-27merge from 2.2.Gerald Carter1-10/+10
(This used to be commit 817258f1174d27d74e8b21ffb5f1384db2238007)
2001-03-19reverted the rename of new_spoolss_io_r_enumprinterdrivers()Gerald Carter1-1/+1
(This used to be commit fd6bfe03f4454272bdce59c78ae7148a72caaf18)
2001-03-15renamed one of the enumprinterdrivers parsing functionsGerald Carter1-2/+2
for consistency sake. (This used to be commit cbce0c935099231af51a34460c6b331822fde213)
2001-03-11Merge of new 2.2 code into HEAD (Gerald I hate you :-) :-). Allows new SAMRJeremy Allison1-4/+5
RPC code to merge with new passdb code. Currently rpcclient doesn't compile. I'm working on it... Jeremy. (This used to be commit 0be41d5158ea4e645e93e8cd30617c038416e549)
2001-03-03Roll back to using malloc/realloc on some of spoolss in head.Jeremy Allison1-0/+3
I'm having problems with talloc_realloc in the 2.2 branch and I want a stable reference. The only problem is this breaks the clean auto-generated code in *one* call in srv_spoolss.c (the rfnpcnex call). Jeremy. (This used to be commit 57a9340cbafa40f3a41e6c676c6f2477855fd799)
2001-02-28Finished converion of spoolss code to canonical format. Now to work on theJeremy Allison1-65/+31
PRINT_XX struct alloc/free issues. Jeremy. (This used to be commit db98d4b020032b2a934b21bfdf9082765692fc5a)
2001-02-28More converted to canonical format. Home now - do the rest tomorrow...Jeremy Allison1-35/+17
Jeremy. (This used to be commit 9d5979f51ec7b2a62fb9b290eb0393594cfa6224)
2001-02-28Converted more to canonical format... save as I go.,Jeremy Allison1-16/+8
Jeremy. (This used to be commit 1d4ff7a81bccce0e5701102314af4f9c64c55cd6)
2001-02-28Ooops - forgot to check the rpcclient and smbcacls compile with the newJeremy Allison1-6/+3
code :-(. Jeremy. (This used to be commit 70beabf73bdaad7b6a60e24b7a11798a411bed02)
2001-02-28Partial conversion of SPOOLSS code to canonical format. More to follow.Jeremy Allison1-31/+18
Once complete then the PRINTER_XX functions and structures will be converted to talloc control. Jeremy. (This used to be commit 8171cc56428920d8b765d077198893201f68766e)
2001-02-28Move to talloc control of SPOOL_XXX structs. Move to talloc control ofJeremy Allison1-120/+3
security descriptors and pointers. Syncup with 2.2 tree. Jeremy. (This used to be commit 14d5997dc841e78a619e865288486d50c245896d)
2001-01-31Changes from SAMBA_2_2:David O'Neill1-1/+1
source/rpc_server/srv_spoolss_nt.c source/rpc_server/srv_spoolss.c source/include/proto.h - correct checking of access_required in openprinterex as talked with John R. and Jerry. You can only do server stuff (adding printers, changing forms, ..) if you're root or if user is in printer admin list. Printers options are grayed if you don't have the PRINTER_ADMINISTER flag in the secdesc. (This used to be commit f449d871bf0c385d8c57de2d795e1d7ef7f256f7)
2001-01-17Changes from APPLIANCE_HEAD:David O'Neill1-1/+1
source/include/proto.h source/include/rpc_spoolss.h source/rpc_parse/parse_spoolss.c source/rpc_server/srv_spoolss.c source/rpc_server/srv_spoolss_nt.c - speedups in printer queue enumeration - still room for improvement. The construct_dev_mode() still creates and destroys a printer info_2 structure every time it is called. - fixed job->devmode memory leak - converted printer job notification routines to use tallocated memory rather than a fixed 2K buffer. This reduces the memory requirements of a 4500 job queue enumeration from 90MB to about 16MB. (This used to be commit 7853b27bc1765d48d5f06837f8aca71a3a0d1e5d)
2000-09-09Implemented DELETEPRINTERDATA (tested with Gerald's Win32 progs).Jeremy Allison1-0/+32
Jeremy. (This used to be commit fb48efaf830626f6ef05b88f5f8a74b932ceb257)
2000-09-05Implemented GETFORM tested and working using Gerald's Win32 test progs....Jeremy Allison1-0/+38
Jeremy. (This used to be commit 55ed0a9b0c91159c0fc4282c2171d9ced74a302a)
2000-08-31Implemented DELETEFORM tested using Gerald's Win32 test code :-).Jeremy Allison1-0/+28
Jeremy. (This used to be commit 596c21a2af0309ce43a5e52a343a671036d05ebf)
2000-08-30Implemented AbortPrinter() from Gerald's Win32 test code. Just purge allJeremy Allison1-0/+31
possible printjobs from that printer (I think this is correct). Added error code returns for print_queue_XXX() functions. Jeremy. (This used to be commit 6d081a9017f87f59b7189ba507e211db01c40af5)
2000-08-28yipee!Andrew Tridgell1-2/+3
The spoolss AddJob function has an [in,out] buffer not an [in] buffer (despite the comment in the code to the contrary). Also, we must fail this function - not just blindly reply "no problem" as AddJob should always fail on non-local printers. This fixes a bug where the "print test page" failed about half the time. I suspect it will also fix a bunch of other intermittent spoolss bugs where the client (incorrectly) tries to use the AddJob printing interface. (This used to be commit 14e534a8907c34b53e00a63756efd71903ff9432)
2000-07-25A rather big change set ! (listed in no particular order)Jean-François Micouleau1-1/+1
- changed the default forms flag to 2 - all short architecture name are uppercased - get_short_archi() is now case unsensitive - the drivers TDB is indexed by archi/version/name - implemented code to move drivers from the upload area to the download area. Someone else need to look at that code. - don't return anymore a default driver if it doesn't exist in the TDB. Instead return an error. - cleaned prs_unistr. - #ifdef out jeremy's new SD parsing in printer_info_2 - removed the unused MANGLE_CODE - #ifdef out the security checking in update_printer() as it doesn't work for me. Zap your ntdrivers.tdb, it won't work anymore. J.F. (This used to be commit ac0a145acc0953a6f362497abbf4dfe70aa522a6)
2000-07-06Pass pipes_struct rather than vuid down to startdocprinter, setprinter andTim Potter1-3/+3
setjob spoolss server commands. (This used to be commit f35745137451f769a0723cb0665ba0b9d4801ad8)
2000-06-20Fixes for Win2k "add printer driver" INFO_LEVEL_6 was wrong, also someJeremy Allison1-0/+1
memory fixes. Jeremy. (This used to be commit 2a9e645cbddef1cddc5c978310b7efed492758d2)
2000-06-16Simplified server pipe implementation by changing arguments passed downTim Potter1-40/+108
through to the individual pipe api calls. Instead of passing two prs_struct pointers, we now pass the pipes_struct pointer which contains the former information as well as other useful stuff like the vuid. Pass the vuid from the pipes_struct down to the lower level spoolss functions to perform security checks. (This used to be commit f6436aacd631abeda60b87d671993f9e426cc684)
2000-06-06Memory leak fixes.Jeremy Allison1-1/+1
Jeremy. (This used to be commit 34b63896ab1543936d6b9b382ef6727a161b6bf2)