\hypertarget{mw__message_8h}{
\section{mw\_\-message.h File Reference}
\label{mw__message_8h}\index{mw\_\-message.h@{mw\_\-message.h}}
}


{\tt \#include $<$glib/glist.h$>$}\par
{\tt \#include \char`\"{}mw\_\-common.h\char`\"{}}\par
\subsection*{Data Structures}
\begin{CompactItemize}
\item 
struct \hyperlink{structmwEncryptAccept}{mwEncryptAccept}
\begin{CompactList}\small\item\em a selected encryption item from those offered \item\end{CompactList}\item 
struct \hyperlink{structmwEncryptOffer}{mwEncryptOffer}
\begin{CompactList}\small\item\em an offer of encryption items \item\end{CompactList}\item 
struct \hyperlink{structmwMessage}{mwMessage}
\item 
struct \hyperlink{structmwMsgAdmin}{mwMsgAdmin}
\begin{CompactList}\small\item\em An administrative broadcast message. \item\end{CompactList}\item 
struct \hyperlink{structmwMsgAnnounce}{mwMsgAnnounce}
\begin{CompactList}\small\item\em An announcement between users. \item\end{CompactList}\item 
struct \hyperlink{structmwMsgChannelAccept}{mwMsgChannelAccept}
\item 
struct \hyperlink{structmwMsgChannelCreate}{mwMsgChannelCreate}
\item 
struct \hyperlink{structmwMsgChannelDestroy}{mwMsgChannelDestroy}
\item 
struct \hyperlink{structmwMsgChannelSend}{mwMsgChannelSend}
\item 
struct \hyperlink{structmwMsgHandshake}{mwMsgHandshake}
\item 
struct \hyperlink{structmwMsgHandshakeAck}{mwMsgHandshakeAck}
\item 
struct \hyperlink{structmwMsgLogin}{mwMsgLogin}
\item 
struct \hyperlink{structmwMsgLoginAck}{mwMsgLoginAck}
\item 
struct \hyperlink{structmwMsgLoginContinue}{mwMsgLoginContinue}
\item 
struct \hyperlink{structmwMsgLoginRedirect}{mwMsgLoginRedirect}
\item 
struct \hyperlink{structmwMsgSenseService}{mwMsgSenseService}
\begin{CompactList}\small\item\em Sent to the server to request the presense of a service by its ID. \item\end{CompactList}\item 
struct \hyperlink{structmwMsgSetPrivacyList}{mwMsgSetPrivacyList}
\item 
struct \hyperlink{structmwMsgSetUserStatus}{mwMsgSetUserStatus}
\end{CompactItemize}
\subsection*{Defines}
\begin{CompactItemize}
\item 
\#define \hyperlink{mw__message_8h_ddfd812d6f966033ecde989d3ae1ff13}{MW\_\-MESSAGE}(msg)~(\&msg $\rightarrow$ head)
\begin{CompactList}\small\item\em Cast a pointer to a message subtype (eg, \hyperlink{structmwMsgHandshake}{mwMsgHandshake}, \hyperlink{structmwMsgAdmin}{mwMsgAdmin}) into a pointer to a \hyperlink{structmwMessage}{mwMessage}. \item\end{CompactList}\item 
\#define \hyperlink{mw__message_8h_6489ef909af7116c58c46c0eba98a557}{MW\_\-MESSAGE\_\-HAS\_\-OPTION}(msg, opt)~((msg) $\rightarrow$ options \& (opt))
\end{CompactItemize}
\subsection*{Enumerations}
\begin{CompactItemize}
\item 
enum \hyperlink{mw__message_8h_910bfd3618535759d5e7e5f89274f718}{mwAuthType} \{ \par
\hyperlink{mw__message_8h_910bfd3618535759d5e7e5f89274f718b83b19bd43dbff156212b20895a71a1b}{mwAuthType\_\-PLAIN} =  0x0000, 
\par
\hyperlink{mw__message_8h_910bfd3618535759d5e7e5f89274f718cf66e986460a8b3b506183f926a86a98}{mwAuthType\_\-TOKEN} =  0x0001, 
\par
\hyperlink{mw__message_8h_910bfd3618535759d5e7e5f89274f71845301107f68dbda1ed9d984334a0373b}{mwAuthType\_\-ENCRYPT} =  0x0002, 
\par
\hyperlink{mw__message_8h_910bfd3618535759d5e7e5f89274f718507b31a154f6deebd54721cdf493c900}{mwAuthType\_\-RC2\_\-40} =  0x0002, 
\par
\hyperlink{mw__message_8h_910bfd3618535759d5e7e5f89274f71862f209ad72b476e0d4d3cc8675370704}{mwAuthType\_\-RC2\_\-128} =  0x0004
 \}
\item 
enum \hyperlink{mw__message_8h_600afdfadebb9d20827cef17756f0fae}{mwMessageOption} \{ \par
\hyperlink{mw__message_8h_600afdfadebb9d20827cef17756f0faebd68ef5475779bfef1249150fe300591}{mwMessageOption\_\-ENCRYPT} =  0x4000, 
\par
\hyperlink{mw__message_8h_600afdfadebb9d20827cef17756f0fae875724a2b0308b46cb90d15bc28fa499}{mwMessageOption\_\-HAS\_\-ATTRIBS} =  0x8000
 \}
\item 
enum \hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac2949}{mwMessageType} \{ \par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac2949153688607c3fc134cbfd967d1e20ff74}{mwMessage\_\-HANDSHAKE} =  0x0000, 
\par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac2949aa0a054a32aab5eef398faba6928089d}{mwMessage\_\-HANDSHAKE\_\-ACK} =  0x8000, 
\par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac2949b53ea38b2776875a824b822c7c71e8f8}{mwMessage\_\-LOGIN} =  0x0001, 
\par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac29497b55aa921d492c225b0598966bcd5d45}{mwMessage\_\-LOGIN\_\-ACK} =  0x8001, 
\par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac294987bc7b61d8ba8f3237770104c1497501}{mwMessage\_\-LOGIN\_\-REDIRECT} =  0x0018, 
\par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac2949c508ff54fd6cb0e85c646bd81ea2a316}{mwMessage\_\-LOGIN\_\-CONTINUE} =  0x0016, 
\par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac2949592b2ec2e5ddc1f8a4f0eb3c859a12a6}{mwMessage\_\-CHANNEL\_\-CREATE} =  0x0002, 
\par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac294979138d2b50cdb848db5f9a9a560a9b79}{mwMessage\_\-CHANNEL\_\-DESTROY} =  0x0003, 
\par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac2949ffc27704cfd3d60671c99523c5da9972}{mwMessage\_\-CHANNEL\_\-SEND} =  0x0004, 
\par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac29490d828997c0e561ea71793d0586227b23}{mwMessage\_\-CHANNEL\_\-ACCEPT} =  0x0006, 
\par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac2949a44c5ad6a60abbd82e38efe8d2d7caa5}{mwMessage\_\-SET\_\-USER\_\-STATUS} =  0x0009, 
\par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac2949c738082bf05a63638dcf24c99b1c60c0}{mwMessage\_\-SET\_\-PRIVACY\_\-LIST} =  0x000b, 
\par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac29497790d9d6205172c7cfe9ba6d365e5434}{mwMessage\_\-SENSE\_\-SERVICE} =  0x0011, 
\par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac29496ad30a764ca2b14045ab22e940ce2fe3}{mwMessage\_\-ADMIN} =  0x0019, 
\par
\hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac2949aac3b404adb68bb0d7ed2e0c4d691540}{mwMessage\_\-ANNOUNCE} =  0x0022
 \}
