#ifndef _LBX_OPTS_H_
#define _LBX_OPTS_H_
#define LBX_OPT_DELTA_PROXY 0
#define LBX_OPT_DELTA_SERVER 1
#define LBX_OPT_STREAM_COMP 2
#define LBX_OPT_BITMAP_COMP 3
#define LBX_OPT_PIXMAP_COMP 4
#define LBX_OPT_MSG_COMP 5
#define LBX_OPT_USE_TAGS 6
#define LBX_OPT_CMAP_ALL 7
#define LBX_OPT_EXTENSION 255
#define LBX_OPT_SMALLLEN_SIZE 1
#define LBX_OPT_BIGLEN_SIZE 3
#define LBX_OPT_BIGLEN_MIN 256
#define LBX_OPT_DECODE_LEN(p, len, size) \
if ((p)[0]) { \
(len) = (p)[0]; \
(size) = LBX_OPT_SMALLLEN_SIZE; \
} \
else { \
(len) = ((LBX_OPT_BIGLEN_MIN + (p)[1]) << 8) | (p)[2]; \
(size) = LBX_OPT_BIGLEN_SIZE; \
}
#define LBX_OPT_SMALLHDR_LEN (1 + LBX_OPT_SMALLLEN_SIZE)
#define LBX_OPT_BIGHDR_LEN (1 + LBX_OPT_BIGLEN_SIZE)
#define LBX_OPT_DELTA_REQLEN 6
#define LBX_OPT_DELTA_REPLYLEN 2
#define LBX_OPT_DELTA_NCACHE_DFLT 16
#define LBX_OPT_DELTA_MSGLEN_MIN 32
#define LBX_OPT_DELTA_MSGLEN_DFLT 64
#include <sys/types.h>
#if defined(WIN32) || (defined(USG) && !defined(CRAY) && !defined(umips) && !defined(MOTOROLA) && !defined(uniosu) && !defined(__sxg__))
struct iovec {
caddr_t iov_base;
int iov_len;
};
#else
#ifndef Lynx
#include <sys/uio.h>
#else
#include <uio.h>
#endif
#endif
typedef void *LbxStreamCompHandle;
typedef struct _LbxStreamOpts {
LbxStreamCompHandle (*streamCompInit)(int fd, pointer arg);
pointer streamCompArg;
int (*streamCompStuffInput)(
int fd,
unsigned char *buf,
int buflen
);
int (*streamCompInputAvail)(
int fd
);
int (*streamCompFlush)(
int fd
);
int (*streamCompRead)(
int fd,
unsigned char *buf,
int buflen
);
int (*streamCompWriteV)(
int fd,
struct iovec *iov,
int iovcnt
);
void (*streamCompOn)(
int fd
);
void (*streamCompOff)(
int fd
);
void (*streamCompFreeHandle)(
LbxStreamCompHandle handle
);
} LbxStreamOpts;
#endif