summaryrefslogtreecommitdiffstats
path: root/source/rpc_server/srv_spoolss_nt.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2000-08-31 19:04:51 +0000
committerJeremy Allison <jra@samba.org>2000-08-31 19:04:51 +0000
commit596c21a2af0309ce43a5e52a343a671036d05ebf (patch)
tree9f741d8b78a9ff0f36f271a8f8879ca080bc4d26 /source/rpc_server/srv_spoolss_nt.c
parent155c7c37398f5f9457ea249ded74f425b90ac9a0 (diff)
downloadsamba-596c21a2af0309ce43a5e52a343a671036d05ebf.tar.gz
samba-596c21a2af0309ce43a5e52a343a671036d05ebf.tar.xz
samba-596c21a2af0309ce43a5e52a343a671036d05ebf.zip
Implemented DELETEFORM tested using Gerald's Win32 test code :-).
Jeremy.
Diffstat (limited to 'source/rpc_server/srv_spoolss_nt.c')
-rw-r--r--source/rpc_server/srv_spoolss_nt.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/source/rpc_server/srv_spoolss_nt.c b/source/rpc_server/srv_spoolss_nt.c
index 8f58f72d737..0938b37ab34 100644
--- a/source/rpc_server/srv_spoolss_nt.c
+++ b/source/rpc_server/srv_spoolss_nt.c
@@ -4615,6 +4615,31 @@ uint32 _spoolss_addform( POLICY_HND *handle,
/****************************************************************************
****************************************************************************/
+uint32 _spoolss_deleteform( POLICY_HND *handle, UNISTR2 *form_name)
+{
+ int count=0;
+ uint32 ret = 0;
+ nt_forms_struct *list=NULL;
+ Printer_entry *Printer = find_printer_index_by_hnd(handle);
+
+ DEBUG(5,("spoolss_deleteform\n"));
+
+ if (!OPEN_HANDLE(Printer)) {
+ DEBUG(0,("_spoolss_deleteform: Invalid handle (%s).\n", OUR_HANDLE(handle)));
+ return ERROR_INVALID_HANDLE;
+ }
+
+ count = get_ntforms(&list);
+ if(!delete_a_form(&list, form_name, &count, &ret))
+ return ERROR_INVALID_PARAMETER;
+
+ safe_free(list);
+
+ return ret;
+}
+
+/****************************************************************************
+****************************************************************************/
uint32 _spoolss_setform( POLICY_HND *handle,
const UNISTR2 *uni_name,
uint32 level,