summaryrefslogtreecommitdiff
path: root/source3/include/rpc_spoolss.h
AgeCommit message (Collapse)AuthorFilesLines
2001-03-07Sync up handle creation with 2.2 branch. We can now join AS/U domains andJeremy Allison1-2/+0
authenticate against them. Big/little endian issues fixed. Jeremy. (This used to be commit 0e6a34510ed598eaec7fe71a9c91fda528a4675c)
2001-02-23include/rpc_spoolss.h: Added JOB_STATUS_XXX defines.Jeremy Allison1-0/+14
include/smb.h: Added LPQ_xx enums to correspond with the NT JOB_STATUS_XXX. We need these to be different as we're storing LPQ_xx enums in the tdb already. rpc_server/srv_spoolss_nt.c: Don't need to return status strings as we're now returning status codes. smbd/lanman.c: Change the RAP status codes to have "RAP" in the name. printing/printing.c: Keep track of the status of a job. Allow a job to be deleted from one smbd when being submitted by another. Made logic in mutex clearer. Jeremy. (This used to be commit 71029da7dd74eb91dd6953752bdf238f319d985d)
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)
2001-01-04Changes from APPLIANCE_HEAD:David O'Neill1-13/+7
source/Makefile.in - changes to ctags and etags rules that somehow got lost along the way. source/include/proto.h - make proto source/smbd/sec_ctx.c source/smbd/password.c - merge debugs for debugging user groups and NT token stuff. source/lib/util_str.c - capitalise domain name returned from parse_domain_user() source/nsswitch/wb_client.c - fix broken conditional in debug statement. source/include/rpc_secdes.h source/include/rpc_spoolss.h source/printing/nt_printing.c source/lib/util_seaccess.c - fix printer permission bugs related to ACE masks for printers. This adds mapping of generic access rights to object specific rights for NT printers. Still need to work out whether or not to ignore ACEs with certain flags set, though. See comments in util_seaccess.c:check_ace() for details. source/printing/nt_printing.c source/printing/printing.c - use PRINTER_ACCESS_ADMINISTER instead of JOB_ACCESS_ADMINISTER until we sort out printer/printjob permission stuff. (This used to be commit 1dba9c5cd1e6389734c648f6903abcb7c8d5b2f0)
2000-09-25printer notify code.Jean-François Micouleau1-2/+26
It only sends notifies to one client. The broadcasting notify code will code soon. J.F. (This used to be commit 4c63c9185887c64e57d901e82a4a16a83522c898)
2000-09-16in a printer_info_6, driver version is 64 bits long and there is a 32 bitJean-François Micouleau1-2/+4
padding before. J.F. (This used to be commit cd41d7a35477accec1a82b86f9fa3477e5a49d6e)
2000-09-09Implemented DELETEPRINTERDATA (tested with Gerald's Win32 progs).Jeremy Allison1-0/+14
Jeremy. (This used to be commit fb48efaf830626f6ef05b88f5f8a74b932ceb257)
2000-09-05Implemented GETFORM tested and working using Gerald's Win32 test progs....Jeremy Allison1-1/+18
Jeremy. (This used to be commit 55ed0a9b0c91159c0fc4282c2171d9ced74a302a)
2000-09-01Changes from APPLIANCE_HEAD (per Tim Potter):David O'Neill1-1/+6
- make proto - addition of function to convert from errno values to NT status codes (source/lib/error.c) - purge queue done without full access permission will purge only the jobs owned by that user, rather than failing. - unlock job database tdb before sending job to printer - in print_job_start(), ensure that we don't pick a jobid with an existing temporary file that may be owned by another user, as it causes silent failures. - fixes for printer permission checking for NT5 clients (source/include/rpc_spoolss.h, source/printing/nt_printing.c, source/printing/printing.c, source/rpc_server/srv_spoolss_nt.c) - change from uint8 to 'enum SID_NAME_USE' (source/rpc_server/srv_lsa.c) - fixed memory leaks for win95 driver download process (source/smbd/lanman.c) - properly free prs_structs and dacl in testsuite/printing/psec.c (This used to be commit 74af3e2caec7197e5d1ca389e2f78054a4197502)
2000-08-31Implemented DELETEFORM tested using Gerald's Win32 test code :-).Jeremy Allison1-1/+14
Jeremy. (This used to be commit 596c21a2af0309ce43a5e52a343a671036d05ebf)
2000-08-30Implemented AbortPrinter() from Gerald's Win32 test code. Just purge allJeremy Allison1-1/+13
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-29added a #define for SPOOLSSGETPRINTERDATAEX. Although we do notGerald Carter1-0/+1
support the RPC yte (win2k specific), I added it for documentation purposes. jerry (This used to be commit 41bf13341127b1c58105ca9a59fd686c15746164)
2000-08-28yipee!Andrew Tridgell1-0/+2
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-08-10Tidied up security rights definitions.Jeremy Allison1-17/+12
Jeremy. (This used to be commit e466c863f5540e13776f4477b6d58e3fbfe7276d)
2000-08-09More work on AddPrinterDriver() and AddPrinterEx() client RPC'sGerald Carter1-1/+1
Also fixed init_unistr() to deal with a NULL source character string. -jerry (This used to be commit 8ecd5dd52a6bd867f5d117352048ee43ce7254d9)
2000-08-08All changes related to rpcclient...Gerald Carter1-0/+23
- cleaned up some code - Fixed a few memory leaks of my own making - Add AddPrinterDriver(); I'm missing some of the semantics here as the call is done correctly, but I'm not getting all the information right in the DRIVER_INFO_3 struct I think. Will work on it tomorrow some more... --jerry (This used to be commit 3bf9a29f34ee4ade5180c5a0b0b9ff4aca7f0f08)
2000-07-18Fixed some more client SPOOLSS functions. The followingGerald Carter1-2/+0
functions work now: - spoolenum - spoolopen - spoolgetprinter - spoolgetprinterdriver Items todo: - track down memory bug with spoolenumdata - fix spoolgetprinterdriverdir - fix spoolgetdata - fix display_job_info_ctr in spooljobs All part of the ongoing rpcclient work. Also included a new generic list ADT. Cleaner and simplier than the stuff in util_array.c i think (but then that's why I wrote it). --jerry (This used to be commit 381aba2c9a63faa53728f0520ac316478bc7a1c3)
2000-07-06Moved printer ACE mask values from nt_printing.h to rpc_spoolss.hTim Potter1-2/+6
(This used to be commit 9245af1ea18babae09a92af634428a63ec55438e)
2000-06-20Fixes for Win2k "add printer driver" INFO_LEVEL_6 was wrong, also someJeremy Allison1-2/+1
memory fixes. Jeremy. (This used to be commit 2a9e645cbddef1cddc5c978310b7efed492758d2)
2000-06-10parsing code for reply[open|close]printer in preparation of the eventJean-François Micouleau1-1/+29
stuff. J.F. (This used to be commit 1871d4a3f64401f9a6f749ce26d1715e3bcdeac3)
2000-06-01Back to building. Now to test with insure.Jeremy Allison1-1/+1
Added some frees needed to stop memory leaks. Jeremy. (This used to be commit eba31e4e802120c9eb8c4688f521b4de9cb91f5c)
2000-06-01More stuff I cvan't afford to lose. I'm realizing how dependent I amJeremy Allison1-1/+1
on this bloody CVS link.... Jeremy. (This used to be commit 864e7bde0e804edbb2425b9c4c7ff271553f8169)
2000-05-28moved notif_y_table struct to spoolss_nt.c only used there.Luke Leighton1-11/+0
#ifdef'd driver-code out with define RELIES_ON_SMBD_SPECIFIC_CODE because spoolssd doesn't link with smbd/*.c (find_service("print$") is not possible). (This used to be commit 726c359d1d9f1fc8227ca920c888d2f040170e0b)
2000-05-27security descs in spoolss. needs parse_sec.c nttrans.c broken.Luke Leighton1-9/+19
(This used to be commit f9f2a04fdb7b2af1cfe5bf26ec6f0d955ea948b9)
2000-05-12added spool_io_printer_driver_info_level_6()Andrew Tridgell1-0/+41
thsi function and the associated header structure were autogenerated using a little awk based code geerator I wroe ths evening. I'll commit that next ... (This used to be commit 974813f0d4afb6c14ed27c48ab24b19932557f9f)
2000-05-02added support for deleting printers into the spoolss systemAndrew Tridgell1-1/+14
(This used to be commit e72a5718537b84409fc20ff21951b1d1ab24d97f)
2000-03-29rewrote getprinterdriver level 3, now correctly handle the dependentJean-François Micouleau1-10/+6
files. A number of memleak fixed some error return values fixed. J.F. (This used to be commit c212fbe009fe556d5329b5d7106159cf21402d82)
2000-03-13oops ! forgot smb.h in last commitJean-François Micouleau1-0/+12
added info level 1 parsing code for addprinter(ex) J.F. (This used to be commit 4847f7b17b2d23e4efd4e7cae6bfcfc2319b9409)
2000-03-13parse correctly getprinterdriver2Jean-François Micouleau1-3/+4
found a stupid bug in enumprinters fixed some memleaks found a coredump in enumprinterdata getprinterdriverdir responds correctly now. J.F. (This used to be commit 07f2e194ba61e72320636fb7e5d0f041e255868b)
2000-03-10you know, when you do a cvs commit, you _really_ expect it to actually work.Luke Leighton1-2/+5
this explains why j-f wasn't happy. (This used to be commit c51e38214a5323d0aa9b6dcd948a76ddc29f5305)
2000-03-10getprinter level 0: was to short, found most of the fields, undocumented,Jean-François Micouleau1-29/+37
undecoded, nothing in MSDN, but now it works :-) cleanup of error codes. fixed some dfs declarations function. J.F. (This used to be commit 87da4404aba29a2ebd999886e4c06958c96d3e05)
2000-03-10indent went wrong. grr.Luke Leighton1-226/+357
(This used to be commit 525338e80766fe3dbcc4a64db8e957ae63c5e9d6)
2000-03-07Enumprinters level 1: reply *exactly* like an NT serverJean-François Micouleau1-0/+1
BTW, found a little memleak in it. J.F. (This used to be commit 9c37b5df2de9bf8fa6f5536fd75f9c8faf338a52)
2000-03-06changed prs_unistr to parse empty and non-empty strings the same way.Jean-François Micouleau1-12/+7
fixed typo in SPOOLSS_SYNT some cleanup of unused functions wrote make_spoolss_enumprinter and make_spoolss_openprinterex for rpcclient as I'm trying to keep in sync the parsing code between HEAD and TNG. Will commit changes to TNG after lunch. J.F. (This used to be commit 025cdb345f6de287a41d4449b2662dbc5e762bf2)
2000-02-26added enumprintprocessordatatypesJean-François Micouleau1-12/+13
now NT is happy and the "always send data in RAW mode" is checked J.F. (This used to be commit d7bcfe17cee64a513595d7c44456e93e88f2448b)
2000-02-26rewrote enumprinterdata. still a bug in it but reproducing it hard andJean-François Micouleau1-3/+4
borring. I need a client test program urgently!!! rewrote setprinter, doesn't coredump anymore, and no memleak. J.F. (This used to be commit b76ae1f92f4f12b38c4245456cdd2db970724077)
2000-02-24converted a couple of bzero() to memset()Jean-François Micouleau1-22/+74
rewrote the printer notify code, so now it's compatible with SP5 and fully dynamic. No more limits on printers and job lists. removed the make_xxx() functions as they are not used and broken fixed a bug in the open handle function. J.F. (This used to be commit aa9054d14bc940f251639ab897d9f356814f5fc0)
2000-02-21more rewrite ...Jean-François Micouleau1-53/+47
comitting before starting on new functions. J.F. (This used to be commit f9c20801114f72b587a6e8c3177cbab13dbdcc28)
2000-02-15fix the reply of rpc_alter_contextJean-François Micouleau1-48/+50
OpenPrinterEx is now decoding correctly the query most of the EnumXXX use the new_buffer struct. check the (un)marshalling return code. conclusion: still a long way to go. all the client code has to be rewritten, and I still wonder how to implement correctly the notify stuff. (This used to be commit 3d6d3863751787b08d40268c83221add1487a5c9)
2000-02-07First commit of the spoolss code to the HEAD branch.Jean-François Micouleau1-0/+1441
still needs a lot of cleaning/debuging. J.F. (This used to be commit bd9d4cdde9193c120c6f4e8cf72f87cd67a9387e)
1999-12-132nd phase of head branch sync with SAMBA_2_0 - this delets all the files ↵Andrew Tridgell1-1492/+0
that were in the head branch but weren't in SAMBA_2_0 (This used to be commit d7b208786590b5a28618590172b8d523627dda09)
1999-12-12delineation between smb and msrpc more marked. smbd now constructsLuke Leighton1-1/+1
pdus, and then feeds them over either a "local" function call or a "remote" function call to an msrpc service. the "remote" msrpc daemon, on the other side of a unix socket, then calls the same "local" function that smbd would, if the msrpc service were being run from inside smbd. this allows a transition from local msrpc services (inside the same smbd process) to remote (over a unix socket). removed reference to pipes_struct in msrpc services. all msrpc processing functions take rpcsrv_struct which is a structure containing state info for the msrpc functions to decode and create pdus. created become_vuser() which does everything not related to connection_struct that become_user() does. removed, as best i could, connection_struct dependencies from the nt spoolss printing code. todo: remove dcinfo from rpcsrv_struct because this stores NETLOGON-specific info on a per-connection basis, and if the connection dies then so does the info, and that's a fairly serious problem. had to put pretty much everything that is in user_struct into parse_creds.c to feed unix user info over to the msrpc daemons. why? because it's expensive to do unix password/group database lookups, and it's definitely expensive to do nt user profile lookups, not to mention pretty difficult and if you did either of these it would introduce a complication / unnecessary interdependency. so, send uid/gid/num_groups/gid_t* + SID+num_rids+domain_group_rids* + unix username + nt username + nt domain + user session key etc. this is the MINIMUM info identified so far that's actually implemented. missing bits include the called and calling netbios names etc. (basically, anything that can be loaded into standard_sub() and standard_sub_basic()...) (This used to be commit aa3c659a8dba0437c17c60055a6ed30fdfecdb6d)
1999-11-27well, i stuffed up the spooler commands.Luke Leighton1-35/+28
(This used to be commit 7a696330586b9ad5157b0c1ab249cc66e9accef7)
1999-11-09debugging rpcclient spoolenum and spooljobs commands. oh, did i forgetLuke Leighton1-4/+1
to mention, there's a spooljobs <printer name> command, and it uses command-line completion? prints out NT print jobs really nicely, too. (This used to be commit e6e5caf16c8d120f0c11fa63061f2786098e3357)
1999-11-08preparation for doing a spoolss enum jobs command. had to rewriteLuke Leighton1-2/+2
spoolss_enumjobs parsing code to do read / writes not just writes. (This used to be commit bc659a09f9103eee9616279e27fafacf89dcd9b9)
1999-11-06added rpcclient spoolenum command. enumerates printers.Luke Leighton1-1/+2
spoolss_r_io_enumprinters doesn't decode strings correctly as printer_info_1/2 code has only been written to write structures, not read them. (This used to be commit 135eaa977385cdd5f572a51f654f14d893347d7b)
1999-11-06spoolss openprinterex / closeprinter client-code.Luke Leighton1-16/+19
experimental spoolopen <printer name> command added. jean-francois, f.y.i. i changed the #define for SPOOLSS_OPENPRINTEREX from op code 0x44 to 0x45. (This used to be commit ef7fa58fd3c259c765c3bc82424d4c0f192ec90e)
1999-11-05experimental spoolss rpcclient commandsLuke Leighton1-0/+3
(This used to be commit c86edef90e7c96d5a99be29e2d2a3679ed26d97d)
1999-07-27- enumprintprocessors and enumprintmonitors added.Jean-François Micouleau1-4/+46
- getjob (level 1 and 2) done. - better handling of getprinterdriver (level 2). - added workaround to print PCL files. Now the spoolss code should be compliant with all kind of printers :-) Jean Francois (This used to be commit bf9b639bf9162d61eb152af506dc2c1a7e8a4c85)
1999-06-22Fixed most memory leak and big-endian bug in the spoolss code.Jean-François Micouleau1-4/+44
Also added addform/setform rpc api calls. Now I can add/change forms from the server property dialog box. Jean Francois (This used to be commit 8d73f83b6c112327a51c0df2e96a1866deb13c3a)