summaryrefslogtreecommitdiffstats
path: root/librpc
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2009-03-18 16:06:40 +0100
committerGünther Deschner <gd@samba.org>2009-03-18 17:03:38 +0100
commit9fb3b11b9846ec259f9fffd629db59567db10f18 (patch)
treeb08cc79cbdbd0b49c1d420f78585528ab566151f /librpc
parentc39be71ac70155c19098737d6dce42772b5bf9c6 (diff)
downloadsamba-9fb3b11b9846ec259f9fffd629db59567db10f18.tar.gz
samba-9fb3b11b9846ec259f9fffd629db59567db10f18.tar.xz
samba-9fb3b11b9846ec259f9fffd629db59567db10f18.zip
spoolss: add custom ndr_print_spoolss_Field.
Guenther (cherry picked from commit 65151077b31e8cc4a8bfedd8fb4a186804d36b9a)
Diffstat (limited to 'librpc')
-rw-r--r--librpc/ndr/ndr_spoolss_buf.c22
-rw-r--r--librpc/ndr/ndr_spoolss_buf.h1
2 files changed, 23 insertions, 0 deletions
diff --git a/librpc/ndr/ndr_spoolss_buf.c b/librpc/ndr/ndr_spoolss_buf.c
index f30c17b5697..06f9b6f6f57 100644
--- a/librpc/ndr/ndr_spoolss_buf.c
+++ b/librpc/ndr/ndr_spoolss_buf.c
@@ -1185,3 +1185,25 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
}
return NDR_ERR_SUCCESS;
}
+
+void ndr_print_spoolss_Field(struct ndr_print *ndr, const char *name, const union spoolss_Field *r)
+{
+ int level;
+ level = ndr_print_get_switch_value(ndr, r);
+ ndr_print_union(ndr, name, level, "spoolss_Field");
+ switch (level) {
+ case PRINTER_NOTIFY_TYPE:
+ ndr_print_spoolss_PrintNotifyField(ndr, "field", r->field);
+ break;
+
+ case JOB_NOTIFY_TYPE:
+ ndr_print_spoolss_JobNotifyField(ndr, "field", r->field);
+ break;
+
+ default:
+ ndr_print_uint16(ndr, "field", r->field);
+ break;
+
+ }
+}
+
diff --git a/librpc/ndr/ndr_spoolss_buf.h b/librpc/ndr/ndr_spoolss_buf.h
index 842d8c4d095..aa6e277c5f3 100644
--- a/librpc/ndr/ndr_spoolss_buf.h
+++ b/librpc/ndr/ndr_spoolss_buf.h
@@ -49,6 +49,7 @@ uint32_t _ndr_size_spoolss_DeviceMode(struct spoolss_DeviceMode *devmode, struct
size_t ndr_size_spoolss_StringArray(const struct spoolss_StringArray *r, struct smb_iconv_convenience *ic, int flags);
_PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo101(struct ndr_push *ndr, int ndr_flags, const struct spoolss_DriverInfo101 *r);
_PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr, int ndr_flags, struct spoolss_DriverInfo101 *r);
+void ndr_print_spoolss_Field(struct ndr_print *ndr, const char *name, const union spoolss_Field *r);
#undef _PRINTF_ATTRIBUTE
#define _PRINTF_ATTRIBUTE(a1, a2)