\begin{CompactList}\small\item\em Indicates the type of a message. \item\end{CompactList}\end{CompactItemize}
\subsection*{Functions}
\begin{CompactItemize}
\item 
void \hyperlink{mw__message_8h_8eeaf5eb424fbcc82ee3982b8ac7171c}{mwMessage\_\-free} (struct \hyperlink{structmwMessage}{mwMessage} $\ast$msg)
\item 
struct \hyperlink{structmwMessage}{mwMessage} $\ast$ \hyperlink{mw__message_8h_31f7646403c50cdcf227fe951fc77cb8}{mwMessage\_\-get} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b)
\begin{CompactList}\small\item\em build a message from its representation \item\end{CompactList}\item 
struct \hyperlink{structmwMessage}{mwMessage} $\ast$ \hyperlink{mw__message_8h_ec512bc0c59ecb9eca61bbcafea12130}{mwMessage\_\-new} (enum \hyperlink{mw__message_8h_7bce7f736bca2783bbe462c953ac2949}{mwMessageType} type)
\begin{CompactList}\small\item\em Allocate and initialize a new message of the specified type. \item\end{CompactList}\item 
void \hyperlink{mw__message_8h_254cbc94eb016531692f3fb5d88e2213}{mwMessage\_\-put} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b, struct \hyperlink{structmwMessage}{mwMessage} $\ast$msg)
\end{CompactItemize}


