Provided by: libixp-dev_0.6~20121202+hg148-2_amd64 bug

NAME

       IxpMsg, IxpMsgMode, ixp_message

SYNOPSIS

       #include <ixp.h>

       typedef struct IxpMsg IxpMsg;
       struct IxpMsg {
               char*   data; /* Beginning of buffer. */
               char*   pos;  /* Current position in buffer. */
               char*   end;  /* End of message. */
               uint    size; /* Size of buffer. */
               uint    mode; /* MsgPack or MsgUnpack. */
       }

       enum IxpMsgMode {
               MsgPack,
               MsgUnpack,
       }

       IxpMsg ixp_message(char *data, uint length, uint mode);

DESCRIPTION

       The  IxpMsg  struct  represents  a  binary  message, and is used extensively by libixp for
       converting messages to and from wire format. The location and size of a buffer are  stored
       in  data and size, respectively. pos points to the location in the message currently being
       packed or unpacked, while end points to the end of  the  message.  The  packing  functions
       advance  pos  as  they go, always ensuring that they don't read or write past end.  When a
       message is entirely packed or unpacked, pos whould be less than or equal to end. Any other
       state indicates error.

       ixp_message  is  a  convenience  function to pack a construct an IxpMsg from a buffer of a
       given length and a given mode. pos and data are set to data and  end  is  set  to  data  +
       length.

SEE ALSO

       ixp_pu8(3), ixp_pu16(3), ixp_pu32(3), ixp_pu64(3), ixp_pstring(3), ixp_pstrings(3)