\hypertarget{mw__common_8h}{
\section{mw\_\-common.h File Reference}
\label{mw__common_8h}\index{mw\_\-common.h@{mw\_\-common.h}}
}


\subsection{Detailed Description}
Common data types and functions for handling those types. 

Functions in this file all fit into similar naming conventions of {\tt TYPE\_\-ACTION} as per the activity they perform. The following actions are available:

{\tt void TYPE\_\-put(struct mwPutBuffer $\ast$b, TYPE $\ast$val)}\begin{itemize}
\item marshalls val onto the buffer b. The buffer will grow as necessary to fit all the data put into it. For guint16, guint32, and gboolean, {\tt TYPE val} is used instead of {\tt TYPE $\backslash$$\ast$val}.\end{itemize}


{\tt void TYPE\_\-get(struct mwGetBuffer $\ast$b, TYPE $\ast$val)}\begin{itemize}
\item unmarshals val from the buffer b. Failure (due to lack of insufficient remaining buffer) is indicated in the buffer's error field. A call to a \_\-get function with a buffer in an error state has to effect.\end{itemize}


{\tt void TYPE\_\-clear(TYPE $\ast$val)}\begin{itemize}
\item zeros and frees internal members of val, but does not free val itself. Needs to be called before free-ing any complex types which have been unmarshalled from a TYPE\_\-get or populated from a TYPE\_\-clone call to prevent memory leaks.\end{itemize}


{\tt void TYPE\_\-clone(TYPE $\ast$to, TYPE $\ast$from)}\begin{itemize}
\item copies/clones members of from into to. May result in memory allocation for some types. Note that to is not cleared before-hand, it must already be in a pristine condition.\end{itemize}


{\tt gboolean TYPE\_\-equal(TYPE $\ast$y, TYPE $\ast$z)}\begin{itemize}
\item simple equality test. \end{itemize}


{\tt \#include $<$glib.h$>$}\par
\subsection*{Data Structures}
\begin{CompactItemize}
\item 
struct \hyperlink{structmwAwareIdBlock}{mwAwareIdBlock}
\item 
struct \hyperlink{structmwAwareSnapshot}{mwAwareSnapshot}
\item 
struct \hyperlink{structmwEncryptItem}{mwEncryptItem}
\begin{CompactList}\small\item\em encryption blocks \item\end{CompactList}\item 
struct \hyperlink{structmwIdBlock}{mwIdBlock}
\item 
struct \hyperlink{structmwLoginInfo}{mwLoginInfo}
\item 
struct \hyperlink{structmwOpaque}{mwOpaque}
\begin{CompactList}\small\item\em A length of binary data, not null-terminated. \item\end{CompactList}\item 
struct \hyperlink{structmwPrivacyInfo}{mwPrivacyInfo}
\item 
struct \hyperlink{structmwUserItem}{mwUserItem}
\item 
struct \hyperlink{structmwUserStatus}{mwUserStatus}
\end{CompactItemize}
\subsection*{Enumerations}
\begin{CompactItemize}
\item 
enum \hyperlink{mw__common_8h_287669ed5ceeb0f591b84a31b1ebbc21}{mwAwareType} \{ \par
\hyperlink{mw__common_8h_287669ed5ceeb0f591b84a31b1ebbc21104b7443f4759b421b9a50fc686f56e6}{mwAware\_\-USER} =  0x0002, 
\par
\hyperlink{mw__common_8h_287669ed5ceeb0f591b84a31b1ebbc21515f1ae4d76f8db1cff000389891e838}{mwAware\_\-GROUP} =  0x0003, 
\par
\hyperlink{mw__common_8h_287669ed5ceeb0f591b84a31b1ebbc21cf3fc82b2a9809cfe299be88b4f98b39}{mwAware\_\-SERVER} =  0x0008
 \}
\begin{CompactList}\small\item\em type codes for \hyperlink{structmwAwareIdBlock}{mwAwareIdBlock} \item\end{CompactList}\item 
enum \hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e93}{mwLoginType} \{ \par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e930480908895e0a2b5d31c5f51ee1d7e5a}{mwLogin\_\-LIB} =  0x1000, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e934c97ed2dc01ddf910e654fe57c870b9c}{mwLogin\_\-JAVA\_\-WEB} =  0x1001, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e93ec23dbf7edec91fd75ac6b3196ed1419}{mwLogin\_\-BINARY} =  0x1002, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e93f759ef2f9721d81052fcef1d74bd9e12}{mwLogin\_\-JAVA\_\-APP} =  0x1003, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e932a1fb76a64d2fffe763a56b7b4a3caab}{mwLogin\_\-LINKS} =  0x100a, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e9367f864986fda9c6358a2b06e93a28c61}{mwLogin\_\-NOTES\_\-6\_\-5} =  0x1200, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e93c9b66436e215b4ea0dd88374817c8d60}{mwLogin\_\-NOTES\_\-6\_\-5\_\-3} =  0x1203, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e9386487bf6655a79c24bd252d598d41ad4}{mwLogin\_\-NOTES\_\-7\_\-0\_\-beta} =  0x1210, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e931fd30913040c04b7095f288c5b03a789}{mwLogin\_\-NOTES\_\-7\_\-0} =  0x1214, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e9368ab05456157ffca758be779e72a4552}{mwLogin\_\-ICT} =  0x1300, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e93d378e5747cab3136924ccde56c0cc702}{mwLogin\_\-ICT\_\-1\_\-7\_\-8\_\-2} =  0x1302, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e93d132ee491844abf6706381b2141e7a1b}{mwLogin\_\-ICT\_\-SIP} =  0x1303, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e9351152337771116b3a9cc4188fc75e3ea}{mwLogin\_\-NOTESBUDDY\_\-4\_\-14} =  0x1400, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e939b49fd7949cc1aa6663d58d389c7e003}{mwLogin\_\-NOTESBUDDY\_\-4\_\-15} =  0x1405, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e93aeebcdc0d8b6b60e8e45b66d72dab3ce}{mwLogin\_\-NOTESBUDDY\_\-4\_\-16} =  0x1406, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e933b46c21b603ff5a564c77ab959cc22e7}{mwLogin\_\-SANITY} =  0x1600, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e93dda2eb39e51522185e137fd990be15cc}{mwLogin\_\-ST\_\-PERL} =  0x1625, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e930210a06807ac724795be6cb17f686390}{mwLogin\_\-PMR\_\-ALERT} =  0x1650, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e93c6dfb35a39992ad9cafd78da30dc3754}{mwLogin\_\-TRILLIAN} =  0x16aa, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e93d4cfaed149f408c9bfd21099b892a75d}{mwLogin\_\-TRILLIAN\_\-IBM} =  0x16bb, 
\par
\hyperlink{mw__common_8h_848c722afdb2c37d6cb545320dd15e93a818dec6a8585f130f34b53a728a5ebb}{mwLogin\_\-MEANWHILE} =  0x1700
 \}
\begin{CompactList}\small\item\em The type of login. \item\end{CompactList}\item 
enum \hyperlink{mw__common_8h_5c42e70512279c69743585eea4375898}{mwStatusType} \{ \par
\hyperlink{mw__common_8h_5c42e70512279c69743585eea43758983898d37a2587dc3433d7163064a7ca5b}{mwStatus\_\-ACTIVE} =  0x0020, 
\par
\hyperlink{mw__common_8h_5c42e70512279c69743585eea4375898ceba035512606357a0f34fd1a183df1b}{mwStatus\_\-IDLE} =  0x0040, 
\par
\hyperlink{mw__common_8h_5c42e70512279c69743585eea43758987ef6a8c0302688c35e2b71d61a5483e0}{mwStatus\_\-AWAY} =  0x0060, 
\par
\hyperlink{mw__common_8h_5c42e70512279c69743585eea437589805df95ce8cb55fbd8ca79ea7a2b1f429}{mwStatus\_\-BUSY} =  0x0080
 \}
