diff options
author | Jeremy Allison <jra@samba.org> | 2000-07-31 20:41:51 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2000-07-31 20:41:51 +0000 |
commit | 49fcb300de40d6da8682b485fd2c51236bcbb3dd (patch) | |
tree | 22f8c92ec9d8e81f67fadf5ac3e7b0ba81cdceef /source3/tdb | |
parent | 2759822674174007dafa84c99e77e0c5919d6c60 (diff) | |
download | samba-49fcb300de40d6da8682b485fd2c51236bcbb3dd.tar.gz samba-49fcb300de40d6da8682b485fd2c51236bcbb3dd.tar.bz2 samba-49fcb300de40d6da8682b485fd2c51236bcbb3dd.zip |
Added John Reilly's enumports/addprinter/delprinter scripting code plus the
fix for the Win9x printer drivers.
Changed command names to add "command" string on the end for some consistancy
with the other scripting commands.
Added '%P' option to tdbpack/unpack to store long comment string.
Made port name be "Samba Printer Port" if no enum port script given.
Fixed prs_uint32_pre code to cope with null args.
Jeremy.
(This used to be commit 902ada63799cf27924c72e24e7593a8c9fb5eba9)
Diffstat (limited to 'source3/tdb')
-rw-r--r-- | source3/tdb/tdbutil.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/source3/tdb/tdbutil.c b/source3/tdb/tdbutil.c index 3e973337b9..e426aa51cd 100644 --- a/source3/tdb/tdbutil.c +++ b/source3/tdb/tdbutil.c @@ -136,6 +136,14 @@ size_t tdb_pack(char *buf, int bufsize, char *fmt, ...) SIVAL(buf, 0, d); } break; + case 'P': + s = va_arg(ap,char *); + w = strlen(s); + len = w + 1; + if (bufsize >= len) { + memcpy(buf, s, len); + } + break; case 'f': s = va_arg(ap,char *); w = strlen(s); @@ -211,6 +219,12 @@ int tdb_unpack(char *buf, int bufsize, char *fmt, ...) if (bufsize < len) goto no_space; *p = (void *)IVAL(buf, 0); break; + case 'P': + s = va_arg(ap,char *); + len = strlen(buf) + 1; + if (bufsize < len || len > sizeof(pstring)) goto no_space; + memcpy(s, buf, len); + break; case 'f': s = va_arg(ap,char *); len = strlen(buf) + 1; |