\subsection{Define Documentation}
\hypertarget{mw__message_8h_ddfd812d6f966033ecde989d3ae1ff13}{
\index{mw\_\-message.h@{mw\_\-message.h}!MW\_\-MESSAGE@{MW\_\-MESSAGE}}
\index{MW\_\-MESSAGE@{MW\_\-MESSAGE}!mw_message.h@{mw\_\-message.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define MW\_\-MESSAGE(msg)~(\&msg $\rightarrow$ head)}}
\label{mw__message_8h_ddfd812d6f966033ecde989d3ae1ff13}


Cast a pointer to a message subtype (eg, \hyperlink{structmwMsgHandshake}{mwMsgHandshake}, \hyperlink{structmwMsgAdmin}{mwMsgAdmin}) into a pointer to a \hyperlink{structmwMessage}{mwMessage}. 

\hypertarget{mw__message_8h_6489ef909af7116c58c46c0eba98a557}{
\index{mw\_\-message.h@{mw\_\-message.h}!MW\_\-MESSAGE\_\-HAS\_\-OPTION@{MW\_\-MESSAGE\_\-HAS\_\-OPTION}}
\index{MW\_\-MESSAGE\_\-HAS\_\-OPTION@{MW\_\-MESSAGE\_\-HAS\_\-OPTION}!mw_message.h@{mw\_\-message.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define MW\_\-MESSAGE\_\-HAS\_\-OPTION(msg, \/  opt)~((msg) $\rightarrow$ options \& (opt))}}
\label{mw__message_8h_6489ef909af7116c58c46c0eba98a557}


\begin{Desc}
\item[See also:]\hyperlink{mw__message_8h_600afdfadebb9d20827cef17756f0fae}{mwMessageOption} \end{Desc}


\subsection{Enumeration Type Documentation}
\hypertarget{mw__message_8h_910bfd3618535759d5e7e5f89274f718}{
\index{mw\_\-message.h@{mw\_\-message.h}!mwAuthType@{mwAuthType}}
\index{mwAuthType@{mwAuthType}!mw_message.h@{mw\_\-message.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}enum {\bf mwAuthType}}}
\label{mw__message_8h_910bfd3618535759d5e7e5f89274f718}


\begin{Desc}
\item[Enumerator: ]\par
\begin{description}
\index{mwAuthType\_\-PLAIN@{mwAuthType\_\-PLAIN}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwAuthType\_\-PLAIN@{mwAuthType\_\-PLAIN}}\item[{\em 
\hypertarget{mw__message_8h_910bfd3618535759d5e7e5f89274f718b83b19bd43dbff156212b20895a71a1b}{
mwAuthType\_\-PLAIN}
\label{mw__message_8h_910bfd3618535759d5e7e5f89274f718b83b19bd43dbff156212b20895a71a1b}
}]\index{mwAuthType\_\-TOKEN@{mwAuthType\_\-TOKEN}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwAuthType\_\-TOKEN@{mwAuthType\_\-TOKEN}}\item[{\em 
\hypertarget{mw__message_8h_910bfd3618535759d5e7e5f89274f718cf66e986460a8b3b506183f926a86a98}{
mwAuthType\_\-TOKEN}
\label{mw__message_8h_910bfd3618535759d5e7e5f89274f718cf66e986460a8b3b506183f926a86a98}
}]\index{mwAuthType\_\-ENCRYPT@{mwAuthType\_\-ENCRYPT}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwAuthType\_\-ENCRYPT@{mwAuthType\_\-ENCRYPT}}\item[{\em 
\hypertarget{mw__message_8h_910bfd3618535759d5e7e5f89274f71845301107f68dbda1ed9d984334a0373b}{
mwAuthType\_\-ENCRYPT}
\label{mw__message_8h_910bfd3618535759d5e7e5f89274f71845301107f68dbda1ed9d984334a0373b}
}]\begin{Desc}
\item[\hyperlink{todo__todo000001}{Todo}]remove for 1.0 \end{Desc}
\index{mwAuthType\_\-RC2\_\-40@{mwAuthType\_\-RC2\_\-40}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwAuthType\_\-RC2\_\-40@{mwAuthType\_\-RC2\_\-40}}\item[{\em 
\hypertarget{mw__message_8h_910bfd3618535759d5e7e5f89274f718507b31a154f6deebd54721cdf493c900}{
mwAuthType\_\-RC2\_\-40}
\label{mw__message_8h_910bfd3618535759d5e7e5f89274f718507b31a154f6deebd54721cdf493c900}
}]\index{mwAuthType\_\-RC2\_\-128@{mwAuthType\_\-RC2\_\-128}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwAuthType\_\-RC2\_\-128@{mwAuthType\_\-RC2\_\-128}}\item[{\em 
\hypertarget{mw__message_8h_910bfd3618535759d5e7e5f89274f71862f209ad72b476e0d4d3cc8675370704}{
mwAuthType\_\-RC2\_\-128}
\label{mw__message_8h_910bfd3618535759d5e7e5f89274f71862f209ad72b476e0d4d3cc8675370704}
}]\end{description}
\end{Desc}

\hypertarget{mw__message_8h_600afdfadebb9d20827cef17756f0fae}{
\index{mw\_\-message.h@{mw\_\-message.h}!mwMessageOption@{mwMessageOption}}
\index{mwMessageOption@{mwMessageOption}!mw_message.h@{mw\_\-message.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}enum {\bf mwMessageOption}}}
\label{mw__message_8h_600afdfadebb9d20827cef17756f0fae}


\begin{Desc}
\item[Enumerator: ]\par
\begin{description}
\index{mwMessageOption\_\-ENCRYPT@{mwMessageOption\_\-ENCRYPT}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessageOption\_\-ENCRYPT@{mwMessageOption\_\-ENCRYPT}}\item[{\em 
\hypertarget{mw__message_8h_600afdfadebb9d20827cef17756f0faebd68ef5475779bfef1249150fe300591}{
mwMessageOption\_\-ENCRYPT}
\label{mw__message_8h_600afdfadebb9d20827cef17756f0faebd68ef5475779bfef1249150fe300591}
}]message data is encrypted \index{mwMessageOption\_\-HAS\_\-ATTRIBS@{mwMessageOption\_\-HAS\_\-ATTRIBS}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessageOption\_\-HAS\_\-ATTRIBS@{mwMessageOption\_\-HAS\_\-ATTRIBS}}\item[{\em 
\hypertarget{mw__message_8h_600afdfadebb9d20827cef17756f0fae875724a2b0308b46cb90d15bc28fa499}{
mwMessageOption\_\-HAS\_\-ATTRIBS}
\label{mw__message_8h_600afdfadebb9d20827cef17756f0fae875724a2b0308b46cb90d15bc28fa499}
}]message has attributes \end{description}
\end{Desc}

\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac2949}{
\index{mw\_\-message.h@{mw\_\-message.h}!mwMessageType@{mwMessageType}}
\index{mwMessageType@{mwMessageType}!mw_message.h@{mw\_\-message.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}enum {\bf mwMessageType}}}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac2949}