\end{CompactItemize}
\subsection*{Functions}
\begin{Indent}{\bf Basic Data Types}\par
{\em The basic types are combined to construct the compound types. }\begin{CompactItemize}
\item 
void \hyperlink{mw__common_8h_2fef42e6253d5f5332509d9cf4f79e82}{gboolean\_\-get} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, gboolean $\ast$val)
\item 
gboolean \hyperlink{mw__common_8h_6183bfe2d8404f2e98d6468d88f78812}{gboolean\_\-peek} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b)
\item 
void \hyperlink{mw__common_8h_ee2ec58e63751d3e4b77e700135caa5a}{gboolean\_\-put} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b, gboolean val)
\item 
void \hyperlink{mw__common_8h_9d3f4674317ac3f69d9f8a109e3a5955}{guint16\_\-get} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, guint16 $\ast$val)
\item 
guint16 \hyperlink{mw__common_8h_0906c5c9a74667e4185c6464c293322f}{guint16\_\-peek} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b)
\item 
void \hyperlink{mw__common_8h_d2a4206c12129f850b5f8015659a0429}{guint16\_\-put} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b, guint16 val)
\item 
void \hyperlink{mw__common_8h_0f8f8741a63e8be381f2a7276d5d654f}{guint32\_\-get} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, guint32 $\ast$val)
\item 
guint32 \hyperlink{mw__common_8h_3b1d9683bc8864ea4c04ca5f46b91fda}{guint32\_\-peek} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b)
\item 
void \hyperlink{mw__common_8h_93bfb1d220c9b4a476251da45f392910}{guint32\_\-put} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b, guint32 val)
\item 
void \hyperlink{mw__common_8h_29cb2cfe0ceb4dda4e0b6d1882c862f8}{mwOpaque\_\-clear} (struct \hyperlink{structmwOpaque}{mwOpaque} $\ast$o)
\item 
void \hyperlink{mw__common_8h_9afc39007793553726c606addf685a77}{mwOpaque\_\-clone} (struct \hyperlink{structmwOpaque}{mwOpaque} $\ast$to, const struct \hyperlink{structmwOpaque}{mwOpaque} $\ast$from)
\item 
void \hyperlink{mw__common_8h_75824de7a15e82156306bc0782de7569}{mwOpaque\_\-free} (struct \hyperlink{structmwOpaque}{mwOpaque} $\ast$o)
\item 
void \hyperlink{mw__common_8h_22d723ee07b4c5e59b8c699b05185efc}{mwOpaque\_\-get} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, struct \hyperlink{structmwOpaque}{mwOpaque} $\ast$o)
\item 
void \hyperlink{mw__common_8h_f35f8afe6e9285bef1dc74586c71956a}{mwOpaque\_\-put} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b, const struct \hyperlink{structmwOpaque}{mwOpaque} $\ast$o)
\item 
void \hyperlink{mw__common_8h_951fe8ecf541aefa62dce5e5ae367cde}{mwString\_\-get} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, char $\ast$$\ast$str)
\item 
void \hyperlink{mw__common_8h_40e0f234e9795804aacf6d1d2fa99f0c}{mwString\_\-put} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b, const char $\ast$str)
\end{CompactItemize}
\end{Indent}
\begin{Indent}{\bf Compound Data Types}\par
\begin{CompactItemize}
\item 
void \hyperlink{mw__common_8h_e03e8f6f0696f8b8dc7ee8298a802691}{mwAwareIdBlock\_\-clear} (struct \hyperlink{structmwAwareIdBlock}{mwAwareIdBlock} $\ast$idb)
\item 
void \hyperlink{mw__common_8h_ca574e60996232d5d0e3d47a42ce2bab}{mwAwareIdBlock\_\-clone} (struct \hyperlink{structmwAwareIdBlock}{mwAwareIdBlock} $\ast$to, const struct \hyperlink{structmwAwareIdBlock}{mwAwareIdBlock} $\ast$from)
\item 
gboolean \hyperlink{mw__common_8h_ff226482ee1b27ea61953712e3ca8c9d}{mwAwareIdBlock\_\-equal} (const struct \hyperlink{structmwAwareIdBlock}{mwAwareIdBlock} $\ast$a, const struct \hyperlink{structmwAwareIdBlock}{mwAwareIdBlock} $\ast$b)
\item 
void \hyperlink{mw__common_8h_1ee92e4963a732855ec9f29b96738fb4}{mwAwareIdBlock\_\-get} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, struct \hyperlink{structmwAwareIdBlock}{mwAwareIdBlock} $\ast$idb)
\item 
guint \hyperlink{mw__common_8h_f441bce0de443bc70ca28ce4d7f5fdc1}{mwAwareIdBlock\_\-hash} (const struct \hyperlink{structmwAwareIdBlock}{mwAwareIdBlock} $\ast$a)
\item 
void \hyperlink{mw__common_8h_09b2525783aa97675de0af47f9509f56}{mwAwareIdBlock\_\-put} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b, const struct \hyperlink{structmwAwareIdBlock}{mwAwareIdBlock} $\ast$idb)
\item 
void \hyperlink{mw__common_8h_68af1ca66f150e9de4d5454ba70610db}{mwAwareSnapshot\_\-clear} (struct \hyperlink{structmwAwareSnapshot}{mwAwareSnapshot} $\ast$idb)
\item 
void \hyperlink{mw__common_8h_5222cdeefc805938155e1807c1762847}{mwAwareSnapshot\_\-clone} (struct \hyperlink{structmwAwareSnapshot}{mwAwareSnapshot} $\ast$to, const struct \hyperlink{structmwAwareSnapshot}{mwAwareSnapshot} $\ast$from)
\item 
void \hyperlink{mw__common_8h_e01a999c8e920e6c0ce31506874f7905}{mwAwareSnapshot\_\-get} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, struct \hyperlink{structmwAwareSnapshot}{mwAwareSnapshot} $\ast$idb)
\item 
void \hyperlink{mw__common_8h_902e4a1db1dac0d0262b268f22f15d80}{mwEncryptItem\_\-clear} (struct \hyperlink{structmwEncryptItem}{mwEncryptItem} $\ast$item)
\item 
void \hyperlink{mw__common_8h_9f5d730a9e8d5c4c267af01f483855ab}{mwEncryptItem\_\-free} (struct \hyperlink{structmwEncryptItem}{mwEncryptItem} $\ast$item)
\item 
void \hyperlink{mw__common_8h_0c294ad5e53a91bda1694b3ab7110a8b}{mwEncryptItem\_\-get} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, struct \hyperlink{structmwEncryptItem}{mwEncryptItem} $\ast$item)
\item 
void \hyperlink{mw__common_8h_5965116dbf6d81f20c8046febb34fad1}{mwEncryptItem\_\-put} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b, const struct \hyperlink{structmwEncryptItem}{mwEncryptItem} $\ast$item)
\item 
void \hyperlink{mw__common_8h_17744762ef3e4e7b8100353803f58ed6}{mwIdBlock\_\-clear} (struct \hyperlink{structmwIdBlock}{mwIdBlock} $\ast$id)
\item 
void \hyperlink{mw__common_8h_514b3e3f6708c2fca93a4050c226e51f}{mwIdBlock\_\-clone} (struct \hyperlink{structmwIdBlock}{mwIdBlock} $\ast$to, const struct \hyperlink{structmwIdBlock}{mwIdBlock} $\ast$from)
\item 
gboolean \hyperlink{mw__common_8h_50aab8ef6f493a855edb3aba09b211aa}{mwIdBlock\_\-equal} (const struct \hyperlink{structmwIdBlock}{mwIdBlock} $\ast$a, const struct \hyperlink{structmwIdBlock}{mwIdBlock} $\ast$b)
\item 
void \hyperlink{mw__common_8h_01ad9743e98a0b36987e2bb1375c0a8f}{mwIdBlock\_\-get} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, struct \hyperlink{structmwIdBlock}{mwIdBlock} $\ast$id)
\item 
guint \hyperlink{mw__common_8h_21dce2430cd5a209ae24d5f8c1abe1a2}{mwIdBlock\_\-hash} (const struct \hyperlink{structmwIdBlock}{mwIdBlock} $\ast$idb)
\item 
void \hyperlink{mw__common_8h_163379abcbded6c1b749d50825e0e91f}{mwIdBlock\_\-put} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b, const struct \hyperlink{structmwIdBlock}{mwIdBlock} $\ast$id)
\item 
void \hyperlink{mw__common_8h_488f788f074af14f5deaaaec7d67a8a7}{mwLoginInfo\_\-clear} (struct \hyperlink{structmwLoginInfo}{mwLoginInfo} $\ast$info)
\item 
void \hyperlink{mw__common_8h_1953e00b693c9b93daf6b2d2a1724c5f}{mwLoginInfo\_\-clone} (struct \hyperlink{structmwLoginInfo}{mwLoginInfo} $\ast$to, const struct \hyperlink{structmwLoginInfo}{mwLoginInfo} $\ast$from)
\item 
void \hyperlink{mw__common_8h_3616f539ed957a7e98ee50b0984ae826}{mwLoginInfo\_\-get} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, struct \hyperlink{structmwLoginInfo}{mwLoginInfo} $\ast$info)
\item 
void \hyperlink{mw__common_8h_cc4afc56044cf5b72e650b5df3dcfe07}{mwLoginInfo\_\-put} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b, const struct \hyperlink{structmwLoginInfo}{mwLoginInfo} $\ast$info)
\item 
void \hyperlink{mw__common_8h_416e26f23c934c5cf9244be1032090b3}{mwPrivacyInfo\_\-clear} (struct \hyperlink{structmwPrivacyInfo}{mwPrivacyInfo} $\ast$info)
\item 
void \hyperlink{mw__common_8h_0bb67dc87b544615fde175b033da9a92}{mwPrivacyInfo\_\-clone} (struct \hyperlink{structmwPrivacyInfo}{mwPrivacyInfo} $\ast$to, const struct \hyperlink{structmwPrivacyInfo}{mwPrivacyInfo} $\ast$from)
\item 
void \hyperlink{mw__common_8h_a0b5119419447fa2230bb0cce381a345}{mwPrivacyInfo\_\-get} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, struct \hyperlink{structmwPrivacyInfo}{mwPrivacyInfo} $\ast$info)
\item 
void \hyperlink{mw__common_8h_a7454c9ff1e662a62971f626148f34e2}{mwPrivacyInfo\_\-put} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b, const struct \hyperlink{structmwPrivacyInfo}{mwPrivacyInfo} $\ast$info)
\item 
void \hyperlink{mw__common_8h_7f86dc5861f26d0c413d22df3fc3c54a}{mwUserItem\_\-clear} (struct \hyperlink{structmwUserItem}{mwUserItem} $\ast$user)
\item 
void \hyperlink{mw__common_8h_4f6f358581d4f43181ae55fdf929eec6}{mwUserItem\_\-clone} (struct \hyperlink{structmwUserItem}{mwUserItem} $\ast$to, const struct \hyperlink{structmwUserItem}{mwUserItem} $\ast$from)
\item 
void \hyperlink{mw__common_8h_2c8168d64d973179b628cc1ccd07300a}{mwUserItem\_\-get} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, struct \hyperlink{structmwUserItem}{mwUserItem} $\ast$user)
\item 
void \hyperlink{mw__common_8h_587866ad06ab3faaadc6894acc1555dd}{mwUserItem\_\-put} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b, const struct \hyperlink{structmwUserItem}{mwUserItem} $\ast$user)
\item 
void \hyperlink{mw__common_8h_2a66d04612ad50b8e92e2ac0bd4f7b24}{mwUserStatus\_\-clear} (struct \hyperlink{structmwUserStatus}{mwUserStatus} $\ast$stat)
\item 
void \hyperlink{mw__common_8h_6b8fb7461f8d70d3a2464f78c1031e9a}{mwUserStatus\_\-clone} (struct \hyperlink{structmwUserStatus}{mwUserStatus} $\ast$to, const struct \hyperlink{structmwUserStatus}{mwUserStatus} $\ast$from)
\item 
void \hyperlink{mw__common_8h_48b0704f2e969b9b625ef8217ca3e405}{mwUserStatus\_\-get} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, struct \hyperlink{structmwUserStatus}{mwUserStatus} $\ast$stat)
\item 
void \hyperlink{mw__common_8h_a102a0956a2573c660f707f15551480d}{mwUserStatus\_\-put} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b, const struct \hyperlink{structmwUserStatus}{mwUserStatus} $\ast$stat)
\end{CompactItemize}
\end{Indent}
\begin{Indent}{\bf buffer utility functions}\par
\begin{CompactItemize}
\item 
gsize \hyperlink{mw__common_8h_b69b4b0d15dcef965d7dace95cbd2759}{mwGetBuffer\_\-advance} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, gsize len)
\begin{CompactList}\small\item\em skip len bytes in the get buffer. \item\end{CompactList}\item 
gboolean \hyperlink{mw__common_8h_8e9a78b270fb37c057d60a9281ef0faa}{mwGetBuffer\_\-error} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b)
\begin{CompactList}\small\item\em TRUE if an error occurred while reading a basic type from this buffer. \item\end{CompactList}\item 
void \hyperlink{mw__common_8h_5597c7471ad6d94b2316916fb40ebf1f}{mwGetBuffer\_\-free} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b)
\begin{CompactList}\small\item\em destroy the buffer \item\end{CompactList}\item 
struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$ \hyperlink{mw__common_8h_fc4954abb2586829a5c4f92ba6ab26fd}{mwGetBuffer\_\-new} (struct \hyperlink{structmwOpaque}{mwOpaque} $\ast$data)
\begin{CompactList}\small\item\em allocate a new buffer with a copy of the given data \item\end{CompactList}\item 
gsize \hyperlink{mw__common_8h_d632482732c130a7d5c6cd804f728b6f}{mwGetBuffer\_\-read} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b, gpointer mem, gsize len)
\begin{CompactList}\small\item\em read len bytes of raw data from the get buffer into mem. \item\end{CompactList}\item 
gsize \hyperlink{mw__common_8h_2237feda84b45575ddc8c34293bee932}{mwGetBuffer\_\-remaining} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b)
\begin{CompactList}\small\item\em count of remaining available bytes \item\end{CompactList}\item 
void \hyperlink{mw__common_8h_45fd0ff3a4ac7799c632927e04007a66}{mwGetBuffer\_\-reset} (struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$b)
\begin{CompactList}\small\item\em reset the buffer to the very beginning. \item\end{CompactList}\item 
struct \hyperlink{structmwGetBuffer}{mwGetBuffer} $\ast$ \hyperlink{mw__common_8h_ae99ea879e380ab4fb7f905ce7e779d4}{mwGetBuffer\_\-wrap} (const struct \hyperlink{structmwOpaque}{mwOpaque} $\ast$data)
\begin{CompactList}\small\item\em allocate a new buffer backed by the given data. \item\end{CompactList}\item 
void \hyperlink{mw__common_8h_38a62b5378d25764fc57b43197a435b4}{mwPutBuffer\_\-finalize} (struct \hyperlink{structmwOpaque}{mwOpaque} $\ast$to, struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$from)
\begin{CompactList}\small\item\em move the buffer's data into an opaque, destroy the buffer \item\end{CompactList}\item 
void \hyperlink{mw__common_8h_ce20836983afc071a7904bfca920f3d5}{mwPutBuffer\_\-free} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b)
\begin{CompactList}\small\item\em destroy the buffer \item\end{CompactList}\item 
struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$ \hyperlink{mw__common_8h_6dc10a1008381f993f2621a87578025e}{mwPutBuffer\_\-new} ()
\begin{CompactList}\small\item\em allocate a new empty buffer \item\end{CompactList}\item 
void \hyperlink{mw__common_8h_3c61dfbb971156a7657ecfd50a33c202}{mwPutBuffer\_\-write} (struct \hyperlink{structmwPutBuffer}{mwPutBuffer} $\ast$b, gpointer data, gsize len)
\begin{CompactList}\small\item\em write raw data to the put buffer \item\end{CompactList}\end{CompactItemize}
\end{Indent}


