socsvn commit: r256036 - in soc2013/dpl/head/lib/libzcap: . contrib test zlibworker

dpl at FreeBSD.org dpl at FreeBSD.org
Fri Aug 16 19:34:23 UTC 2013


Author: dpl
Date: Fri Aug 16 19:34:22 2013
New Revision: 256036
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=256036

Log:
  I'm writing a test bed to check that the functions are fine.
  Right now, I'm having some problems when sending back the results from zlibworker.
  

Added:
  soc2013/dpl/head/lib/libzcap/test/functionstest.c
  soc2013/dpl/head/lib/libzcap/zlibworker/commands.c
Deleted:
  soc2013/dpl/head/lib/libzcap/contrib/
  soc2013/dpl/head/lib/libzcap/zlibworker/comands.c
Modified:
  soc2013/dpl/head/lib/libzcap/Makefile
  soc2013/dpl/head/lib/libzcap/adler32.c
  soc2013/dpl/head/lib/libzcap/capsicum.c
  soc2013/dpl/head/lib/libzcap/capsicum.h
  soc2013/dpl/head/lib/libzcap/commands.c
  soc2013/dpl/head/lib/libzcap/commands.h
  soc2013/dpl/head/lib/libzcap/crc32.c
  soc2013/dpl/head/lib/libzcap/deflate.c
  soc2013/dpl/head/lib/libzcap/gzlib.c
  soc2013/dpl/head/lib/libzcap/gzread.c
  soc2013/dpl/head/lib/libzcap/gzwrite.c
  soc2013/dpl/head/lib/libzcap/infback.c
  soc2013/dpl/head/lib/libzcap/inflate.c
  soc2013/dpl/head/lib/libzcap/zlibworker/Makefile
  soc2013/dpl/head/lib/libzcap/zlibworker/zlibworker.c
  soc2013/dpl/head/lib/libzcap/zutil.c

Modified: soc2013/dpl/head/lib/libzcap/Makefile
==============================================================================
--- soc2013/dpl/head/lib/libzcap/Makefile	Fri Aug 16 18:47:18 2013	(r256035)
+++ soc2013/dpl/head/lib/libzcap/Makefile	Fri Aug 16 19:34:22 2013	(r256036)
@@ -3,23 +3,20 @@
 #
 
 #TODEL
-CFLAGS+= -Wall -g -v -fno-color-diagnostics
+CFLAGS+= -Wall -g -fno-color-diagnostics
 
 LIB=		zcap
 SHLIBDIR?=	/lib
 SHLIB_MAJOR=	6
-MAN=		zcaplib.3
-
-#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
-#CFLAGS=-g -DDEBUG
-#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
-#           -Wstrict-prototypes -Wmissing-prototypes
+NO_MAN=
 
 CFLAGS+=	-DHAS_snprintf -DHAS_vsnprintf -I${.CURDIR}
 WARNS?=		3
 
 CLEANFILES+=	example.o example foo.gz minigzip.o minigzip
 
+SRCS+=		capsicum.c
+SRCS+=		commands.c
 SRCS+=		adler32.c
 SRCS+=		compress.c
 SRCS+=		crc32.c
@@ -36,29 +33,13 @@
 SRCS+=		uncompr.c
 SRCS+=		zopen.c
 SRCS+=		zutil.c
-SRCS+=		capsicum.c
-SRCS+=		commands.c
 
-#.if ${MACHINE_ARCH} == "i386" && ${MACHINE_CPU:M*i686*}
-#.PATH:		${.CURDIR}/contrib/asm686
-#SRCS+=		match.S
-#CFLAGS+=	-DASMV -DNO_UNDERLINE
-#ACFLAGS+=	-Wa,--noexecstack
-#.endif
-
-#.if ${MACHINE_ARCH} == "amd64"
-#.PATH:		${.CURDIR}/contrib/gcc_gvmat64
-#SRCS+=		gvmat64.S
-#CFLAGS+=	-DASMV -DNO_UNDERLINE
-#ACFLAGS+=	-Wa,--noexecstack
-#.endif
+SUBDIR= zlibworker
 
 VERSION_DEF=	${.CURDIR}/Versions.def
 SYMBOL_MAPS=	${.CURDIR}/Symbol.map
 CFLAGS+=	-DSYMBOL_VERSIONING
 