Indicates the type of a message. 

\begin{Desc}
\item[Enumerator: ]\par
\begin{description}
\index{mwMessage\_\-HANDSHAKE@{mwMessage\_\-HANDSHAKE}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-HANDSHAKE@{mwMessage\_\-HANDSHAKE}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac2949153688607c3fc134cbfd967d1e20ff74}{
mwMessage\_\-HANDSHAKE}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac2949153688607c3fc134cbfd967d1e20ff74}
}]\hyperlink{structmwMsgHandshake}{mwMsgHandshake} \index{mwMessage\_\-HANDSHAKE\_\-ACK@{mwMessage\_\-HANDSHAKE\_\-ACK}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-HANDSHAKE\_\-ACK@{mwMessage\_\-HANDSHAKE\_\-ACK}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac2949aa0a054a32aab5eef398faba6928089d}{
mwMessage\_\-HANDSHAKE\_\-ACK}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac2949aa0a054a32aab5eef398faba6928089d}
}]\hyperlink{structmwMsgHandshakeAck}{mwMsgHandshakeAck} \index{mwMessage\_\-LOGIN@{mwMessage\_\-LOGIN}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-LOGIN@{mwMessage\_\-LOGIN}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac2949b53ea38b2776875a824b822c7c71e8f8}{
mwMessage\_\-LOGIN}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac2949b53ea38b2776875a824b822c7c71e8f8}
}]\hyperlink{structmwMsgLogin}{mwMsgLogin} \index{mwMessage\_\-LOGIN\_\-ACK@{mwMessage\_\-LOGIN\_\-ACK}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-LOGIN\_\-ACK@{mwMessage\_\-LOGIN\_\-ACK}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac29497b55aa921d492c225b0598966bcd5d45}{
mwMessage\_\-LOGIN\_\-ACK}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac29497b55aa921d492c225b0598966bcd5d45}
}]\hyperlink{structmwMsgLoginAck}{mwMsgLoginAck} \index{mwMessage\_\-LOGIN\_\-REDIRECT@{mwMessage\_\-LOGIN\_\-REDIRECT}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-LOGIN\_\-REDIRECT@{mwMessage\_\-LOGIN\_\-REDIRECT}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac294987bc7b61d8ba8f3237770104c1497501}{
mwMessage\_\-LOGIN\_\-REDIRECT}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac294987bc7b61d8ba8f3237770104c1497501}
}]\hyperlink{structmwMsgLoginRedirect}{mwMsgLoginRedirect} \index{mwMessage\_\-LOGIN\_\-CONTINUE@{mwMessage\_\-LOGIN\_\-CONTINUE}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-LOGIN\_\-CONTINUE@{mwMessage\_\-LOGIN\_\-CONTINUE}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac2949c508ff54fd6cb0e85c646bd81ea2a316}{
mwMessage\_\-LOGIN\_\-CONTINUE}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac2949c508ff54fd6cb0e85c646bd81ea2a316}
}]\hyperlink{structmwMsgLoginContinue}{mwMsgLoginContinue} \index{mwMessage\_\-CHANNEL\_\-CREATE@{mwMessage\_\-CHANNEL\_\-CREATE}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-CHANNEL\_\-CREATE@{mwMessage\_\-CHANNEL\_\-CREATE}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac2949592b2ec2e5ddc1f8a4f0eb3c859a12a6}{
mwMessage\_\-CHANNEL\_\-CREATE}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac2949592b2ec2e5ddc1f8a4f0eb3c859a12a6}
}]\hyperlink{structmwMsgChannelCreate}{mwMsgChannelCreate} \index{mwMessage\_\-CHANNEL\_\-DESTROY@{mwMessage\_\-CHANNEL\_\-DESTROY}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-CHANNEL\_\-DESTROY@{mwMessage\_\-CHANNEL\_\-DESTROY}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac294979138d2b50cdb848db5f9a9a560a9b79}{
mwMessage\_\-CHANNEL\_\-DESTROY}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac294979138d2b50cdb848db5f9a9a560a9b79}
}]\hyperlink{structmwMsgChannelDestroy}{mwMsgChannelDestroy} \index{mwMessage\_\-CHANNEL\_\-SEND@{mwMessage\_\-CHANNEL\_\-SEND}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-CHANNEL\_\-SEND@{mwMessage\_\-CHANNEL\_\-SEND}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac2949ffc27704cfd3d60671c99523c5da9972}{
mwMessage\_\-CHANNEL\_\-SEND}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac2949ffc27704cfd3d60671c99523c5da9972}
}]\hyperlink{structmwMsgChannelSend}{mwMsgChannelSend} \index{mwMessage\_\-CHANNEL\_\-ACCEPT@{mwMessage\_\-CHANNEL\_\-ACCEPT}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-CHANNEL\_\-ACCEPT@{mwMessage\_\-CHANNEL\_\-ACCEPT}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac29490d828997c0e561ea71793d0586227b23}{
mwMessage\_\-CHANNEL\_\-ACCEPT}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac29490d828997c0e561ea71793d0586227b23}
}]\hyperlink{structmwMsgChannelAccept}{mwMsgChannelAccept} \index{mwMessage\_\-SET\_\-USER\_\-STATUS@{mwMessage\_\-SET\_\-USER\_\-STATUS}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-SET\_\-USER\_\-STATUS@{mwMessage\_\-SET\_\-USER\_\-STATUS}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac2949a44c5ad6a60abbd82e38efe8d2d7caa5}{
mwMessage\_\-SET\_\-USER\_\-STATUS}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac2949a44c5ad6a60abbd82e38efe8d2d7caa5}
}]\hyperlink{structmwMsgSetUserStatus}{mwMsgSetUserStatus} \index{mwMessage\_\-SET\_\-PRIVACY\_\-LIST@{mwMessage\_\-SET\_\-PRIVACY\_\-LIST}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-SET\_\-PRIVACY\_\-LIST@{mwMessage\_\-SET\_\-PRIVACY\_\-LIST}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac2949c738082bf05a63638dcf24c99b1c60c0}{
mwMessage\_\-SET\_\-PRIVACY\_\-LIST}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac2949c738082bf05a63638dcf24c99b1c60c0}
}]\hyperlink{structmwMsgSetPrivacyList}{mwMsgSetPrivacyList} \index{mwMessage\_\-SENSE\_\-SERVICE@{mwMessage\_\-SENSE\_\-SERVICE}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-SENSE\_\-SERVICE@{mwMessage\_\-SENSE\_\-SERVICE}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac29497790d9d6205172c7cfe9ba6d365e5434}{
mwMessage\_\-SENSE\_\-SERVICE}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac29497790d9d6205172c7cfe9ba6d365e5434}
}]\hyperlink{structmwMsgSenseService}{mwMsgSenseService} \index{mwMessage\_\-ADMIN@{mwMessage\_\-ADMIN}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-ADMIN@{mwMessage\_\-ADMIN}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac29496ad30a764ca2b14045ab22e940ce2fe3}{
mwMessage\_\-ADMIN}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac29496ad30a764ca2b14045ab22e940ce2fe3}
}]\hyperlink{structmwMsgAdmin}{mwMsgAdmin} \index{mwMessage\_\-ANNOUNCE@{mwMessage\_\-ANNOUNCE}!mw\_\-message.h@{mw\_\-message.h}}\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-ANNOUNCE@{mwMessage\_\-ANNOUNCE}}\item[{\em 
\hypertarget{mw__message_8h_7bce7f736bca2783bbe462c953ac2949aac3b404adb68bb0d7ed2e0c4d691540}{
mwMessage\_\-ANNOUNCE}
\label{mw__message_8h_7bce7f736bca2783bbe462c953ac2949aac3b404adb68bb0d7ed2e0c4d691540}
}]\hyperlink{structmwMsgAnnounce}{mwMsgAnnounce} \end{description}
\end{Desc}



