.TH "IXP_PSTRINGS" 3 "2012 Dec" "libixp Manual" .SH NAME .P ixp_pstrings .SH SYNOPSIS .nf #include void ixp_pstrings(IxpMsg *msg, uint16_t *num, char *strings\fI[]\fR, uint max); .fi .SH DESCRIPTION .P Packs or unpacks an array of UTF\-8 encoded strings. The packed representation consists of a 16\-bit element count followed by an array of strings as packed by \fBixp_pstring(3)\fR. The unpacked representation is an array of nul\-terminated character arrays. .P If \fImsg\fR\->mode is MsgPack, \fI*num\fR strings in the array pointed to by \fIstrings\fR are packed into the buffer at \fImsg\fR\->pos. If \fImsg\fR\->mode is MsgUnpack, \fI*num\fR is loaded with the number of strings unpacked, the array at \fI*strings\fR is loaded with pointers to the unpacked strings, and \fI(*strings)\fI[0]\fR\fR must be freed by the user. In either case, \fImsg\fR\->pos is advanced by the number of bytes read or written. If the action would advance \fImsg\fR\->pos beyond \fImsg\fR\->end, \fImsg\fR\->pos is still advanced, but no other action is taken. If \fI*num\fR is greater than \fImax\fR, \fImsg\fR\->pos is set beyond \fImsg\fR\->end and no other action is taken. .SH SEE ALSO .P \fIIxpMsg\fR, \fIixp_pstring\fR, \fIixp_pdata\fR .\" man code generated by txt2tags 2.6 (http://txt2tags.org) .\" cmdline: txt2tags -o- ixp_pstrings.man3