-INCS=		zconf.h zlib.h
-
 minigzip:	all minigzip.o
 	$(CC) -o minigzip minigzip.o -L. -lz
 
@@ -71,7 +52,3 @@
 		echo hello world | ./minigzip | ./minigzip -d )
 
 .include <bsd.lib.mk>
-
-## XXX: clang integrated-as doesn't grok .intel_syntax directives yet
-#ACFLAGS.gvmat64.S=	${CLANG_NO_IAS}
-#ACFLAGS+=		${ACFLAGS.${.IMPSRC:T}}

Modified: soc2013/dpl/head/lib/libzcap/adler32.c
==============================================================================
--- soc2013/dpl/head/lib/libzcap/adler32.c	Fri Aug 16 18:47:18 2013	(r256035)
+++ soc2013/dpl/head/lib/libzcap/adler32.c	Fri Aug 16 19:34:22 2013	(r256036)
@@ -11,55 +11,7 @@
 
 local uLong adler32_combine_ OF((uLong adler1, uLong adler2, z_off64_t len2));
 
-#define BASE 65521      /* largest prime smaller than 65536 */
-#define NMAX 5552
-/* NMAX is the largest n such that 255n(n+1)/2 + (n+1)(BASE-1) <= 2^32-1 */
-
-#define DO1(buf,i)  {adler += (buf)[i]; sum2 += adler;}
-#define DO2(buf,i)  DO1(buf,i); DO1(buf,i+1);
-#define DO4(buf,i)  DO2(buf,i); DO2(buf,i+2);
-#define DO8(buf,i)  DO4(buf,i); DO4(buf,i+4);
-#define DO16(buf)   DO8(buf,0); DO8(buf,8);
-
-/* use NO_DIVIDE if your processor does not do division in hardware --
-   try it both ways to see which is faster */
-#ifdef NO_DIVIDE
-/* note that this assumes BASE is 65521, where 65536 % 65521 == 15
-   (thank you to John Reiser for pointing this out) */
-#  define CHOP(a) \
-    do { \
-        unsigned long tmp = a >> 16; \
-        a &= 0xffffUL; \
-        a += (tmp << 4) - tmp; \
-    } while (0)
-#  define MOD28(a) \
-    do { \
-        CHOP(a); \
-        if (a >= BASE) a -= BASE; \
-    } while (0)
-#  define MOD(a) \
-    do { \
-        CHOP(a); \
-        MOD28(a); \
-    } while (0)
-#  define MOD63(a) \
-    do { /* this assumes a is not negative */ \
-        z_off64_t tmp = a >> 32; \
-        a &= 0xffffffffL; \
-        a += (tmp << 8) - (tmp << 5) + tmp; \
-        tmp = a >> 16; \
-        a &= 0xffffL; \
-        a += (tmp << 4) - tmp; \
-        tmp = a >> 16; \
-        a &= 0xffffL; \
-        a += (tmp << 4) - tmp; \
-        if (a >= BASE) a -= BASE; \
-    } while (0)
-#else
-#  define MOD(a) a %= BASE
-#  define MOD28(a) a %= BASE
-#  define MOD63(a) a %= BASE
-#endif
+
 
 /* ========================================================================= */
 extern uLong zcapcmd_adler32();