\subsection{Enumeration Type Documentation}
\hypertarget{mw__common_8h_287669ed5ceeb0f591b84a31b1ebbc21}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwAwareType@{mwAwareType}}
\index{mwAwareType@{mwAwareType}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}enum {\bf mwAwareType}}}
\label{mw__common_8h_287669ed5ceeb0f591b84a31b1ebbc21}


type codes for \hyperlink{structmwAwareIdBlock}{mwAwareIdBlock} 

\begin{Desc}
\item[Enumerator: ]\par
\begin{description}
\index{mwAware\_\-USER@{mwAware\_\-USER}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwAware\_\-USER@{mwAware\_\-USER}}\item[{\em 
\hypertarget{mw__common_8h_287669ed5ceeb0f591b84a31b1ebbc21104b7443f4759b421b9a50fc686f56e6}{
mwAware\_\-USER}
\label{mw__common_8h_287669ed5ceeb0f591b84a31b1ebbc21104b7443f4759b421b9a50fc686f56e6}
}]a single user \index{mwAware\_\-GROUP@{mwAware\_\-GROUP}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwAware\_\-GROUP@{mwAware\_\-GROUP}}\item[{\em 
\hypertarget{mw__common_8h_287669ed5ceeb0f591b84a31b1ebbc21515f1ae4d76f8db1cff000389891e838}{
mwAware\_\-GROUP}
\label{mw__common_8h_287669ed5ceeb0f591b84a31b1ebbc21515f1ae4d76f8db1cff000389891e838}
}]a group \index{mwAware\_\-SERVER@{mwAware\_\-SERVER}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwAware\_\-SERVER@{mwAware\_\-SERVER}}\item[{\em 
\hypertarget{mw__common_8h_287669ed5ceeb0f591b84a31b1ebbc21cf3fc82b2a9809cfe299be88b4f98b39}{
mwAware\_\-SERVER}
\label{mw__common_8h_287669ed5ceeb0f591b84a31b1ebbc21cf3fc82b2a9809cfe299be88b4f98b39}
}]a server \end{description}
\end{Desc}

