diff options
author | Andrew Tridgell <tridge@samba.org> | 1998-10-04 10:14:21 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 1998-10-04 10:14:21 +0000 |
commit | a1b002fcbe5daa91ce8bc94b73760e2428238315 (patch) | |
tree | 005af724097b775b4b277b20590446eb91af7c7d /source3/libsmb | |
parent | 6760e69a68571e01ee57b959193a56278962a23c (diff) | |
download | samba-a1b002fcbe5daa91ce8bc94b73760e2428238315.tar.gz samba-a1b002fcbe5daa91ce8bc94b73760e2428238315.tar.bz2 samba-a1b002fcbe5daa91ce8bc94b73760e2428238315.zip |
add support for unlink() on printer shares in smbwrapper. unlink()
will remove the job from the pirnt queue.
(This used to be commit 7bd738c30a09a211fd14a8544309efeec17c66f5)
Diffstat (limited to 'source3/libsmb')
-rw-r--r-- | source3/libsmb/clientgen.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/source3/libsmb/clientgen.c b/source3/libsmb/clientgen.c index 0e01370f5d..e4aa15c6eb 100644 --- a/source3/libsmb/clientgen.c +++ b/source3/libsmb/clientgen.c @@ -2495,6 +2495,43 @@ BOOL cli_establish_connection(struct cli_state *cli, } +/**************************************************************************** + cancel a print job + ****************************************************************************/ +int cli_printjob_del(struct cli_state *cli, int job) +{ + char *rparam = NULL; + char *rdata = NULL; + char *p; + int rdrcnt,rprcnt, ret = -1; + pstring param; + + bzero(param,sizeof(param)); + + p = param; + SSVAL(p,0,81); /* DosPrintJobDel() */ + p += 2; + pstrcpy(p,"W"); + p = skip_string(p,1); + pstrcpy(p,""); + p = skip_string(p,1); + SSVAL(p,0,job); + p += 2; + + if (cli_api(cli, + param, PTR_DIFF(p,param), 1024, /* Param, length, maxlen */ + NULL, 0, CLI_BUFFER_SIZE, /* data, length, maxlen */ + &rparam, &rprcnt, /* return params, length */ + &rdata, &rdrcnt)) { /* return data, length */ + ret = SVAL(rparam,0); + } + + if (rparam) free(rparam); + if (rdata) free(rdata); + + return ret; +} + /**************************************************************************** call fn() on each entry in a print queue |