@@ -68,16 +20,15 @@
     const Bytef *buf;
     uInt len;
 {
-#define MAX (5*1024)
 	int ret = 0;
 	/* We have to send the buffers value back and forth */
 	/* Send packets of 5kb size at most. */
-	while(len > MAX) {
-		ret += zcapcmd_adler32(file, buf, MAX);
-		buf += MAX;
-		len -= MAX;
+	while(len > MAXLEN) {
+		ret += zcapcmd_adler32(adler, buf, MAXLEN);
+		buf += MAXLEN;
+		len -= MAXLEN;
 	}
-	ret += zcapcmd_adler32(file, buf, len);
+	ret += zcapcmd_adler32(adler, buf, len);
 
 	return ret;
 }

Modified: soc2013/dpl/head/lib/libzcap/capsicum.c
==============================================================================
--- soc2013/dpl/head/lib/libzcap/capsicum.c	Fri Aug 16 18:47:18 2013	(r256035)
+++ soc2013/dpl/head/lib/libzcap/capsicum.c	Fri Aug 16 19:34:22 2013	(r256036)
@@ -12,7 +12,7 @@
 
 #define SUM 0
 
-pid_t pid = 0;
+pid_t pid  = 0;
 int sv[2];
 
 int startChild(void);
@@ -20,16 +20,17 @@
 nvlist_t * sendCommand(nvlist_t *nvl);
 
 int
-startChild()
+startChild(void)
 {
 	if (socketpair(PF_LOCAL, SOCK_STREAM, 0, sv) < 0 )
 		perror("socketpair");
 
 	if( (pid = fork()) == 0 ){
 		close(STDIN_FILENO);
-		close(STDOUT_FILENO);
+		cap_rights_limit(STDOUT_FILENO, CAP_READ);
+		cap_rights_limit(STDERR_FILENO, CAP_WRITE);
 
-		dup(sv[1]); /* stdin is now the socket */
+		dup(sv[1]); /* 3 is now the socket */
 		close(sv[0]);
 		close(sv[1]);
 		
@@ -55,7 +56,6 @@
 		perror("nvlist_send()");
 		return NULL;
 	}
-
 	nvlist_destroy(nvl);
 
 	/* recv results */
@@ -63,10 +63,11 @@
 		perror("nvlist_send()");
 		return NULL;
 	}
+	printf("done sending/recving\n");
 
 	return (nvl);
 }
 
-void killChild(){
+void killChild(void){
 	kill(pid, SIGKILL);
 }
\ No newline at end of file

Modified: soc2013/dpl/head/lib/libzcap/capsicum.h
==============================================================================
--- soc2013/dpl/head/lib/libzcap/capsicum.h	Fri Aug 16 18:47:18 2013	(r256035)
+++ soc2013/dpl/head/lib/libzcap/capsicum.h	Fri Aug 16 19:34:22 2013	(r256036)
@@ -1,15 +1,22 @@
 /*
  * With Capsicum, we get a compartmentalized, and securer lib.
  */
-#if __FreeBSD_version >= 900041
-#	define CAPSICUM
-#	include <unistd.h>
-#	include <stdlib.h>
-#	include <signal.h>
-#	include <sys/capability.h>
-#	include <sys/types.h>
-#	include <sys/wait.h>
-#	include <sys/socket.h>
-#	include <nv.h>
-#	include "commands.h"
-#endif
+#define CAPSICUM
+#include <unistd.h>
+#include <stdlib.h>
+#include <signal.h>
+#include <sys/capability.h>
+#include <sys/types.h>
+#include <sys/wait.h>
+#include <sys/socket.h>
+#include <nv.h>
+#include "commands.h"
+
+#define MAXLEN (5*1024)
+
+extern int pid;
+extern int sv[2];
+
+extern int startChild(void);
+extern void killChild(void);
+extern nvlist_t * sendCommand(nvlist_t *nvl);

Modified: soc2013/dpl/head/lib/libzcap/commands.c
==============================================================================
--- soc2013/dpl/head/lib/libzcap/commands.c	Fri Aug 16 18:47:18 2013	(r256035)
+++ soc2013/dpl/head/lib/libzcap/commands.c	Fri Aug 16 19:34:22 2013	(r256036)
@@ -3,50 +3,54 @@
  */
 
 #include "zlib.h"
-#include "capsicum.c"
 #include "commands.h"
+#include "capsicum.h"
 
 #include <string.h>
 
 
+void checkChild(void);
+void destroy(void);
+
 /* Basic functions */
 int zcapcmd_deflateInit(z_streamp strm, int level, int method, int windowBits,
-                        int memLevel, int strategy, const char * version,
-                        int stream_size);
+						int memLevel, int strategy, const char * version,
+						int stream_size);
 int zcapcmd_deflate(z_streamp strm, int flush);
 int zcapcmd_deflateEnd(z_streamp strm);
