summaryrefslogtreecommitdiff
path: root/source3/rpc_parse/parse_misc.c
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/rpc_parse/parse_misc.c
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/rpc_parse/parse_misc.c')
-rw-r--r--source3/rpc_parse/parse_misc.c42
1 files changed, 42 insertions, 0 deletions
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.
********************************************************************/