\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e93}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwLoginType@{mwLoginType}}
\index{mwLoginType@{mwLoginType}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}enum {\bf mwLoginType}}}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e93}


The type of login. 

Normally meaning the type of client code being used to login with.

If you know of any additional client identifiers, please add them below or submit an RFE to the meanwhile tracker. \begin{Desc}
\item[Enumerator: ]\par
\begin{description}
\index{mwLogin\_\-LIB@{mwLogin\_\-LIB}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-LIB@{mwLogin\_\-LIB}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e930480908895e0a2b5d31c5f51ee1d7e5a}{
mwLogin\_\-LIB}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e930480908895e0a2b5d31c5f51ee1d7e5a}
}]official Lotus binary library \index{mwLogin\_\-JAVA\_\-WEB@{mwLogin\_\-JAVA\_\-WEB}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-JAVA\_\-WEB@{mwLogin\_\-JAVA\_\-WEB}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e934c97ed2dc01ddf910e654fe57c870b9c}{
mwLogin\_\-JAVA\_\-WEB}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e934c97ed2dc01ddf910e654fe57c870b9c}
}]official Lotus Java applet \index{mwLogin\_\-BINARY@{mwLogin\_\-BINARY}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-BINARY@{mwLogin\_\-BINARY}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e93ec23dbf7edec91fd75ac6b3196ed1419}{
mwLogin\_\-BINARY}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e93ec23dbf7edec91fd75ac6b3196ed1419}
}]official Lotus binary application \index{mwLogin\_\-JAVA\_\-APP@{mwLogin\_\-JAVA\_\-APP}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-JAVA\_\-APP@{mwLogin\_\-JAVA\_\-APP}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e93f759ef2f9721d81052fcef1d74bd9e12}{
mwLogin\_\-JAVA\_\-APP}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e93f759ef2f9721d81052fcef1d74bd9e12}
}]official Lotus Java application \index{mwLogin\_\-LINKS@{mwLogin\_\-LINKS}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-LINKS@{mwLogin\_\-LINKS}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e932a1fb76a64d2fffe763a56b7b4a3caab}{
mwLogin\_\-LINKS}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e932a1fb76a64d2fffe763a56b7b4a3caab}
}]official Sametime Links toolkit \index{mwLogin\_\-NOTES\_\-6\_\-5@{mwLogin\_\-NOTES\_\-6\_\-5}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-NOTES\_\-6\_\-5@{mwLogin\_\-NOTES\_\-6\_\-5}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e9367f864986fda9c6358a2b06e93a28c61}{
mwLogin\_\-NOTES\_\-6\_\-5}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e9367f864986fda9c6358a2b06e93a28c61}
}]\index{mwLogin\_\-NOTES\_\-6\_\-5\_\-3@{mwLogin\_\-NOTES\_\-6\_\-5\_\-3}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-NOTES\_\-6\_\-5\_\-3@{mwLogin\_\-NOTES\_\-6\_\-5\_\-3}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e93c9b66436e215b4ea0dd88374817c8d60}{
mwLogin\_\-NOTES\_\-6\_\-5\_\-3}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e93c9b66436e215b4ea0dd88374817c8d60}
}]\index{mwLogin\_\-NOTES\_\-7\_\-0\_\-beta@{mwLogin\_\-NOTES\_\-7\_\-0\_\-beta}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-NOTES\_\-7\_\-0\_\-beta@{mwLogin\_\-NOTES\_\-7\_\-0\_\-beta}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e9386487bf6655a79c24bd252d598d41ad4}{
mwLogin\_\-NOTES\_\-7\_\-0\_\-beta}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e9386487bf6655a79c24bd252d598d41ad4}
}]\index{mwLogin\_\-NOTES\_\-7\_\-0@{mwLogin\_\-NOTES\_\-7\_\-0}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-NOTES\_\-7\_\-0@{mwLogin\_\-NOTES\_\-7\_\-0}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e931fd30913040c04b7095f288c5b03a789}{
mwLogin\_\-NOTES\_\-7\_\-0}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e931fd30913040c04b7095f288c5b03a789}
}]\index{mwLogin\_\-ICT@{mwLogin\_\-ICT}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-ICT@{mwLogin\_\-ICT}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e9368ab05456157ffca758be779e72a4552}{
mwLogin\_\-ICT}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e9368ab05456157ffca758be779e72a4552}
}]\index{mwLogin\_\-ICT\_\-1\_\-7\_\-8\_\-2@{mwLogin\_\-ICT\_\-1\_\-7\_\-8\_\-2}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-ICT\_\-1\_\-7\_\-8\_\-2@{mwLogin\_\-ICT\_\-1\_\-7\_\-8\_\-2}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e93d378e5747cab3136924ccde56c0cc702}{
mwLogin\_\-ICT\_\-1\_\-7\_\-8\_\-2}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e93d378e5747cab3136924ccde56c0cc702}
}]\index{mwLogin\_\-ICT\_\-SIP@{mwLogin\_\-ICT\_\-SIP}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-ICT\_\-SIP@{mwLogin\_\-ICT\_\-SIP}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e93d132ee491844abf6706381b2141e7a1b}{
mwLogin\_\-ICT\_\-SIP}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e93d132ee491844abf6706381b2141e7a1b}
}]\index{mwLogin\_\-NOTESBUDDY\_\-4\_\-14@{mwLogin\_\-NOTESBUDDY\_\-4\_\-14}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-NOTESBUDDY\_\-4\_\-14@{mwLogin\_\-NOTESBUDDY\_\-4\_\-14}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e9351152337771116b3a9cc4188fc75e3ea}{
mwLogin\_\-NOTESBUDDY\_\-4\_\-14}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e9351152337771116b3a9cc4188fc75e3ea}
}]0xff00 mask? \index{mwLogin\_\-NOTESBUDDY\_\-4\_\-15@{mwLogin\_\-NOTESBUDDY\_\-4\_\-15}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-NOTESBUDDY\_\-4\_\-15@{mwLogin\_\-NOTESBUDDY\_\-4\_\-15}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e939b49fd7949cc1aa6663d58d389c7e003}{
mwLogin\_\-NOTESBUDDY\_\-4\_\-15}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e939b49fd7949cc1aa6663d58d389c7e003}
}]\index{mwLogin\_\-NOTESBUDDY\_\-4\_\-16@{mwLogin\_\-NOTESBUDDY\_\-4\_\-16}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-NOTESBUDDY\_\-4\_\-16@{mwLogin\_\-NOTESBUDDY\_\-4\_\-16}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e93aeebcdc0d8b6b60e8e45b66d72dab3ce}{
mwLogin\_\-NOTESBUDDY\_\-4\_\-16}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e93aeebcdc0d8b6b60e8e45b66d72dab3ce}
}]\index{mwLogin\_\-SANITY@{mwLogin\_\-SANITY}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-SANITY@{mwLogin\_\-SANITY}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e933b46c21b603ff5a564c77ab959cc22e7}{
mwLogin\_\-SANITY}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e933b46c21b603ff5a564c77ab959cc22e7}
}]\index{mwLogin\_\-ST\_\-PERL@{mwLogin\_\-ST\_\-PERL}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-ST\_\-PERL@{mwLogin\_\-ST\_\-PERL}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e93dda2eb39e51522185e137fd990be15cc}{
mwLogin\_\-ST\_\-PERL}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e93dda2eb39e51522185e137fd990be15cc}
}]\index{mwLogin\_\-PMR\_\-ALERT@{mwLogin\_\-PMR\_\-ALERT}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-PMR\_\-ALERT@{mwLogin\_\-PMR\_\-ALERT}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e930210a06807ac724795be6cb17f686390}{
mwLogin\_\-PMR\_\-ALERT}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e930210a06807ac724795be6cb17f686390}
}]\index{mwLogin\_\-TRILLIAN@{mwLogin\_\-TRILLIAN}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-TRILLIAN@{mwLogin\_\-TRILLIAN}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e93c6dfb35a39992ad9cafd78da30dc3754}{
mwLogin\_\-TRILLIAN}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e93c6dfb35a39992ad9cafd78da30dc3754}
}]\href{http://sf.net/st-plugin/}{\tt http://sf.net/st-plugin/} \index{mwLogin\_\-TRILLIAN\_\-IBM@{mwLogin\_\-TRILLIAN\_\-IBM}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-TRILLIAN\_\-IBM@{mwLogin\_\-TRILLIAN\_\-IBM}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e93d4cfaed149f408c9bfd21099b892a75d}{
mwLogin\_\-TRILLIAN\_\-IBM}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e93d4cfaed149f408c9bfd21099b892a75d}
}]\index{mwLogin\_\-MEANWHILE@{mwLogin\_\-MEANWHILE}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwLogin\_\-MEANWHILE@{mwLogin\_\-MEANWHILE}}\item[{\em 
\hypertarget{mw__common_8h_848c722afdb2c37d6cb545320dd15e93a818dec6a8585f130f34b53a728a5ebb}{
mwLogin\_\-MEANWHILE}
\label{mw__common_8h_848c722afdb2c37d6cb545320dd15e93a818dec6a8585f130f34b53a728a5ebb}
}]Meanwhile library. \end{description}
\end{Desc}