-int zcapcmd_inflateInit(z_streamp strm);
+int zcapcmd_inflateInit(z_streamp strm, int windowBits, const char *version,
+						int stream_size);
 int zcapcmd_inflate(z_streamp strm, int flush);
 int zcapcmd_inflateEnd(z_streamp strm);
 
 /* Advanced functions */
 int zcapcmd_deflateSetDictionary(z_streamp strm, const Bytef *dictionary,
-                                 uInt  dictLength);
+	 					uInt  dictLength);
 int zcapcmd_deflateCopy(z_streamp dest, z_streamp source);
 int zcapcmd_deflateReset(z_streamp strm);
 int zcapcmd_deflateParams(z_streamp strm, int level, int strategy);
 int zcapcmd_deflateTune(z_streamp strm, int good_length, int max_lazy,
-                                        int nice_length, int max_chain);
+						int nice_length, int max_chain);
 int zcapcmd_deflateBound(z_streamp strm, uLong sourceLen);
 int zcapcmd_deflatePending(z_streamp strm, unsigned *pending, int *bits);
 int zcapcmd_deflatePrime(z_streamp strm, int bits, int value);
 int zcapcmd_deflateSetHeader(z_streamp strm, gz_headerp head);
 
 int zcapcmd_inflateSetDictionary(z_streamp strm, const Bytef *dictionary,
-                                 uInt dictLength);
+						uInt dictLength);
 int zcapcmd_inflateGetDictionary(z_streamp strm, const Bytef *dictionary,
-                                 uInt dictLength);
+						uInt *dictLength);
 int zcapcmd_inflateSync(z_streamp strm);
 int zcapcmd_inflateCopy(z_streamp strm, z_streamp source);
 int zcapcmd_inflateReset(z_streamp strm);
 int zcapcmd_inflateReset2(z_streamp strm, int windowBits);
 int zcapcmd_inflatePrime(z_streamp strm, int bits, int value);
-int zcapcmd_inflateMark(z_streamp strm);
+long zcapcmd_inflateMark(z_streamp strm);
 int zcapcmd_inflateGetHeader(z_streamp strm, gz_headerp head);
 int zcapcmd_inflateBackInit(z_streamp strm, int windowBits,
-                            unsigned char *window);
+						unsigned char *window);
 int zcapcmd_inflateBack(z_streamp strm, in_func in, void *in_desc,
-                        out_func out, void *out_desc);
+						out_func out, void *out_desc);
 int zcapcmd_inflateBackEnd(z_streamp strm);
 uLong zcapcmd_zlibCompileFlags(void);
 
@@ -59,7 +63,7 @@
 int zcapcmd_gzsetparams(gzFile file, int level, int strategy);
 int zcapcmd_gzread(gzFile file, voidp buf, unsigned len);
 int zcapcmd_gzwrite(gzFile file, voidp buf, unsigned len);
-int zcapcmd_gzprintf(gzFile file, const char *format, ...);
+int zcapcmd_gzprintf(gzFile file, const char *str);
 int zcapcmd_gzputs(gzFile file, const char *s);
 char *zcapcmd_gzgets(gzFile file, char *buf, int len);
 int zcapcmd_gzputc(gzFile file, int c);
@@ -75,6 +79,7 @@
 uLong zcapcmd_crc32(uLong crc, const Bytef *buf, uInt len);
 uLong zcapcmd_crc32_combine(uLong crc1, uLong crc2, z_off64_t len2);
 
+
 extern pid_t pid;
 extern nvlist_t *sendCommand(nvlist_t *);
 extern void * data;
@@ -82,9 +87,11 @@
 nvlist_t *nvl, *args, *result;
 size_t gzfilesize = sizeof(struct gzFile_s);
 size_t gzheadersize = sizeof(struct gz_header_s);
-size_t zstreamsize = sizeof(z_stream);
+size_t z_streamsize = sizeof(z_stream);
+
 
-void checkChild(void) {
+void
+checkChild(void) {
 	if (pid == 0)
 		startChild();
 }
@@ -98,10 +105,9 @@
 
 int
 zcapcmd_deflateInit(z_streamp strm, int level, int method, int windowBits,
-    int memLevel, int strategy, const char * version, int stream_size)
+	int memLevel, int strategy, const char * version, int stream_size)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -112,7 +118,7 @@
 	}
 	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATEINIT);
 	/* No worries here */
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_number(args, "level", level);
 	nvlist_add_number(args, "method", method);
 	nvlist_add_number(args, "windowBits", windowBits);
