summaryrefslogtreecommitdiff
path: root/source3
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2009-03-17 14:45:24 +0100
committerGünther Deschner <gd@samba.org>2009-03-17 18:39:23 +0100
commitd759f9961a30c5dc9920f620b783ffa58daf9b03 (patch)
treee59f20091ffb950dea6b68bab73b00cc347a3e98 /source3
parent47c024fd7516aa940b6b04f903cedff677e5543e (diff)
downloadsamba-d759f9961a30c5dc9920f620b783ffa58daf9b03.tar.gz
samba-d759f9961a30c5dc9920f620b783ffa58daf9b03.tar.bz2
samba-d759f9961a30c5dc9920f620b783ffa58daf9b03.zip
s3-spoolss: move SYSTEMTIME parsing to a more generic place, as suggested.
Guenther
Diffstat (limited to 'source3')
-rw-r--r--source3/include/proto.h4
-rw-r--r--source3/include/rpc_misc.h19
-rw-r--r--source3/include/rpc_spoolss.h19
-rw-r--r--source3/registry/reg_perfcount.c2
-rw-r--r--source3/rpc_parse/parse_misc.c42
-rw-r--r--source3/rpc_parse/parse_spoolss.c43
6 files changed, 64 insertions, 65 deletions
diff --git a/source3/include/proto.h b/source3/include/proto.h
index ddc6ed1fad..fea9588775 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -5677,6 +5677,8 @@ NTSTATUS cli_do_rpc_ndr(struct rpc_pipe_client *cli,
bool smb_io_time(const char *desc, NTTIME *nttime, prs_struct *ps, int depth);
bool smb_io_nttime(const char *desc, prs_struct *ps, int depth, NTTIME *nttime);
+bool smb_io_system_time(const char *desc, prs_struct *ps, int depth, SYSTEMTIME *systime);
+bool make_systemtime(SYSTEMTIME *systime, struct tm *unixtime);
bool smb_io_dom_sid(const char *desc, DOM_SID *sid, prs_struct *ps, int depth);
bool smb_io_uuid(const char *desc, struct GUID *uuid,
prs_struct *ps, int depth);
@@ -5826,8 +5828,6 @@ bool sec_io_desc_buf(const char *desc, SEC_DESC_BUF **ppsdb, prs_struct *ps, int
/* The following definitions come from rpc_parse/parse_spoolss.c */
-bool spoolss_io_system_time(const char *desc, prs_struct *ps, int depth, SYSTEMTIME *systime);
-bool make_systemtime(SYSTEMTIME *systime, struct tm *unixtime);
bool spoolss_io_devmode(const char *desc, prs_struct *ps, int depth, DEVICEMODE *devmode);
uint32 spoolss_size_printer_enum_values(PRINTER_ENUM_VALUES *p);
bool make_spoolss_buffer5(TALLOC_CTX *mem_ctx, BUFFER5 *buf5, uint32 len, uint16 *src);
diff --git a/source3/include/rpc_misc.h b/source3/include/rpc_misc.h
index 1e9d43bfa0..37dffbb005 100644
--- a/source3/include/rpc_misc.h
+++ b/source3/include/rpc_misc.h
@@ -138,4 +138,23 @@ typedef struct { /* UNISTR3 - XXXX not sure about this structure */
UNISTR str;
} UNISTR3;
+/*
+ * I'm really wondering how many different time formats
+ * I will have to cope with
+ *
+ * JFM, 09/13/98 In a mad mood ;-(
+*/
+typedef struct systemtime
+{
+ uint16 year;
+ uint16 month;
+ uint16 dayofweek;
+ uint16 day;
+ uint16 hour;
+ uint16 minute;
+ uint16 second;
+ uint16 milliseconds;
+}
+SYSTEMTIME;
+
#endif /* _RPC_MISC_H */
diff --git a/source3/include/rpc_spoolss.h b/source3/include/rpc_spoolss.h
index 0d98afba25..29f505ab59 100644
--- a/source3/include/rpc_spoolss.h
+++ b/source3/include/rpc_spoolss.h
@@ -233,25 +233,6 @@ typedef struct devicemode
}
DEVICEMODE;
-/*
- * I'm really wondering how many different time formats
- * I will have to cope with
- *
- * JFM, 09/13/98 In a mad mood ;-(
-*/
-typedef struct systemtime
-{
- uint16 year;
- uint16 month;
- uint16 dayofweek;
- uint16 day;
- uint16 hour;
- uint16 minute;
- uint16 second;
- uint16 milliseconds;
-}
-SYSTEMTIME;
-
/********************************************/
typedef struct printer_enum_values
diff --git a/source3/registry/reg_perfcount.c b/source3/registry/reg_perfcount.c
index fed3cbdd52..14716b2f53 100644
--- a/source3/registry/reg_perfcount.c
+++ b/source3/registry/reg_perfcount.c
@@ -1114,7 +1114,7 @@ static bool _reg_perfcount_marshall_perf_data_block(prs_struct *ps, PERF_DATA_BL
return False;
if(!prs_uint32("DefaultObject", ps, depth, &block.DefaultObject))
return False;
- if(!spoolss_io_system_time("SystemTime", ps, depth, &block.SystemTime))
+ if(!smb_io_system_time("SystemTime", ps, depth, &block.SystemTime))
return False;
if(!prs_uint32("Padding", ps, depth, &block.Padding))
return False;
diff --git a/source3/rpc_parse/parse_misc.c b/source3/rpc_parse/parse_misc.c
index 38d5b95376..e948afde87 100644
--- a/source3/rpc_parse/parse_misc.c
+++ b/source3/rpc_parse/parse_misc.c
@@ -68,6 +68,48 @@ bool smb_io_nttime(const char *desc, prs_struct *ps, int depth, NTTIME *nttime)
}
/*******************************************************************
+********************************************************************/
+
+bool smb_io_system_time(const char *desc, prs_struct *ps, int depth, SYSTEMTIME *systime)
+{
+ if(!prs_uint16("year", ps, depth, &systime->year))
+ return False;
+ if(!prs_uint16("month", ps, depth, &systime->month))
+ return False;
+ if(!prs_uint16("dayofweek", ps, depth, &systime->dayofweek))
+ return False;
+ if(!prs_uint16("day", ps, depth, &systime->day))
+ return False;
+ if(!prs_uint16("hour", ps, depth, &systime->hour))
+ return False;
+ if(!prs_uint16("minute", ps, depth, &systime->minute))
+ return False;
+ if(!prs_uint16("second", ps, depth, &systime->second))
+ return False;
+ if(!prs_uint16("milliseconds", ps, depth, &systime->milliseconds))
+ return False;
+
+ return True;
+}
+
+/*******************************************************************
+********************************************************************/
+
+bool make_systemtime(SYSTEMTIME *systime, struct tm *unixtime)
+{
+ systime->year=unixtime->tm_year+1900;
+ systime->month=unixtime->tm_mon+1;
+ systime->dayofweek=unixtime->tm_wday;
+ systime->day=unixtime->tm_mday;
+ systime->hour=unixtime->tm_hour;
+ systime->minute=unixtime->tm_min;
+ systime->second=unixtime->tm_sec;
+ systime->milliseconds=0;
+
+ return True;
+}
+
+/*******************************************************************
Reads or writes a DOM_SID structure.
********************************************************************/
diff --git a/source3/rpc_parse/parse_spoolss.c b/source3/rpc_parse/parse_spoolss.c
index ae73c35c0a..c082af6f09 100644
--- a/source3/rpc_parse/parse_spoolss.c
+++ b/source3/rpc_parse/parse_spoolss.c
@@ -28,49 +28,6 @@
/*******************************************************************
-This should be moved in a more generic lib.
-********************************************************************/
-
-bool spoolss_io_system_time(const char *desc, prs_struct *ps, int depth, SYSTEMTIME *systime)
-{
- if(!prs_uint16("year", ps, depth, &systime->year))
- return False;
- if(!prs_uint16("month", ps, depth, &systime->month))
- return False;
- if(!prs_uint16("dayofweek", ps, depth, &systime->dayofweek))
- return False;
- if(!prs_uint16("day", ps, depth, &systime->day))
- return False;
- if(!prs_uint16("hour", ps, depth, &systime->hour))
- return False;
- if(!prs_uint16("minute", ps, depth, &systime->minute))
- return False;
- if(!prs_uint16("second", ps, depth, &systime->second))
- return False;
- if(!prs_uint16("milliseconds", ps, depth, &systime->milliseconds))
- return False;
-
- return True;
-}
-
-/*******************************************************************
-********************************************************************/
-
-bool make_systemtime(SYSTEMTIME *systime, struct tm *unixtime)
-{
- systime->year=unixtime->tm_year+1900;
- systime->month=unixtime->tm_mon+1;
- systime->dayofweek=unixtime->tm_wday;
- systime->day=unixtime->tm_mday;
- systime->hour=unixtime->tm_hour;
- systime->minute=unixtime->tm_min;
- systime->second=unixtime->tm_sec;
- systime->milliseconds=0;
-
- return True;
-}
-
-/*******************************************************************
* read or write a DEVICEMODE struct.
* on reading allocate memory for the private member
********************************************************************/