\hypertarget{mw__common_8h_5c42e70512279c69743585eea4375898}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwStatusType@{mwStatusType}}
\index{mwStatusType@{mwStatusType}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}enum {\bf mwStatusType}}}
\label{mw__common_8h_5c42e70512279c69743585eea4375898}


\begin{Desc}
\item[Enumerator: ]\par
\begin{description}
\index{mwStatus\_\-ACTIVE@{mwStatus\_\-ACTIVE}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwStatus\_\-ACTIVE@{mwStatus\_\-ACTIVE}}\item[{\em 
\hypertarget{mw__common_8h_5c42e70512279c69743585eea43758983898d37a2587dc3433d7163064a7ca5b}{
mwStatus\_\-ACTIVE}
\label{mw__common_8h_5c42e70512279c69743585eea43758983898d37a2587dc3433d7163064a7ca5b}
}]\index{mwStatus\_\-IDLE@{mwStatus\_\-IDLE}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwStatus\_\-IDLE@{mwStatus\_\-IDLE}}\item[{\em 
\hypertarget{mw__common_8h_5c42e70512279c69743585eea4375898ceba035512606357a0f34fd1a183df1b}{
mwStatus\_\-IDLE}
\label{mw__common_8h_5c42e70512279c69743585eea4375898ceba035512606357a0f34fd1a183df1b}
}]\index{mwStatus\_\-AWAY@{mwStatus\_\-AWAY}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwStatus\_\-AWAY@{mwStatus\_\-AWAY}}\item[{\em 
\hypertarget{mw__common_8h_5c42e70512279c69743585eea43758987ef6a8c0302688c35e2b71d61a5483e0}{
mwStatus\_\-AWAY}
\label{mw__common_8h_5c42e70512279c69743585eea43758987ef6a8c0302688c35e2b71d61a5483e0}
}]\index{mwStatus\_\-BUSY@{mwStatus\_\-BUSY}!mw\_\-common.h@{mw\_\-common.h}}\index{mw\_\-common.h@{mw\_\-common.h}!mwStatus\_\-BUSY@{mwStatus\_\-BUSY}}\item[{\em 
\hypertarget{mw__common_8h_5c42e70512279c69743585eea437589805df95ce8cb55fbd8ca79ea7a2b1f429}{
mwStatus\_\-BUSY}
\label{mw__common_8h_5c42e70512279c69743585eea437589805df95ce8cb55fbd8ca79ea7a2b1f429}
}]\end{description}
\end{Desc}



\subsection{Function Documentation}
\hypertarget{mw__common_8h_2fef42e6253d5f5332509d9cf4f79e82}{
\index{mw\_\-common.h@{mw\_\-common.h}!gboolean\_\-get@{gboolean\_\-get}}
\index{gboolean\_\-get@{gboolean\_\-get}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void gboolean\_\-get (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  gboolean $\ast$ {\em val})}}
\label{mw__common_8h_2fef42e6253d5f5332509d9cf4f79e82}


\hypertarget{mw__common_8h_6183bfe2d8404f2e98d6468d88f78812}{
\index{mw\_\-common.h@{mw\_\-common.h}!gboolean\_\-peek@{gboolean\_\-peek}}
\index{gboolean\_\-peek@{gboolean\_\-peek}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}gboolean gboolean\_\-peek (struct {\bf mwGetBuffer} $\ast$ {\em b})}}
\label{mw__common_8h_6183bfe2d8404f2e98d6468d88f78812}


\hypertarget{mw__common_8h_ee2ec58e63751d3e4b77e700135caa5a}{
\index{mw\_\-common.h@{mw\_\-common.h}!gboolean\_\-put@{gboolean\_\-put}}
\index{gboolean\_\-put@{gboolean\_\-put}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void gboolean\_\-put (struct {\bf mwPutBuffer} $\ast$ {\em b}, \/  gboolean {\em val})}}
\label{mw__common_8h_ee2ec58e63751d3e4b77e700135caa5a}


\hypertarget{mw__common_8h_9d3f4674317ac3f69d9f8a109e3a5955}{
\index{mw\_\-common.h@{mw\_\-common.h}!guint16\_\-get@{guint16\_\-get}}
\index{guint16\_\-get@{guint16\_\-get}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void guint16\_\-get (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  guint16 $\ast$ {\em val})}}
\label{mw__common_8h_9d3f4674317ac3f69d9f8a109e3a5955}


\hypertarget{mw__common_8h_0906c5c9a74667e4185c6464c293322f}{
\index{mw\_\-common.h@{mw\_\-common.h}!guint16\_\-peek@{guint16\_\-peek}}
\index{guint16\_\-peek@{guint16\_\-peek}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}guint16 guint16\_\-peek (struct {\bf mwGetBuffer} $\ast$ {\em b})}}
\label{mw__common_8h_0906c5c9a74667e4185c6464c293322f}


\hypertarget{mw__common_8h_d2a4206c12129f850b5f8015659a0429}{
\index{mw\_\-common.h@{mw\_\-common.h}!guint16\_\-put@{guint16\_\-put}}
\index{guint16\_\-put@{guint16\_\-put}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void guint16\_\-put (struct {\bf mwPutBuffer} $\ast$ {\em b}, \/  guint16 {\em val})}}
\label{mw__common_8h_d2a4206c12129f850b5f8015659a0429}


\hypertarget{mw__common_8h_0f8f8741a63e8be381f2a7276d5d654f}{
\index{mw\_\-common.h@{mw\_\-common.h}!guint32\_\-get@{guint32\_\-get}}
\index{guint32\_\-get@{guint32\_\-get}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void guint32\_\-get (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  guint32 $\ast$ {\em val})}}
\label{mw__common_8h_0f8f8741a63e8be381f2a7276d5d654f}


\hypertarget{mw__common_8h_3b1d9683bc8864ea4c04ca5f46b91fda}{
\index{mw\_\-common.h@{mw\_\-common.h}!guint32\_\-peek@{guint32\_\-peek}}
\index{guint32\_\-peek@{guint32\_\-peek}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}guint32 guint32\_\-peek (struct {\bf mwGetBuffer} $\ast$ {\em b})}}
\label{mw__common_8h_3b1d9683bc8864ea4c04ca5f46b91fda}


\hypertarget{mw__common_8h_93bfb1d220c9b4a476251da45f392910}{
\index{mw\_\-common.h@{mw\_\-common.h}!guint32\_\-put@{guint32\_\-put}}
\index{guint32\_\-put@{guint32\_\-put}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void guint32\_\-put (struct {\bf mwPutBuffer} $\ast$ {\em b}, \/  guint32 {\em val})}}
\label{mw__common_8h_93bfb1d220c9b4a476251da45f392910}


\hypertarget{mw__common_8h_e03e8f6f0696f8b8dc7ee8298a802691}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwAwareIdBlock\_\-clear@{mwAwareIdBlock\_\-clear}}
\index{mwAwareIdBlock\_\-clear@{mwAwareIdBlock\_\-clear}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwAwareIdBlock\_\-clear (struct {\bf mwAwareIdBlock} $\ast$ {\em idb})}}
\label{mw__common_8h_e03e8f6f0696f8b8dc7ee8298a802691}


\hypertarget{mw__common_8h_ca574e60996232d5d0e3d47a42ce2bab}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwAwareIdBlock\_\-clone@{mwAwareIdBlock\_\-clone}}
\index{mwAwareIdBlock\_\-clone@{mwAwareIdBlock\_\-clone}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwAwareIdBlock\_\-clone (struct {\bf mwAwareIdBlock} $\ast$ {\em to}, \/  const struct {\bf mwAwareIdBlock} $\ast$ {\em from})}}
\label{mw__common_8h_ca574e60996232d5d0e3d47a42ce2bab}