@@ -131,8 +137,8 @@
 	   buffers, and sync: next_in, avail_in, total_in, next_out,
 	   avail_out, total_out. */
 	/* Supposing there's already space reserved for z_stream */
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	char *msg = nvlist_take_string(result, "msg");
 	memcpy(strm->msg, msg, strlen(msg)+1);
 	destroy();
@@ -140,10 +146,36 @@
 }
 
 int
+zcapcmd_deflate(z_streamp strm, int flush)
+{
+	uLong ret;
+	
+	checkChild();
+
+	if( (args = nvlist_create(0)) == NULL ||
+		(nvl = nvlist_create(0)) == NULL ) {
+		perror("nvlist_create");
+		return(0);
+	}
+	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATEINIT);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
+	nvlist_add_nvlist(nvl, "args", args);
+
+	result = sendCommand(nvl);
+
+	ret = nvlist_take_number(result, "result");
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	/* Supposing there's already space reserved for z_stream */
+	memcpy(strm, newstrm, z_streamsize);
+	destroy();
+	return(ret);
+}
+
+
+int
 zcapcmd_deflateEnd(z_streamp strm)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -153,15 +185,15 @@
 		return(0);
 	}
 	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATEINIT);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_nvlist(nvl, "args", args);
 
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
 	/* Supposing there's already space reserved for z_stream */
-	memcpy(strm, newstrm, zstreamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
@@ -171,7 +203,6 @@
 	const char *version, int stream_size)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -182,7 +213,7 @@
 	}
 	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATEINIT);
 	/* No worries here */
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_number(args, "windowBits", windowBits);
 	nvlist_add_string(args, "version", version);
 	nvlist_add_number(args, "stream_size", stream_size);
@@ -191,8 +222,8 @@
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	char *msg = nvlist_take_string(result, "msg");
 	memcpy(strm->msg, msg, strlen(msg)+1);
 	destroy();
@@ -200,10 +231,9 @@
 }
 
 int
-zcapcmd_inflateEnd(z_streamp strm)
+zcapcmd_inflate(z_streamp strm, int flush)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -213,26 +243,23 @@
 		return(0);
 	}
 	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATEINIT);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_nvlist(nvl, "args", args);
 
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	/* Supposing there's already space reserved for z_stream */
+	memcpy(strm, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
 
-/* Advanced functions */
 int
-zcapcmd_deflateSetDictionary(z_streamp strm, 
-	const Bytef *dictionary, uInt dictLength)
+zcapcmd_inflateEnd(z_streamp strm)
 {
-	/* XXX */
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -241,28 +268,26 @@
 		perror("nvlist_create");
 		return(0);
 	}
-	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATECOPY);
-	nvlist_add_binary(args, "dictionary", *dictionary, dictLength);
-	nvlist_add_number(args, "dictLength", dictLength);
+	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATEINIT);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_nvlist(nvl, "args", args);
 
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	if (ret == Z_OK)
-		dataplace = malloc(zstreamsize);
-	z_stream strm = nvlist_take_binary(result, "newstrm", zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
 
+/* Advanced functions */
 int
-zcapcmd_deflateGetDictionary(z_streamp strm,
-    const Bytef *dictionary, uInt *dictLength)
+zcapcmd_deflateSetDictionary(z_streamp strm, 
+	const Bytef *dictionary, uInt dictLength)
 {
 	/* XXX */
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -271,7 +296,7 @@
 		perror("nvlist_create");
 		return(0);
 	}
-	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATECOPY);
+	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATESETDICTIONARY);
 	nvlist_add_binary(args, "dictionary", *dictionary, dictLength);
 	nvlist_add_number(args, "dictLength", dictLength);
 	nvlist_add_nvlist(nvl, "args", args);
@@ -279,9 +304,8 @@
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	if (ret == Z_OK)
-		dataplace = malloc(zstreamsize);
-	z_stream strm = nvlist_take_binary(result, "newstrm", zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
@@ -290,7 +314,6 @@
 zcapcmd_deflateCopy(z_streamp dest, z_streamp source)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -300,16 +323,16 @@
 		return(0);
 	}
 	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATECOPY);