\subsection{Function Documentation}
\hypertarget{mw__message_8h_8eeaf5eb424fbcc82ee3982b8ac7171c}{
\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-free@{mwMessage\_\-free}}
\index{mwMessage\_\-free@{mwMessage\_\-free}!mw_message.h@{mw\_\-message.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwMessage\_\-free (struct {\bf mwMessage} $\ast$ {\em msg})}}
\label{mw__message_8h_8eeaf5eb424fbcc82ee3982b8ac7171c}


\hypertarget{mw__message_8h_31f7646403c50cdcf227fe951fc77cb8}{
\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-get@{mwMessage\_\-get}}
\index{mwMessage\_\-get@{mwMessage\_\-get}!mw_message.h@{mw\_\-message.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct {\bf mwMessage}$\ast$ mwMessage\_\-get (struct {\bf mwGetBuffer} $\ast$ {\em b})\hspace{0.3cm}{\tt  \mbox{[}read\mbox{]}}}}
\label{mw__message_8h_31f7646403c50cdcf227fe951fc77cb8}


build a message from its representation 

\hypertarget{mw__message_8h_ec512bc0c59ecb9eca61bbcafea12130}{
\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-new@{mwMessage\_\-new}}
\index{mwMessage\_\-new@{mwMessage\_\-new}!mw_message.h@{mw\_\-message.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct {\bf mwMessage}$\ast$ mwMessage\_\-new (enum {\bf mwMessageType} {\em type})\hspace{0.3cm}{\tt  \mbox{[}read\mbox{]}}}}
\label{mw__message_8h_ec512bc0c59ecb9eca61bbcafea12130}


Allocate and initialize a new message of the specified type. 

\hypertarget{mw__message_8h_254cbc94eb016531692f3fb5d88e2213}{
\index{mw\_\-message.h@{mw\_\-message.h}!mwMessage\_\-put@{mwMessage\_\-put}}
\index{mwMessage\_\-put@{mwMessage\_\-put}!mw_message.h@{mw\_\-message.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwMessage\_\-put (struct {\bf mwPutBuffer} $\ast$ {\em b}, \/  struct {\bf mwMessage} $\ast$ {\em msg})}}
\label{mw__message_8h_254cbc94eb016531692f3fb5d88e2213}