\hypertarget{mw__common_8h_ff226482ee1b27ea61953712e3ca8c9d}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwAwareIdBlock\_\-equal@{mwAwareIdBlock\_\-equal}}
\index{mwAwareIdBlock\_\-equal@{mwAwareIdBlock\_\-equal}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}gboolean mwAwareIdBlock\_\-equal (const struct {\bf mwAwareIdBlock} $\ast$ {\em a}, \/  const struct {\bf mwAwareIdBlock} $\ast$ {\em b})}}
\label{mw__common_8h_ff226482ee1b27ea61953712e3ca8c9d}


\hypertarget{mw__common_8h_1ee92e4963a732855ec9f29b96738fb4}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwAwareIdBlock\_\-get@{mwAwareIdBlock\_\-get}}
\index{mwAwareIdBlock\_\-get@{mwAwareIdBlock\_\-get}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwAwareIdBlock\_\-get (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  struct {\bf mwAwareIdBlock} $\ast$ {\em idb})}}
\label{mw__common_8h_1ee92e4963a732855ec9f29b96738fb4}


\hypertarget{mw__common_8h_f441bce0de443bc70ca28ce4d7f5fdc1}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwAwareIdBlock\_\-hash@{mwAwareIdBlock\_\-hash}}
\index{mwAwareIdBlock\_\-hash@{mwAwareIdBlock\_\-hash}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}guint mwAwareIdBlock\_\-hash (const struct {\bf mwAwareIdBlock} $\ast$ {\em a})}}
\label{mw__common_8h_f441bce0de443bc70ca28ce4d7f5fdc1}


\hypertarget{mw__common_8h_09b2525783aa97675de0af47f9509f56}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwAwareIdBlock\_\-put@{mwAwareIdBlock\_\-put}}
\index{mwAwareIdBlock\_\-put@{mwAwareIdBlock\_\-put}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwAwareIdBlock\_\-put (struct {\bf mwPutBuffer} $\ast$ {\em b}, \/  const struct {\bf mwAwareIdBlock} $\ast$ {\em idb})}}
\label{mw__common_8h_09b2525783aa97675de0af47f9509f56}


\hypertarget{mw__common_8h_68af1ca66f150e9de4d5454ba70610db}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwAwareSnapshot\_\-clear@{mwAwareSnapshot\_\-clear}}
\index{mwAwareSnapshot\_\-clear@{mwAwareSnapshot\_\-clear}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwAwareSnapshot\_\-clear (struct {\bf mwAwareSnapshot} $\ast$ {\em idb})}}
\label{mw__common_8h_68af1ca66f150e9de4d5454ba70610db}


\hypertarget{mw__common_8h_5222cdeefc805938155e1807c1762847}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwAwareSnapshot\_\-clone@{mwAwareSnapshot\_\-clone}}
\index{mwAwareSnapshot\_\-clone@{mwAwareSnapshot\_\-clone}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwAwareSnapshot\_\-clone (struct {\bf mwAwareSnapshot} $\ast$ {\em to}, \/  const struct {\bf mwAwareSnapshot} $\ast$ {\em from})}}
\label{mw__common_8h_5222cdeefc805938155e1807c1762847}


\hypertarget{mw__common_8h_e01a999c8e920e6c0ce31506874f7905}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwAwareSnapshot\_\-get@{mwAwareSnapshot\_\-get}}
\index{mwAwareSnapshot\_\-get@{mwAwareSnapshot\_\-get}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwAwareSnapshot\_\-get (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  struct {\bf mwAwareSnapshot} $\ast$ {\em idb})}}
\label{mw__common_8h_e01a999c8e920e6c0ce31506874f7905}


\hypertarget{mw__common_8h_902e4a1db1dac0d0262b268f22f15d80}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwEncryptItem\_\-clear@{mwEncryptItem\_\-clear}}
\index{mwEncryptItem\_\-clear@{mwEncryptItem\_\-clear}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwEncryptItem\_\-clear (struct {\bf mwEncryptItem} $\ast$ {\em item})}}
\label{mw__common_8h_902e4a1db1dac0d0262b268f22f15d80}


\hypertarget{mw__common_8h_9f5d730a9e8d5c4c267af01f483855ab}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwEncryptItem\_\-free@{mwEncryptItem\_\-free}}
\index{mwEncryptItem\_\-free@{mwEncryptItem\_\-free}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwEncryptItem\_\-free (struct {\bf mwEncryptItem} $\ast$ {\em item})}}
\label{mw__common_8h_9f5d730a9e8d5c4c267af01f483855ab}


\hypertarget{mw__common_8h_0c294ad5e53a91bda1694b3ab7110a8b}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwEncryptItem\_\-get@{mwEncryptItem\_\-get}}
\index{mwEncryptItem\_\-get@{mwEncryptItem\_\-get}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwEncryptItem\_\-get (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  struct {\bf mwEncryptItem} $\ast$ {\em item})}}
\label{mw__common_8h_0c294ad5e53a91bda1694b3ab7110a8b}


\hypertarget{mw__common_8h_5965116dbf6d81f20c8046febb34fad1}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwEncryptItem\_\-put@{mwEncryptItem\_\-put}}
\index{mwEncryptItem\_\-put@{mwEncryptItem\_\-put}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwEncryptItem\_\-put (struct {\bf mwPutBuffer} $\ast$ {\em b}, \/  const struct {\bf mwEncryptItem} $\ast$ {\em item})}}
\label{mw__common_8h_5965116dbf6d81f20c8046febb34fad1}


\hypertarget{mw__common_8h_b69b4b0d15dcef965d7dace95cbd2759}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwGetBuffer\_\-advance@{mwGetBuffer\_\-advance}}
\index{mwGetBuffer\_\-advance@{mwGetBuffer\_\-advance}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}gsize mwGetBuffer\_\-advance (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  gsize {\em len})}}
\label{mw__common_8h_b69b4b0d15dcef965d7dace95cbd2759}


skip len bytes in the get buffer. 

If len is greater than the count of bytes remaining in the buffer, the buffer's error flag will NOT be set.

\begin{Desc}
\item[Returns:]count of bytes successfully skipped \end{Desc}
\hypertarget{mw__common_8h_8e9a78b270fb37c057d60a9281ef0faa}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwGetBuffer\_\-error@{mwGetBuffer\_\-error}}
\index{mwGetBuffer\_\-error@{mwGetBuffer\_\-error}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}gboolean mwGetBuffer\_\-error (struct {\bf mwGetBuffer} $\ast$ {\em b})}}
\label{mw__common_8h_8e9a78b270fb37c057d60a9281ef0faa}


TRUE if an error occurred while reading a basic type from this buffer. 

\hypertarget{mw__common_8h_5597c7471ad6d94b2316916fb40ebf1f}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwGetBuffer\_\-free@{mwGetBuffer\_\-free}}
\index{mwGetBuffer\_\-free@{mwGetBuffer\_\-free}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwGetBuffer\_\-free (struct {\bf mwGetBuffer} $\ast$ {\em b})}}
\label{mw__common_8h_5597c7471ad6d94b2316916fb40ebf1f}


destroy the buffer 

\hypertarget{mw__common_8h_fc4954abb2586829a5c4f92ba6ab26fd}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwGetBuffer\_\-new@{mwGetBuffer\_\-new}}
\index{mwGetBuffer\_\-new@{mwGetBuffer\_\-new}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct {\bf mwGetBuffer}$\ast$ mwGetBuffer\_\-new (struct {\bf mwOpaque} $\ast$ {\em data})\hspace{0.3cm}{\tt  \mbox{[}read\mbox{]}}}}
\label{mw__common_8h_fc4954abb2586829a5c4f92ba6ab26fd}


allocate a new buffer with a copy of the given data 

\hypertarget{mw__common_8h_d632482732c130a7d5c6cd804f728b6f}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwGetBuffer\_\-read@{mwGetBuffer\_\-read}}
\index{mwGetBuffer\_\-read@{mwGetBuffer\_\-read}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}gsize mwGetBuffer\_\-read (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  gpointer {\em mem}, \/  gsize {\em len})}}
\label{mw__common_8h_d632482732c130a7d5c6cd804f728b6f}


read len bytes of raw data from the get buffer into mem. 

If len is greater than the count of bytes remaining in the buffer, the buffer's error flag will NOT be set.

\begin{Desc}
\item[Returns:]count of bytes successfully copied to mem \end{Desc}
\hypertarget{mw__common_8h_2237feda84b45575ddc8c34293bee932}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwGetBuffer\_\-remaining@{mwGetBuffer\_\-remaining}}
\index{mwGetBuffer\_\-remaining@{mwGetBuffer\_\-remaining}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}gsize mwGetBuffer\_\-remaining (struct {\bf mwGetBuffer} $\ast$ {\em b})}}
\label{mw__common_8h_2237feda84b45575ddc8c34293bee932}