-	nvlist_add_binary(args, "dest", *dest, zstreamsize);
-	nvlist_add_binary(args, "source", *source, zstreamsize);
+	nvlist_add_binary(args, "dest", (void *)dest, z_streamsize);
+	nvlist_add_binary(args, "source", (void *)source, z_streamsize);
 	nvlist_add_nvlist(nvl, "args", args);
 
 	/* The two z_streamp are now copied at the worker. */
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(dest, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
@@ -318,7 +341,6 @@
 zcapcmd_deflateReset(z_streamp strm)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -327,16 +349,16 @@
 		perror("nvlist_create");
 		return(0);
 	}
-	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATECOPY);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATERESET);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_nvlist(nvl, "args", args);
 
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
 	/* Save the reseted strm. */
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	char *msg = nvlist_take_string(result, "msg");
 	memcpy(strm->msg, msg, strlen(msg)+1);
 	destroy();
@@ -344,10 +366,9 @@
 }
 
 int
-zcapcmd_deflateParams(z_streamp strm, int level, int int strategy)
+zcapcmd_deflateParams(z_streamp strm, int level, int strategy)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -356,8 +377,8 @@
 		perror("nvlist_create");
 		return(0);
 	}
-	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATECOPY);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATEPARAMS);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_number(args, "level", level);
 	nvlist_add_number(args, "strategy", strategy);
 	nvlist_add_nvlist(nvl, "args", args);
@@ -366,18 +387,17 @@
 
 	ret = nvlist_take_number(result, "result");
 	/* Overwrite the old streamp */
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
 
 int
 zcapcmd_deflateTune(z_streamp strm, int good_length, int max_lazy,
-                    int nice_length, int max_chain)
+					int nice_length, int max_chain)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -386,8 +406,8 @@
 		perror("nvlist_create");
 		return(0);
 	}
-	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATECOPY);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATETUNE);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_number(args, "good_length", good_length);
 	nvlist_add_number(args, "max_lazy", max_lazy);
 	nvlist_add_number(args, "nice_length", nice_length);
@@ -397,8 +417,8 @@
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
@@ -407,7 +427,6 @@
 zcapcmd_deflateBound(z_streamp strm, uLong sourceLen)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -416,16 +435,16 @@
 		perror("nvlist_create");
 		return(0);
 	}
-	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATECOPY);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATEBOUND);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_number(args, "sourceLen", sourceLen);
 	nvlist_add_nvlist(nvl, "args", args);
 
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
@@ -434,7 +453,6 @@
 zcapcmd_deflatePending(z_streamp strm, unsigned *pending, int *bits)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -443,8 +461,8 @@
 		perror("nvlist_create");
 		return(0);
 	}
-	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATECOPY);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATEPENDING);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	/* Will get malloc()ed at the worker. */
 	nvlist_add_number(args, "pending", *pending);
 	nvlist_add_number(args, "bits", *bits);
@@ -453,8 +471,8 @@
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
@@ -463,7 +481,6 @@
 zcapcmd_deflatePrime(z_streamp strm, int bits, int value)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -473,7 +490,7 @@
 		return(0);
 	}
 	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATEPRIME);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_number(args, "bits", bits);
 	nvlist_add_number(args, "value", value);
 	nvlist_add_nvlist(nvl, "args", args);
@@ -481,8 +498,8 @@
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
@@ -493,7 +510,6 @@
 	/* XXX: Beware of gz_headerp extra */
 	/* What happens with header->extra??? */
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -503,8 +519,8 @@
 		return(0);
 	}
 	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATESETHEADER);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
-	nvlist_add_binary(args, "head", *head, gzheadersize);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
+	nvlist_add_binary(args, "head", (void*)head, gzheadersize);
 	nvlist_add_string(nvl, "name", head->name);
 	nvlist_add_string(nvl, "comment", head->comment);
 	nvlist_add_nvlist(nvl, "args", args);
@@ -512,18 +528,17 @@
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
 
 int
 zcapcmd_inflateSetDictionary(z_streamp strm, 
-                             const Bytef *dictionary, uInt dictLength)
+							 const Bytef *dictionary, uInt dictLength)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -533,23 +548,23 @@
 		return(0);
 	}
 	nvlist_add_number(nvl, "command", ZCAPCMD_INFLATESETDICTIONARY);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_nvlist(nvl, "args", args);
 
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
 
 int
-zcapcmd_inflateGetDictionary(z_streamp strm, Bytef *dictionary, uInt *dictLength)
+zcapcmd_inflateGetDictionary(z_streamp strm, const Bytef *dictionary,
+	uInt *dictLength)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -558,15 +573,15 @@
 		perror("nvlist_create");
 		return(0);
 	}
-	nvlist_add_number(nvl, "command", ZCAPCMD_INFLATESETHEADER);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_number(nvl, "command", ZCAPCMD_INFLATEGETDICTIONARY);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_nvlist(nvl, "args", args);
 
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
@@ -575,7 +590,6 @@
 zcapcmd_inflateSync(z_streamp strm)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -584,15 +598,15 @@
 		perror("nvlist_create");
 		return(0);
 	}
-	nvlist_add_number(nvl, "command", ZCAPCMD_INFLATESETHEADER);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_number(nvl, "command", ZCAPCMD_INFLATESYNC);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_nvlist(nvl, "args", args);
 
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
@@ -601,7 +615,6 @@
 zcapcmd_inflateCopy(z_streamp dest, z_streamp source)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -610,17 +623,17 @@
 		perror("nvlist_create");
 		return(0);
 	}
-	nvlist_add_number(nvl, "command", ZCAPCMD_DEFLATECOPY);
-	nvlist_add_binary(args, "dest", *dest, zstreamsize);
-	nvlist_add_binary(args, "source", *source, zstreamsize);
+	nvlist_add_number(nvl, "command", ZCAPCMD_INFLATECOPY);
+	nvlist_add_binary(args, "dest", (void *)dest, z_streamsize);
+	nvlist_add_binary(args, "source", (void *)source, z_streamsize);
 	nvlist_add_nvlist(nvl, "args", args);
 
 	/* The two z_streamp are now copied at the worker. */
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(dest, newstrm, z_streamsize);
 	destroy();
 	return(ret);
 }
@@ -629,7 +642,6 @@
 zcapcmd_inflateReset(z_streamp strm)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -638,15 +650,15 @@
 		perror("nvlist_create");
 		return(0);
 	}
-	nvlist_add_number(nvl, "command", ZCAPCMD_INFLATESETHEADER);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_number(nvl, "command", ZCAPCMD_INFLATERESET);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_nvlist(nvl, "args", args);
 
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	char *msg = nvlist_take_string(result, "msg");
 	memcpy(strm->msg, msg, strlen(msg)+1);
 	destroy();
@@ -657,7 +669,6 @@
 zcapcmd_inflateReset2(z_streamp strm, int windowBits)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -666,16 +677,16 @@
 		perror("nvlist_create");
 		return(0);
 	}
-	nvlist_add_number(nvl, "command", ZCAPCMD_INFLATESETHEADER);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_number(nvl, "command", ZCAPCMD_INFLATERESET2);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_number(nvl, "windowBits", windowBits);
 	nvlist_add_nvlist(nvl, "args", args);
 
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);
-	memcpy(strm, newstrm, zstreamsize);
+	z_stream *newstrm = nvlist_take_binary(result, "newstrm", z_streamsize);
+	memcpy(strm, newstrm, z_streamsize);
 	char *msg = nvlist_take_string(result, "msg");
 	memcpy(strm->msg, msg, strlen(msg)+1);
 	destroy();
@@ -686,7 +697,6 @@
 zcapcmd_inflatePrime(z_streamp strm, int bits, int value)
 {
 	uLong ret;
-	zstream * dataplace;
 	
 	checkChild();
 
@@ -695,8 +705,8 @@
 		perror("nvlist_create");
 		return(0);
 	}
-	nvlist_add_number(nvl, "command", ZCAPCMD_INFLATESETHEADER);
-	nvlist_add_binary(args, "strm", *strm, zstreamsize);
+	nvlist_add_number(nvl, "command", ZCAPCMD_INFLATEPRIME);
+	nvlist_add_binary(args, "strm", (void *)strm, z_streamsize);
 	nvlist_add_number(args, "bits", bits);
 	nvlist_add_number(args, "value", value);
 	nvlist_add_nvlist(nvl, "args", args);
@@ -704,8 +714,8 @@
 	result = sendCommand(nvl);
 
 	ret = nvlist_take_number(result, "result");
-	z_stream *newstrm = nvlist_take_binary(result, "newstrm", zstreamsize);

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***


More information about the svn-soc-all mailing list