count of remaining available bytes 

\hypertarget{mw__common_8h_45fd0ff3a4ac7799c632927e04007a66}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwGetBuffer\_\-reset@{mwGetBuffer\_\-reset}}
\index{mwGetBuffer\_\-reset@{mwGetBuffer\_\-reset}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwGetBuffer\_\-reset (struct {\bf mwGetBuffer} $\ast$ {\em b})}}
\label{mw__common_8h_45fd0ff3a4ac7799c632927e04007a66}


reset the buffer to the very beginning. 

Also clears the buffer's error flag. \hypertarget{mw__common_8h_ae99ea879e380ab4fb7f905ce7e779d4}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwGetBuffer\_\-wrap@{mwGetBuffer\_\-wrap}}
\index{mwGetBuffer\_\-wrap@{mwGetBuffer\_\-wrap}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct {\bf mwGetBuffer}$\ast$ mwGetBuffer\_\-wrap (const struct {\bf mwOpaque} $\ast$ {\em data})\hspace{0.3cm}{\tt  \mbox{[}read\mbox{]}}}}
\label{mw__common_8h_ae99ea879e380ab4fb7f905ce7e779d4}


allocate a new buffer backed by the given data. 

Calling mwGetBuffer\_\-free will not result in the underlying data being freed \hypertarget{mw__common_8h_17744762ef3e4e7b8100353803f58ed6}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwIdBlock\_\-clear@{mwIdBlock\_\-clear}}
\index{mwIdBlock\_\-clear@{mwIdBlock\_\-clear}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwIdBlock\_\-clear (struct {\bf mwIdBlock} $\ast$ {\em id})}}
\label{mw__common_8h_17744762ef3e4e7b8100353803f58ed6}


\hypertarget{mw__common_8h_514b3e3f6708c2fca93a4050c226e51f}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwIdBlock\_\-clone@{mwIdBlock\_\-clone}}
\index{mwIdBlock\_\-clone@{mwIdBlock\_\-clone}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwIdBlock\_\-clone (struct {\bf mwIdBlock} $\ast$ {\em to}, \/  const struct {\bf mwIdBlock} $\ast$ {\em from})}}
\label{mw__common_8h_514b3e3f6708c2fca93a4050c226e51f}


\hypertarget{mw__common_8h_50aab8ef6f493a855edb3aba09b211aa}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwIdBlock\_\-equal@{mwIdBlock\_\-equal}}
\index{mwIdBlock\_\-equal@{mwIdBlock\_\-equal}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}gboolean mwIdBlock\_\-equal (const struct {\bf mwIdBlock} $\ast$ {\em a}, \/  const struct {\bf mwIdBlock} $\ast$ {\em b})}}
\label{mw__common_8h_50aab8ef6f493a855edb3aba09b211aa}


\hypertarget{mw__common_8h_01ad9743e98a0b36987e2bb1375c0a8f}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwIdBlock\_\-get@{mwIdBlock\_\-get}}
\index{mwIdBlock\_\-get@{mwIdBlock\_\-get}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwIdBlock\_\-get (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  struct {\bf mwIdBlock} $\ast$ {\em id})}}
\label{mw__common_8h_01ad9743e98a0b36987e2bb1375c0a8f}


\hypertarget{mw__common_8h_21dce2430cd5a209ae24d5f8c1abe1a2}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwIdBlock\_\-hash@{mwIdBlock\_\-hash}}
\index{mwIdBlock\_\-hash@{mwIdBlock\_\-hash}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}guint mwIdBlock\_\-hash (const struct {\bf mwIdBlock} $\ast$ {\em idb})}}
\label{mw__common_8h_21dce2430cd5a209ae24d5f8c1abe1a2}


\hypertarget{mw__common_8h_163379abcbded6c1b749d50825e0e91f}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwIdBlock\_\-put@{mwIdBlock\_\-put}}
\index{mwIdBlock\_\-put@{mwIdBlock\_\-put}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwIdBlock\_\-put (struct {\bf mwPutBuffer} $\ast$ {\em b}, \/  const struct {\bf mwIdBlock} $\ast$ {\em id})}}
\label{mw__common_8h_163379abcbded6c1b749d50825e0e91f}


\hypertarget{mw__common_8h_488f788f074af14f5deaaaec7d67a8a7}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwLoginInfo\_\-clear@{mwLoginInfo\_\-clear}}
\index{mwLoginInfo\_\-clear@{mwLoginInfo\_\-clear}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwLoginInfo\_\-clear (struct {\bf mwLoginInfo} $\ast$ {\em info})}}
\label{mw__common_8h_488f788f074af14f5deaaaec7d67a8a7}


\hypertarget{mw__common_8h_1953e00b693c9b93daf6b2d2a1724c5f}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwLoginInfo\_\-clone@{mwLoginInfo\_\-clone}}
\index{mwLoginInfo\_\-clone@{mwLoginInfo\_\-clone}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwLoginInfo\_\-clone (struct {\bf mwLoginInfo} $\ast$ {\em to}, \/  const struct {\bf mwLoginInfo} $\ast$ {\em from})}}
\label{mw__common_8h_1953e00b693c9b93daf6b2d2a1724c5f}


\hypertarget{mw__common_8h_3616f539ed957a7e98ee50b0984ae826}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwLoginInfo\_\-get@{mwLoginInfo\_\-get}}
\index{mwLoginInfo\_\-get@{mwLoginInfo\_\-get}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwLoginInfo\_\-get (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  struct {\bf mwLoginInfo} $\ast$ {\em info})}}
\label{mw__common_8h_3616f539ed957a7e98ee50b0984ae826}


\hypertarget{mw__common_8h_cc4afc56044cf5b72e650b5df3dcfe07}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwLoginInfo\_\-put@{mwLoginInfo\_\-put}}
\index{mwLoginInfo\_\-put@{mwLoginInfo\_\-put}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwLoginInfo\_\-put (struct {\bf mwPutBuffer} $\ast$ {\em b}, \/  const struct {\bf mwLoginInfo} $\ast$ {\em info})}}
\label{mw__common_8h_cc4afc56044cf5b72e650b5df3dcfe07}


\hypertarget{mw__common_8h_29cb2cfe0ceb4dda4e0b6d1882c862f8}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwOpaque\_\-clear@{mwOpaque\_\-clear}}
\index{mwOpaque\_\-clear@{mwOpaque\_\-clear}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwOpaque\_\-clear (struct {\bf mwOpaque} $\ast$ {\em o})}}
\label{mw__common_8h_29cb2cfe0ceb4dda4e0b6d1882c862f8}


\hypertarget{mw__common_8h_9afc39007793553726c606addf685a77}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwOpaque\_\-clone@{mwOpaque\_\-clone}}
\index{mwOpaque\_\-clone@{mwOpaque\_\-clone}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwOpaque\_\-clone (struct {\bf mwOpaque} $\ast$ {\em to}, \/  const struct {\bf mwOpaque} $\ast$ {\em from})}}
\label{mw__common_8h_9afc39007793553726c606addf685a77}


\hypertarget{mw__common_8h_75824de7a15e82156306bc0782de7569}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwOpaque\_\-free@{mwOpaque\_\-free}}
\index{mwOpaque\_\-free@{mwOpaque\_\-free}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwOpaque\_\-free (struct {\bf mwOpaque} $\ast$ {\em o})}}
\label{mw__common_8h_75824de7a15e82156306bc0782de7569}


\hypertarget{mw__common_8h_22d723ee07b4c5e59b8c699b05185efc}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwOpaque\_\-get@{mwOpaque\_\-get}}
\index{mwOpaque\_\-get@{mwOpaque\_\-get}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwOpaque\_\-get (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  struct {\bf mwOpaque} $\ast$ {\em o})}}
\label{mw__common_8h_22d723ee07b4c5e59b8c699b05185efc}


\hypertarget{mw__common_8h_f35f8afe6e9285bef1dc74586c71956a}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwOpaque\_\-put@{mwOpaque\_\-put}}
\index{mwOpaque\_\-put@{mwOpaque\_\-put}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwOpaque\_\-put (struct {\bf mwPutBuffer} $\ast$ {\em b}, \/  const struct {\bf mwOpaque} $\ast$ {\em o})}}
\label{mw__common_8h_f35f8afe6e9285bef1dc74586c71956a}


\hypertarget{mw__common_8h_416e26f23c934c5cf9244be1032090b3}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwPrivacyInfo\_\-clear@{mwPrivacyInfo\_\-clear}}
\index{mwPrivacyInfo\_\-clear@{mwPrivacyInfo\_\-clear}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwPrivacyInfo\_\-clear (struct {\bf mwPrivacyInfo} $\ast$ {\em info})}}
\label{mw__common_8h_416e26f23c934c5cf9244be1032090b3}


\hypertarget{mw__common_8h_0bb67dc87b544615fde175b033da9a92}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwPrivacyInfo\_\-clone@{mwPrivacyInfo\_\-clone}}
\index{mwPrivacyInfo\_\-clone@{mwPrivacyInfo\_\-clone}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwPrivacyInfo\_\-clone (struct {\bf mwPrivacyInfo} $\ast$ {\em to}, \/  const struct {\bf mwPrivacyInfo} $\ast$ {\em from})}}
\label{mw__common_8h_0bb67dc87b544615fde175b033da9a92}


\hypertarget{mw__common_8h_a0b5119419447fa2230bb0cce381a345}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwPrivacyInfo\_\-get@{mwPrivacyInfo\_\-get}}
\index{mwPrivacyInfo\_\-get@{mwPrivacyInfo\_\-get}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwPrivacyInfo\_\-get (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  struct {\bf mwPrivacyInfo} $\ast$ {\em info})}}
\label{mw__common_8h_a0b5119419447fa2230bb0cce381a345}


\hypertarget{mw__common_8h_a7454c9ff1e662a62971f626148f34e2}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwPrivacyInfo\_\-put@{mwPrivacyInfo\_\-put}}
\index{mwPrivacyInfo\_\-put@{mwPrivacyInfo\_\-put}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwPrivacyInfo\_\-put (struct {\bf mwPutBuffer} $\ast$ {\em b}, \/  const struct {\bf mwPrivacyInfo} $\ast$ {\em info})}}
\label{mw__common_8h_a7454c9ff1e662a62971f626148f34e2}


\hypertarget{mw__common_8h_38a62b5378d25764fc57b43197a435b4}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwPutBuffer\_\-finalize@{mwPutBuffer\_\-finalize}}
\index{mwPutBuffer\_\-finalize@{mwPutBuffer\_\-finalize}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwPutBuffer\_\-finalize (struct {\bf mwOpaque} $\ast$ {\em to}, \/  struct {\bf mwPutBuffer} $\ast$ {\em from})}}
\label{mw__common_8h_38a62b5378d25764fc57b43197a435b4}


move the buffer's data into an opaque, destroy the buffer 

\hypertarget{mw__common_8h_ce20836983afc071a7904bfca920f3d5}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwPutBuffer\_\-free@{mwPutBuffer\_\-free}}
\index{mwPutBuffer\_\-free@{mwPutBuffer\_\-free}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwPutBuffer\_\-free (struct {\bf mwPutBuffer} $\ast$ {\em b})}}
\label{mw__common_8h_ce20836983afc071a7904bfca920f3d5}


destroy the buffer 

\hypertarget{mw__common_8h_6dc10a1008381f993f2621a87578025e}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwPutBuffer\_\-new@{mwPutBuffer\_\-new}}
\index{mwPutBuffer\_\-new@{mwPutBuffer\_\-new}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct {\bf mwPutBuffer}$\ast$ mwPutBuffer\_\-new ()\hspace{0.3cm}{\tt  \mbox{[}read\mbox{]}}}}
\label{mw__common_8h_6dc10a1008381f993f2621a87578025e}


allocate a new empty buffer 

\hypertarget{mw__common_8h_3c61dfbb971156a7657ecfd50a33c202}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwPutBuffer\_\-write@{mwPutBuffer\_\-write}}
\index{mwPutBuffer\_\-write@{mwPutBuffer\_\-write}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwPutBuffer\_\-write (struct {\bf mwPutBuffer} $\ast$ {\em b}, \/  gpointer {\em data}, \/  gsize {\em len})}}
\label{mw__common_8h_3c61dfbb971156a7657ecfd50a33c202}


write raw data to the put buffer 

\hypertarget{mw__common_8h_951fe8ecf541aefa62dce5e5ae367cde}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwString\_\-get@{mwString\_\-get}}
\index{mwString\_\-get@{mwString\_\-get}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwString\_\-get (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  char $\ast$$\ast$ {\em str})}}
\label{mw__common_8h_951fe8ecf541aefa62dce5e5ae367cde}


\hypertarget{mw__common_8h_40e0f234e9795804aacf6d1d2fa99f0c}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwString\_\-put@{mwString\_\-put}}
\index{mwString\_\-put@{mwString\_\-put}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwString\_\-put (struct {\bf mwPutBuffer} $\ast$ {\em b}, \/  const char $\ast$ {\em str})}}
\label{mw__common_8h_40e0f234e9795804aacf6d1d2fa99f0c}


\hypertarget{mw__common_8h_7f86dc5861f26d0c413d22df3fc3c54a}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwUserItem\_\-clear@{mwUserItem\_\-clear}}
\index{mwUserItem\_\-clear@{mwUserItem\_\-clear}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwUserItem\_\-clear (struct {\bf mwUserItem} $\ast$ {\em user})}}
\label{mw__common_8h_7f86dc5861f26d0c413d22df3fc3c54a}


\hypertarget{mw__common_8h_4f6f358581d4f43181ae55fdf929eec6}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwUserItem\_\-clone@{mwUserItem\_\-clone}}
\index{mwUserItem\_\-clone@{mwUserItem\_\-clone}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwUserItem\_\-clone (struct {\bf mwUserItem} $\ast$ {\em to}, \/  const struct {\bf mwUserItem} $\ast$ {\em from})}}
\label{mw__common_8h_4f6f358581d4f43181ae55fdf929eec6}


\hypertarget{mw__common_8h_2c8168d64d973179b628cc1ccd07300a}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwUserItem\_\-get@{mwUserItem\_\-get}}
\index{mwUserItem\_\-get@{mwUserItem\_\-get}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwUserItem\_\-get (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  struct {\bf mwUserItem} $\ast$ {\em user})}}
\label{mw__common_8h_2c8168d64d973179b628cc1ccd07300a}


\hypertarget{mw__common_8h_587866ad06ab3faaadc6894acc1555dd}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwUserItem\_\-put@{mwUserItem\_\-put}}
\index{mwUserItem\_\-put@{mwUserItem\_\-put}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwUserItem\_\-put (struct {\bf mwPutBuffer} $\ast$ {\em b}, \/  const struct {\bf mwUserItem} $\ast$ {\em user})}}
\label{mw__common_8h_587866ad06ab3faaadc6894acc1555dd}


\hypertarget{mw__common_8h_2a66d04612ad50b8e92e2ac0bd4f7b24}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwUserStatus\_\-clear@{mwUserStatus\_\-clear}}
\index{mwUserStatus\_\-clear@{mwUserStatus\_\-clear}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwUserStatus\_\-clear (struct {\bf mwUserStatus} $\ast$ {\em stat})}}
\label{mw__common_8h_2a66d04612ad50b8e92e2ac0bd4f7b24}


\hypertarget{mw__common_8h_6b8fb7461f8d70d3a2464f78c1031e9a}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwUserStatus\_\-clone@{mwUserStatus\_\-clone}}
\index{mwUserStatus\_\-clone@{mwUserStatus\_\-clone}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwUserStatus\_\-clone (struct {\bf mwUserStatus} $\ast$ {\em to}, \/  const struct {\bf mwUserStatus} $\ast$ {\em from})}}
\label{mw__common_8h_6b8fb7461f8d70d3a2464f78c1031e9a}


\hypertarget{mw__common_8h_48b0704f2e969b9b625ef8217ca3e405}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwUserStatus\_\-get@{mwUserStatus\_\-get}}
\index{mwUserStatus\_\-get@{mwUserStatus\_\-get}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwUserStatus\_\-get (struct {\bf mwGetBuffer} $\ast$ {\em b}, \/  struct {\bf mwUserStatus} $\ast$ {\em stat})}}
\label{mw__common_8h_48b0704f2e969b9b625ef8217ca3e405}


\hypertarget{mw__common_8h_a102a0956a2573c660f707f15551480d}{
\index{mw\_\-common.h@{mw\_\-common.h}!mwUserStatus\_\-put@{mwUserStatus\_\-put}}
\index{mwUserStatus\_\-put@{mwUserStatus\_\-put}!mw_common.h@{mw\_\-common.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mwUserStatus\_\-put (struct {\bf mwPutBuffer} $\ast$ {\em b}, \/  const struct {\bf mwUserStatus} $\ast$ {\em stat})}}
\label{mw__common_8h_a102a0956a2573c660f707f15551480d}


