summaryrefslogtreecommitdiff
path: root/protocols/Steam
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/Steam')
-rw-r--r--protocols/Steam/Steam.vcxproj55
-rw-r--r--protocols/Steam/Steam.vcxproj.filters96
-rw-r--r--protocols/Steam/proto_steam/res/FFC.icobin5430 -> 0 bytes
-rw-r--r--protocols/Steam/proto_steam/res/Invisible.icobin0 -> 5430 bytes
-rw-r--r--protocols/Steam/proto_steam/res/Proto_Steam.rc2
-rw-r--r--protocols/Steam/proto_steam/src/resource.h2
-rw-r--r--protocols/Steam/res/Resource.rc53
-rw-r--r--protocols/Steam/src/api/app_info.h26
-rw-r--r--protocols/Steam/src/api/avatar.h14
-rw-r--r--protocols/Steam/src/api/captcha.h3
-rw-r--r--protocols/Steam/src/api/enums.h121
-rw-r--r--protocols/Steam/src/api/friend.h7
-rw-r--r--protocols/Steam/src/api/friend_list.h86
-rw-r--r--protocols/Steam/src/api/history.h44
-rw-r--r--protocols/Steam/src/api/message.h33
-rw-r--r--protocols/Steam/src/api/pending.h51
-rw-r--r--protocols/Steam/src/api/rsa_key.h18
-rw-r--r--protocols/Steam/src/api/search.h12
-rw-r--r--protocols/Steam/src/http_request.h56
-rw-r--r--protocols/Steam/src/main.cpp172
-rw-r--r--protocols/Steam/src/proto.h170
-rw-r--r--protocols/Steam/src/protobuf-c/descriptor.proto921
-rw-r--r--protocols/Steam/src/protobuf-c/encrypted_app_ticket.pb-c.cpp138
-rw-r--r--protocols/Steam/src/protobuf-c/encrypted_app_ticket.pb-c.h78
-rw-r--r--protocols/Steam/src/protobuf-c/encrypted_app_ticket.proto10
-rw-r--r--protocols/Steam/src/protobuf-c/protobuf-c-text.cpp387
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.pb-c.cpp281
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.pb-c.h90
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.proto24
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_base.pb-c.h4
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_base.proto2
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_chat.steamclient.pb-c.cpp15991
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_chat.steamclient.pb-c.h5799
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_chat.steamclient.proto1281
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_clientserver.pb-c.cpp5757
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_clientserver.pb-c.h1748
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_clientserver.proto392
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_clientserver_2.pb-c.cpp12244
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_clientserver_2.pb-c.h4100
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_clientserver_2.proto758
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_clientserver_appinfo.pb-c.cpp1712
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_clientserver_appinfo.pb-c.h557
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_clientserver_appinfo.proto130
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_clientserver_friends.pb-c.cpp3920
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_clientserver_friends.pb-c.h1264
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_clientserver_friends.proto260
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_deviceauth.steamclient.pb-c.cpp2522
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_deviceauth.steamclient.pb-c.h1007
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_deviceauth.steamclient.proto203
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_friendmessages.steamclient.pb-c.cpp1942
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_friendmessages.steamclient.pb-c.h693
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_friendmessages.steamclient.proto168
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_notifications.steamclient.pb-c.cpp599
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_notifications.steamclient.pb-c.h251
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_notifications.steamclient.proto70
-rw-r--r--protocols/Steam/src/protobuf-c/steammessages_unified_base.steamclient.proto2
-rw-r--r--protocols/Steam/src/resource.h5
-rw-r--r--protocols/Steam/src/stdafx.cxx2
-rw-r--r--protocols/Steam/src/stdafx.h27
-rw-r--r--protocols/Steam/src/steam_avatars.cpp24
-rw-r--r--protocols/Steam/src/steam_bbcodes.cpp166
-rw-r--r--protocols/Steam/src/steam_chats.cpp462
-rw-r--r--protocols/Steam/src/steam_contacts.cpp514
-rw-r--r--protocols/Steam/src/steam_dialogs.cpp148
-rw-r--r--protocols/Steam/src/steam_dialogs.h70
-rw-r--r--protocols/Steam/src/steam_history.cpp170
-rw-r--r--protocols/Steam/src/steam_login.cpp392
-rw-r--r--protocols/Steam/src/steam_menus.cpp95
-rw-r--r--protocols/Steam/src/steam_messages.cpp125
-rw-r--r--protocols/Steam/src/steam_proto.cpp202
-rw-r--r--protocols/Steam/src/steam_proto.h296
-rw-r--r--protocols/Steam/src/steam_request.cpp44
-rw-r--r--protocols/Steam/src/steam_server.cpp248
-rw-r--r--protocols/Steam/src/steam_utils.cpp113
-rw-r--r--protocols/Steam/src/steam_utils.h32
-rw-r--r--protocols/Steam/src/steam_ws.cpp325
-rw-r--r--protocols/Steam/src/steam_xstatus.cpp10
-rw-r--r--protocols/Steam/src/version.h4
78 files changed, 68013 insertions, 1787 deletions
diff --git a/protocols/Steam/Steam.vcxproj b/protocols/Steam/Steam.vcxproj
index 0f2fac75bd..a8b0ce0f3f 100644
--- a/protocols/Steam/Steam.vcxproj
+++ b/protocols/Steam/Steam.vcxproj
@@ -27,9 +27,15 @@
</ImportGroup>
<ItemGroup>
<ClCompile Include="src\main.cpp" />
+ <ClCompile Include="src\protobuf-c\encrypted_app_ticket.pb-c.cpp">
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ </ClCompile>
<ClCompile Include="src\protobuf-c\enums.pb-c.cpp">
<PrecompiledHeader>NotUsing</PrecompiledHeader>
</ClCompile>
+ <ClCompile Include="src\protobuf-c\protobuf-c-text.cpp">
+ <PrecompiledHeaderFile>../stdafx.h</PrecompiledHeaderFile>
+ </ClCompile>
<ClCompile Include="src\protobuf-c\protobuf-c.c">
<PrecompiledHeader>NotUsing</PrecompiledHeader>
</ClCompile>
@@ -39,9 +45,33 @@
<ClCompile Include="src\protobuf-c\steammessages_base.pb-c.cpp">
<PrecompiledHeader>NotUsing</PrecompiledHeader>
</ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_chat.steamclient.pb-c.cpp">
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_clientserver.pb-c.cpp">
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_clientserver_2.pb-c.cpp">
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_clientserver_appinfo.pb-c.cpp">
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_clientserver_friends.pb-c.cpp">
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ </ClCompile>
<ClCompile Include="src\protobuf-c\steammessages_clientserver_login.pb-c.cpp">
<PrecompiledHeader>NotUsing</PrecompiledHeader>
</ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_deviceauth.steamclient.pb-c.cpp">
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_friendmessages.steamclient.pb-c.cpp">
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_notifications.steamclient.pb-c.cpp">
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ </ClCompile>
<ClCompile Include="src\protobuf-c\steammessages_unified_base.steamclient.pb-c.cpp">
<PrecompiledHeader>NotUsing</PrecompiledHeader>
</ClCompile>
@@ -49,6 +79,8 @@
<PrecompiledHeader>Create</PrecompiledHeader>
</ClCompile>
<ClCompile Include="src\steam_avatars.cpp" />
+ <ClCompile Include="src\steam_bbcodes.cpp" />
+ <ClCompile Include="src\steam_chats.cpp" />
<ClCompile Include="src\steam_contacts.cpp" />
<ClCompile Include="src\steam_crypt.cpp" />
<ClCompile Include="src\steam_dialogs.cpp" />
@@ -62,31 +94,35 @@
<ClCompile Include="src\steam_request.cpp" />
<ClCompile Include="src\steam_server.cpp" />
<ClCompile Include="src\steam_utils.cpp" />
+ <ClCompile Include="src\steam_ws.cpp" />
<ClCompile Include="src\steam_xstatus.cpp" />
- <ClInclude Include="src\api\app_info.h" />
- <ClInclude Include="src\api\avatar.h" />
<ClInclude Include="src\api\captcha.h" />
<ClInclude Include="src\api\enums.h" />
<ClInclude Include="src\api\friend.h" />
- <ClInclude Include="src\api\friend_list.h" />
- <ClInclude Include="src\api\history.h" />
- <ClInclude Include="src\api\message.h" />
<ClInclude Include="src\api\pending.h" />
- <ClInclude Include="src\api\rsa_key.h" />
<ClInclude Include="src\api\search.h" />
<ClInclude Include="src\api\session.h" />
- <ClInclude Include="src\http_request.h" />
<ClInclude Include="src\proto.h" />
+ <ClInclude Include="src\protobuf-c\encrypted_app_ticket.pb-c.h" />
<ClInclude Include="src\protobuf-c\enums.pb-c.h" />
<ClInclude Include="src\protobuf-c\protobuf-c.h" />
<ClInclude Include="src\protobuf-c\steammessages_auth.steamclient.pb-c.h" />
<ClInclude Include="src\protobuf-c\steammessages_base.pb-c.h" />
+ <ClInclude Include="src\protobuf-c\steammessages_chat.steamclient.pb-c.h" />
+ <ClInclude Include="src\protobuf-c\steammessages_clientserver.pb-c.h" />
+ <ClInclude Include="src\protobuf-c\steammessages_clientserver_2.pb-c.h" />
+ <ClInclude Include="src\protobuf-c\steammessages_clientserver_appinfo.pb-c.h" />
+ <ClInclude Include="src\protobuf-c\steammessages_clientserver_friends.pb-c.h" />
<ClInclude Include="src\protobuf-c\steammessages_clientserver_login.pb-c.h" />
+ <ClInclude Include="src\protobuf-c\steammessages_deviceauth.steamclient.pb-c.h" />
+ <ClInclude Include="src\protobuf-c\steammessages_friendmessages.steamclient.pb-c.h" />
+ <ClInclude Include="src\protobuf-c\steammessages_notifications.steamclient.pb-c.h" />
<ClInclude Include="src\protobuf-c\steammessages_unified_base.steamclient.pb-c.h" />
<ClInclude Include="src\resource.h" />
<ClInclude Include="src\stdafx.h" />
<ClInclude Include="src\steam_dialogs.h" />
<ClInclude Include="src\steam_proto.h" />
+ <ClInclude Include="src\steam_utils.h" />
<ClInclude Include="src\version.h" />
<None Include="res\gaming.ico" />
<None Include="res\steam.ico" />
@@ -95,6 +131,11 @@
<ResourceCompile Include="res\Resource.rc" />
<ResourceCompile Include="res\version.rc" />
</ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\libs\zlib\zlib.vcxproj">
+ <Project>{e2a369cd-eda3-414f-8ad0-e732cd7ee68c}</Project>
+ </ProjectReference>
+ </ItemGroup>
<ItemDefinitionGroup>
<ClCompile>
<LanguageStandard>stdcpp17</LanguageStandard>
diff --git a/protocols/Steam/Steam.vcxproj.filters b/protocols/Steam/Steam.vcxproj.filters
index 250f162311..576ca61aa2 100644
--- a/protocols/Steam/Steam.vcxproj.filters
+++ b/protocols/Steam/Steam.vcxproj.filters
@@ -78,11 +78,47 @@
<ClCompile Include="src\protobuf-c\enums.pb-c.cpp">
<Filter>Source Files\protobuf</Filter>
</ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_chat.steamclient.pb-c.cpp">
+ <Filter>Source Files\protobuf</Filter>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_clientserver_friends.pb-c.cpp">
+ <Filter>Source Files\protobuf</Filter>
+ </ClCompile>
+ <ClCompile Include="src\steam_ws.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_friendmessages.steamclient.pb-c.cpp">
+ <Filter>Source Files\protobuf</Filter>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\protobuf-c-text.cpp">
+ <Filter>Source Files\protobuf</Filter>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_clientserver.pb-c.cpp">
+ <Filter>Source Files\protobuf</Filter>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\encrypted_app_ticket.pb-c.cpp">
+ <Filter>Source Files\protobuf</Filter>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_notifications.steamclient.pb-c.cpp">
+ <Filter>Source Files\protobuf</Filter>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_clientserver_2.pb-c.cpp">
+ <Filter>Source Files\protobuf</Filter>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_clientserver_appinfo.pb-c.cpp">
+ <Filter>Source Files\protobuf</Filter>
+ </ClCompile>
+ <ClCompile Include="src\protobuf-c\steammessages_deviceauth.steamclient.pb-c.cpp">
+ <Filter>Source Files\protobuf</Filter>
+ </ClCompile>
+ <ClCompile Include="src\steam_chats.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="src\steam_bbcodes.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
- <ClInclude Include="src\http_request.h">
- <Filter>Header Files</Filter>
- </ClInclude>
<ClInclude Include="src\resource.h">
<Filter>Header Files</Filter>
</ClInclude>
@@ -98,36 +134,15 @@
<ClInclude Include="src\version.h">
<Filter>Header Files</Filter>
</ClInclude>
- <ClInclude Include="src\api\enums.h">
- <Filter>Header Files\api</Filter>
- </ClInclude>
- <ClInclude Include="src\api\app_info.h">
- <Filter>Header Files\api</Filter>
- </ClInclude>
- <ClInclude Include="src\api\avatar.h">
- <Filter>Header Files\api</Filter>
- </ClInclude>
<ClInclude Include="src\api\captcha.h">
<Filter>Header Files\api</Filter>
</ClInclude>
<ClInclude Include="src\api\friend.h">
<Filter>Header Files\api</Filter>
</ClInclude>
- <ClInclude Include="src\api\friend_list.h">
- <Filter>Header Files\api</Filter>
- </ClInclude>
- <ClInclude Include="src\api\history.h">
- <Filter>Header Files\api</Filter>
- </ClInclude>
- <ClInclude Include="src\api\message.h">
- <Filter>Header Files\api</Filter>
- </ClInclude>
<ClInclude Include="src\api\pending.h">
<Filter>Header Files\api</Filter>
</ClInclude>
- <ClInclude Include="src\api\rsa_key.h">
- <Filter>Header Files\api</Filter>
- </ClInclude>
<ClInclude Include="src\api\search.h">
<Filter>Header Files\api</Filter>
</ClInclude>
@@ -155,6 +170,39 @@
<ClInclude Include="src\proto.h">
<Filter>Source Files\protobuf</Filter>
</ClInclude>
+ <ClInclude Include="src\protobuf-c\steammessages_chat.steamclient.pb-c.h">
+ <Filter>Source Files\protobuf</Filter>
+ </ClInclude>
+ <ClInclude Include="src\protobuf-c\steammessages_clientserver_friends.pb-c.h">
+ <Filter>Source Files\protobuf</Filter>
+ </ClInclude>
+ <ClInclude Include="src\protobuf-c\steammessages_friendmessages.steamclient.pb-c.h">
+ <Filter>Source Files\protobuf</Filter>
+ </ClInclude>
+ <ClInclude Include="src\protobuf-c\steammessages_clientserver.pb-c.h">
+ <Filter>Source Files\protobuf</Filter>
+ </ClInclude>
+ <ClInclude Include="src\protobuf-c\encrypted_app_ticket.pb-c.h">
+ <Filter>Source Files\protobuf</Filter>
+ </ClInclude>
+ <ClInclude Include="src\protobuf-c\steammessages_notifications.steamclient.pb-c.h">
+ <Filter>Source Files\protobuf</Filter>
+ </ClInclude>
+ <ClInclude Include="src\steam_utils.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="src\protobuf-c\steammessages_clientserver_2.pb-c.h">
+ <Filter>Source Files\protobuf</Filter>
+ </ClInclude>
+ <ClInclude Include="src\protobuf-c\steammessages_clientserver_appinfo.pb-c.h">
+ <Filter>Source Files\protobuf</Filter>
+ </ClInclude>
+ <ClInclude Include="src\protobuf-c\steammessages_deviceauth.steamclient.pb-c.h">
+ <Filter>Source Files\protobuf</Filter>
+ </ClInclude>
+ <ClInclude Include="src\api\enums.h">
+ <Filter>Source Files\protobuf</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="res\Resource.rc">
diff --git a/protocols/Steam/proto_steam/res/FFC.ico b/protocols/Steam/proto_steam/res/FFC.ico
deleted file mode 100644
index 1e8b4f3bad..0000000000
--- a/protocols/Steam/proto_steam/res/FFC.ico
+++ /dev/null
Binary files differ
diff --git a/protocols/Steam/proto_steam/res/Invisible.ico b/protocols/Steam/proto_steam/res/Invisible.ico
new file mode 100644
index 0000000000..68e4a93641
--- /dev/null
+++ b/protocols/Steam/proto_steam/res/Invisible.ico
Binary files differ
diff --git a/protocols/Steam/proto_steam/res/Proto_Steam.rc b/protocols/Steam/proto_steam/res/Proto_Steam.rc
index 00ad7ff43c..f6a19debab 100644
--- a/protocols/Steam/proto_steam/res/Proto_Steam.rc
+++ b/protocols/Steam/proto_steam/res/Proto_Steam.rc
@@ -54,9 +54,9 @@ END
IDI_ICON1 ICON "Offline.ico"
IDI_ICON2 ICON "Online.ico"
IDI_ICON3 ICON "Away.ico"
+IDI_ICON4 ICON "Invisible.ico"
IDI_ICON5 ICON "NA.ico"
IDI_ICON6 ICON "DND.ico"
-IDI_ICON8 ICON "FFC.ico"
#endif // Russian (Russia) resources
/////////////////////////////////////////////////////////////////////////////
diff --git a/protocols/Steam/proto_steam/src/resource.h b/protocols/Steam/proto_steam/src/resource.h
index 0ecf950bc3..d10257a496 100644
--- a/protocols/Steam/proto_steam/src/resource.h
+++ b/protocols/Steam/proto_steam/src/resource.h
@@ -5,9 +5,9 @@
#define IDI_ICON1 105
#define IDI_ICON2 104
#define IDI_ICON3 128
+#define IDI_ICON4 130
#define IDI_ICON5 131
#define IDI_ICON6 158
-#define IDI_ICON8 129
// Next default values for new objects
//
diff --git a/protocols/Steam/res/Resource.rc b/protocols/Steam/res/Resource.rc
index 32a3f7da85..23cef478fe 100644
--- a/protocols/Steam/res/Resource.rc
+++ b/protocols/Steam/res/Resource.rc
@@ -122,30 +122,6 @@ BEGIN
CONTROL "",IDC_POLLINGERRORLIMITSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,152,176,10,14
END
-IDD_CAPTCHA DIALOGEX 0, 0, 143, 81
-STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
-EXSTYLE WS_EX_TOPMOST
-CAPTION "Captcha"
-FONT 8, "MS Shell Dlg", 400, 0, 0x1
-BEGIN
- EDITTEXT IDC_TEXT,7,40,129,14,ES_AUTOHSCROLL
- DEFPUSHBUTTON "OK",IDOK,31,60,50,14
- PUSHBUTTON "Cancel",IDCANCEL,86,60,50,14
-END
-
-IDD_GUARD DIALOGEX 0, 0, 193, 93
-STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
-EXSTYLE WS_EX_TOPMOST
-CAPTION "Steam Guard"
-FONT 8, "MS Shell Dlg", 400, 0, 0x1
-BEGIN
- EDITTEXT IDC_TEXT,7,51,179,14,ES_AUTOHSCROLL
- DEFPUSHBUTTON "OK",IDOK,75,72,50,14
- PUSHBUTTON "Cancel",IDCANCEL,136,72,50,14
- LTEXT "As an added account security measure, you'll need to grant access by entering the special code we've just sent to your email address.",IDC_STATIC,7,7,179,26
- CONTROL "Go to email domain",IDC_GETDOMAIN,"Hyperlink",WS_GROUP | WS_TABSTOP,7,36,179,8
-END
-
IDD_OPT_BLOCK_LIST DIALOGEX 0, 0, 305, 230
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
EXSTYLE WS_EX_CONTROLPARENT
@@ -169,19 +145,6 @@ BEGIN
LTEXT "Enter the password to continue.",IDC_STATIC,7,5,197,18
END
-IDD_TWOFACTOR DIALOGEX 0, 0, 193, 83
-STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
-EXSTYLE WS_EX_TOPMOST
-CAPTION "Security code"
-FONT 8, "MS Shell Dlg", 400, 0, 0x1
-BEGIN
- EDITTEXT IDC_TEXT,7,41,179,14,ES_AUTOHSCROLL
- DEFPUSHBUTTON "OK",IDOK,75,62,50,14
- PUSHBUTTON "Cancel",IDCANCEL,136,62,50,14
- LTEXT "As an added account security measure, you'll need to grant access by entering the SMS code we've just sent to your mobile phone.",IDC_STATIC,7,7,179,26
-END
-
-
/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
@@ -215,14 +178,6 @@ BEGIN
BOTTOMMARGIN, 74
END
- IDD_GUARD, DIALOG
- BEGIN
- LEFTMARGIN, 7
- RIGHTMARGIN, 186
- TOPMARGIN, 7
- BOTTOMMARGIN, 86
- END
-
IDD_OPT_BLOCK_LIST, DIALOG
BEGIN
LEFTMARGIN, 7
@@ -234,14 +189,6 @@ BEGIN
IDD_PASSWORD_EDITOR, DIALOG
BEGIN
END
-
- IDD_TWOFACTOR, DIALOG
- BEGIN
- LEFTMARGIN, 7
- RIGHTMARGIN, 186
- TOPMARGIN, 7
- BOTTOMMARGIN, 76
- END
END
#endif // APSTUDIO_INVOKED
diff --git a/protocols/Steam/src/api/app_info.h b/protocols/Steam/src/api/app_info.h
deleted file mode 100644
index d2ef0df532..0000000000
--- a/protocols/Steam/src/api/app_info.h
+++ /dev/null
@@ -1,26 +0,0 @@
-#ifndef _STEAM_REQUEST_APP_INFO_H_
-#define _STEAM_REQUEST_APP_INFO_H_
-
-class GetAppInfoRequest : public HttpRequest
-{
-public:
- GetAppInfoRequest(const char *token, const char *appIds) :
- HttpRequest(REQUEST_GET, "/ISteamGameOAuth/GetAppInfo/v0001")
- {
- this << CHAR_PARAM("access_token", token) << CHAR_PARAM("appIds", appIds);
- }
-
- //{
- // "apps": [
- // {
- // "appid": 271590,
- // "name" : "Grand Theft Auto V",
- // "iconurl" : "https://steamcdn-a.akamaihd.net/steamcommunity/public/images/apps/271590/1e72f87eb927fa1485e68aefaff23c7fd7178251.jpg",
- // "logourl" : "https://steamcdn-a.akamaihd.net/steamcommunity/public/images/apps/271590/e447e82f8b0c67f9e001498503c62f2a187bc609.jpg",
- // "logosmallurl" : "https://steamcdn-a.akamaihd.net/steamcommunity/public/images/apps/271590/e447e82f8b0c67f9e001498503c62f2a187bc609_thumb.jpg"
- // }
- // ]
- //}
-};
-
-#endif //_STEAM_REQUEST_APP_INFO_H_
diff --git a/protocols/Steam/src/api/avatar.h b/protocols/Steam/src/api/avatar.h
deleted file mode 100644
index 28e573d9d1..0000000000
--- a/protocols/Steam/src/api/avatar.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#ifndef _STEAM_REQUEST_AVATAR_H_
-#define _STEAM_REQUEST_AVATAR_H_
-
-class GetAvatarRequest : public HttpRequest
-{
-public:
- GetAvatarRequest(const char *url) :
- HttpRequest(REQUEST_GET, url)
- {
- flags = NLHRF_HTTP11 | NLHRF_NODUMP;
- }
-};
-
-#endif //_STEAM_REQUEST_AVATAR_H_
diff --git a/protocols/Steam/src/api/captcha.h b/protocols/Steam/src/api/captcha.h
index a4bacb59f7..a9c017a5a8 100644
--- a/protocols/Steam/src/api/captcha.h
+++ b/protocols/Steam/src/api/captcha.h
@@ -1,9 +1,8 @@
#ifndef _STEAM_REQUEST_CAPTCHA_H_
#define _STEAM_REQUEST_CAPTCHA_H_
-class GetCaptchaRequest : public HttpRequest
+struct GetCaptchaRequest : public HttpRequest
{
-public:
GetCaptchaRequest(const char *captchaId) :
HttpRequest(REQUEST_GET, STEAM_WEB_URL "/public/captcha.php")
{
diff --git a/protocols/Steam/src/api/enums.h b/protocols/Steam/src/api/enums.h
index 2cf767e37f..66626da535 100644
--- a/protocols/Steam/src/api/enums.h
+++ b/protocols/Steam/src/api/enums.h
@@ -1,88 +1,63 @@
#ifndef _STEAM_ENUMS_H_
#define _STEAM_ENUMS_H_
-enum VisibilityState
+namespace FriendRelationship
{
- Private = 1,
- FriendsOnly = 2,
- FriendsOfFriends = 3,
- UsersOnly = 4,
- Public = 5,
-};
-
-enum PersonaState
-{
- Offline = 0,
- Online = 1,
- Busy = 2,
- Away = 3,
- Snooze = 4,
- LookingToTrade = 5,
- LookingToPlay = 6,
- Invisible = 7,
-};
-
-enum class PersonaStateFlag : int
-{
- None = 0,
- HasRichPresence = 1,
- InJoinableGame = 2,
- ClientTypeWeb = 256,
- ClientTypeMobile = 512,
- ClientTypeBigPicture = 1024,
- ClientTypeVR = 2048,
-};
-
-inline PersonaStateFlag operator &(PersonaStateFlag lhs, PersonaStateFlag rhs)
-{
- return static_cast<PersonaStateFlag> (
- static_cast<std::underlying_type<PersonaStateFlag>::type>(lhs) &
- static_cast<std::underlying_type<PersonaStateFlag>::type>(rhs));
+ enum {
+ None = 0,
+ Blocked = 1,
+ RequestRecipient = 2,
+ Friend = 3,
+ RequestInitiator = 4,
+ Ignored = 5,
+ IgnoredFriend = 6,
+ };
}
-enum class PersonaStatusFlag : int
+namespace PersonaState
{
- Status = 1,
- PlayerName = 2,
- QueryPort = 4,
- SourceID = 8,
- Presence = 16,
- Metadata = 32,
- LastSeen = 64,
- ClanInfo = 128,
- GameExtraInfo = 256,
- GameDataBlob = 512,
- ClanTag = 1024,
- Facebook = 2048,
- Unknown = 4096,
-};
+ enum {
+ Offline = 0,
+ Online = 1,
+ Busy = 2,
+ Away = 3,
+ Snooze = 4,
+ LookingToTrade = 5,
+ LookingToPlay = 6,
+ Invisible = 7,
+ };
+}
-inline PersonaStatusFlag operator &(PersonaStatusFlag lhs, PersonaStatusFlag rhs)
+namespace PersonaStateFlag
{
- return static_cast<PersonaStatusFlag> (
- static_cast<std::underlying_type<PersonaStatusFlag>::type>(lhs) &
- static_cast<std::underlying_type<PersonaStatusFlag>::type>(rhs));
+ enum {
+ None = 0,
+ HasRichPresence = 1,
+ InJoinableGame = 2,
+ ClientTypeWeb = 256,
+ ClientTypeMobile = 512,
+ ClientTypeBigPicture = 1024,
+ ClientTypeVR = 2048,
+ };
}
-enum class PersonaRelationshipAction : int
+namespace PersonaStatusFlag
{
- // friend removed from contact list
- Remove = 0,
- // friend added you to ignore list
- Ignore = 1,
- // friend requested auth
- AuthRequest = 2,
- // friend added you to contact list
- AddToList = 3,
- // friend got (or approved?) your auth request
- AuthRequested = 4,
-};
-
-template<typename T>
-bool contains_flag(T x, T y) {
- return (static_cast<typename std::underlying_type<T>::type>(x)
- & static_cast<typename std::underlying_type<T>::type>(y))
- == static_cast<typename std::underlying_type<T>::type>(y);
+ enum {
+ Status = 1,
+ PlayerName = 2,
+ QueryPort = 4,
+ SourceID = 8,
+ Presence = 16,
+ Metadata = 32,
+ LastSeen = 64,
+ ClanInfo = 128,
+ GameExtraInfo = 256,
+ GameDataBlob = 512,
+ ClanTag = 1024,
+ Facebook = 2048,
+ Unknown = 4096,
+ };
}
#endif //_STEAM_ENUMS_H_
diff --git a/protocols/Steam/src/api/friend.h b/protocols/Steam/src/api/friend.h
index a86c2c98e4..31d5b185a6 100644
--- a/protocols/Steam/src/api/friend.h
+++ b/protocols/Steam/src/api/friend.h
@@ -1,13 +1,12 @@
#ifndef _STEAM_REQUEST_FRIEND_H_
#define _STEAM_REQUEST_FRIEND_H_
-class GetUserSummariesRequest : public HttpRequest
+struct GetUserSummariesRequest : public HttpRequest
{
-public:
- GetUserSummariesRequest(CSteamProto *ppro, const char *steamIds) :
+ GetUserSummariesRequest(const char *pszAccessToken, const char *steamIds) :
HttpRequest(REQUEST_GET, "/ISteamUserOAuth/GetUserSummaries/v0002")
{
- this << CHAR_PARAM("access_token", ppro->getMStringA("TokenSecret")) << CHAR_PARAM("steamids", steamIds);
+ this << CHAR_PARAM("access_token", pszAccessToken) << CHAR_PARAM("steamids", steamIds);
}
//{
diff --git a/protocols/Steam/src/api/friend_list.h b/protocols/Steam/src/api/friend_list.h
deleted file mode 100644
index 84d8536bcb..0000000000
--- a/protocols/Steam/src/api/friend_list.h
+++ /dev/null
@@ -1,86 +0,0 @@
-#ifndef _STEAM_REQUEST_FRIEND_LIST_H_
-#define _STEAM_REQUEST_FRIEND_LIST_H_
-
-class GetFriendListRequest : public HttpRequest
-{
-public:
- GetFriendListRequest(const char *token, const char *steamId, const char *relationship) :
- HttpRequest(REQUEST_GET, "/ISteamUserOAuth/GetFriendList/v0001")
- {
- this << CHAR_PARAM("access_token", token) << CHAR_PARAM("steamid", steamId) << CHAR_PARAM("relationship", relationship);
- }
-};
-
-class AddFriendRequest : public HttpRequest
-{
-public:
- AddFriendRequest(const char *token, const char *sessionId, const char *steamId, const char *who) :
- HttpRequest(REQUEST_POST, STEAM_WEB_URL "/actions/AddFriendAjax")
- {
- char login[MAX_PATH];
- mir_snprintf(login, "%s||oauth:%s", steamId, token);
-
- char cookie[MAX_PATH];
- mir_snprintf(cookie, "steamLogin=%s;sessionid=%s;mobileClientVersion=1291812;forceMobile=1;mobileClient=ios", login, sessionId);
-
- AddHeader("Cookie", cookie);
-
- this << CHAR_PARAM("sessionID", sessionId) << CHAR_PARAM("steamid", who);
- }
-};
-
-class BlockFriendRequest : public HttpRequest
-{
-public:
- BlockFriendRequest(const char *token, const char *sessionId, const char *steamId, const char *who) :
- HttpRequest(REQUEST_POST, STEAM_WEB_URL "/actions/BlockUserAjax")
- {
- char login[MAX_PATH];
- mir_snprintf(login, "%s||oauth:%s", steamId, token);
-
- char cookie[MAX_PATH];
- mir_snprintf(cookie, "steamLogin=%s;sessionid=%s;mobileClientVersion=1291812;forceMobile=1;mobileClient=ios", login, sessionId);
-
- AddHeader("Cookie", cookie);
-
- this << CHAR_PARAM("sessionID", sessionId) << CHAR_PARAM("steamid", who) << CHAR_PARAM("action", "ignore");
- }
-};
-
-class UnblockFriendRequest : public HttpRequest
-{
-public:
- UnblockFriendRequest(const char *token, const char *sessionId, const char *steamId, const char *who) :
- HttpRequest(REQUEST_POST, STEAM_WEB_URL "/actions/BlockUserAjax")
- {
- char login[MAX_PATH];
- mir_snprintf(login, "%s||oauth:%s", steamId, token);
-
- char cookie[MAX_PATH];
- mir_snprintf(cookie, "steamLogin=%s;sessionid=%s;mobileClientVersion=1291812;forceMobile=1;mobileClient=ios", login, sessionId);
-
- AddHeader("Cookie", cookie);
-
- this << CHAR_PARAM("sessionID", sessionId) << CHAR_PARAM("steamid", who) << CHAR_PARAM("action", "unignore") << INT_PARAM("block", 0);
- }
-};
-
-class RemoveFriendRequest : public HttpRequest
-{
-public:
- RemoveFriendRequest(const char *token, const char *sessionId, const char *steamId, const char *who) :
- HttpRequest(REQUEST_POST, STEAM_WEB_URL "/actions/RemoveFriendAjax")
- {
- char login[MAX_PATH];
- mir_snprintf(login, "%s||oauth:%s", steamId, token);
-
- char cookie[MAX_PATH];
- mir_snprintf(cookie, "steamLogin=%s;sessionid=%s;mobileClientVersion=1291812;forceMobile=1;mobileClient=ios", login, sessionId);
-
- AddHeader("Cookie", cookie);
-
- this << CHAR_PARAM("sessionID", sessionId) << CHAR_PARAM("steamid", who);
- }
-};
-
-#endif //_STEAM_REQUEST_FRIEND_LIST_H_
diff --git a/protocols/Steam/src/api/history.h b/protocols/Steam/src/api/history.h
deleted file mode 100644
index fbc09abed6..0000000000
--- a/protocols/Steam/src/api/history.h
+++ /dev/null
@@ -1,44 +0,0 @@
-#ifndef _STEAM_REQUEST_HISTORY_H_
-#define _STEAM_REQUEST_HISTORY_H_
-
-class GetConversationsRequest : public HttpRequest
-{
-public:
- GetConversationsRequest(CSteamProto *ppro) :
- HttpRequest(REQUEST_GET, "/IFriendMessagesService/GetActiveMessageSessions/v0001")
- {
- this << CHAR_PARAM("access_token", ppro->getMStringA("TokenSecret"));
- }
-
- //{
- // "response": {
- // "message_sessions": [
- // {
- // "accountid_friend": XXXXXXXXX,
- // "last_message" : 1514975719,
- // "last_view" : 1514975719,
- // "unread_message_count" : 0
- // }
- // ]
- // ,
- // "timestamp": 1515007542
- // }
- //}
-};
-
-class GetHistoryMessagesRequest : public HttpRequest
-{
-public:
- GetHistoryMessagesRequest(const char *token, const char *steamId, const char *who, time_t since) :
- HttpRequest(REQUEST_GET, "/IFriendMessagesService/GetRecentMessages/v0001")
- {
- this
- << CHAR_PARAM("access_token", token)
- << CHAR_PARAM("steamid1", steamId)
- << CHAR_PARAM("steamid2", who)
- // Steam somehow doesn't respect too precise start time parameter, so we better request older time and then do own filtering again
- << INT64_PARAM("rtime32_start_time", since - 1500);
- }
-};
-
-#endif //_STEAM_REQUEST_HISTORY_H_
diff --git a/protocols/Steam/src/api/message.h b/protocols/Steam/src/api/message.h
deleted file mode 100644
index 934bdc875e..0000000000
--- a/protocols/Steam/src/api/message.h
+++ /dev/null
@@ -1,33 +0,0 @@
-#ifndef _STEAM_REQUEST_MESSAGE_H_
-#define _STEAM_REQUEST_MESSAGE_H_
-
-class SendMessageRequest : public HttpRequest
-{
-public:
- SendMessageRequest(const char *token, const char *umqId, const char *steamId, const char *text) :
- HttpRequest(REQUEST_POST, "/ISteamWebUserPresenceOAuth/Message/v0001")
- {
- this
- << CHAR_PARAM("access_token", token)
- << CHAR_PARAM("umqid", umqId)
- << CHAR_PARAM("steamid_dst", steamId)
- << CHAR_PARAM("type", "saytext")
- << CHAR_PARAM("text", text);
- }
-};
-
-class SendTypingRequest : public HttpRequest
-{
-public:
- SendTypingRequest(const char *token, const char *umqId, const char *steamId) :
- HttpRequest(REQUEST_POST, "/ISteamWebUserPresenceOAuth/Message/v0001")
- {
- this
- << CHAR_PARAM("access_token", token)
- << CHAR_PARAM("umqid", umqId)
- << CHAR_PARAM("steamid_dst", steamId)
- << CHAR_PARAM("type", "typing");
- }
-};
-
-#endif //_STEAM_REQUEST_MESSAGE_H_
diff --git a/protocols/Steam/src/api/pending.h b/protocols/Steam/src/api/pending.h
index b8e8e6e15f..bcac0170cc 100644
--- a/protocols/Steam/src/api/pending.h
+++ b/protocols/Steam/src/api/pending.h
@@ -1,13 +1,12 @@
#ifndef _STEAM_REQUEST_PENDING_H_
#define _STEAM_REQUEST_PENDING_H_
-class ApprovePendingRequest : public HttpRequest
+struct ApprovePendingRequest : public HttpRequest
{
-public:
- ApprovePendingRequest(const char *token, const char *sessionId, const char *steamId, const char *who) :
+ ApprovePendingRequest(const char *token, const char *sessionId, int64_t steamId, const char *who) :
HttpRequest(REQUEST_POST, "")
{
- m_szUrl.Format(STEAM_WEB_URL "/profiles/%s/home_process", steamId);
+ m_szUrl.Format(STEAM_WEB_URL "/profiles/%lld/home_process", steamId);
char cookie[MAX_PATH];
mir_snprintf(cookie, "steamLogin=%s||oauth:%s;sessionid=%s;mobileClientVersion=1291812;forceMobile=1;mobileClient=ios",
@@ -15,24 +14,17 @@ public:
AddHeader("Cookie", cookie);
- this
- << CHAR_PARAM("sessionID", sessionId)
- << CHAR_PARAM("id", who)
- << CHAR_PARAM("perform", "accept")
- << CHAR_PARAM("action", "approvePending")
- << CHAR_PARAM("itype", "friend")
- << INT_PARAM("json", 1)
- << INT_PARAM("xml", 0);
+ this << CHAR_PARAM("sessionID", sessionId) << CHAR_PARAM("id", who) << CHAR_PARAM("perform", "accept")
+ << CHAR_PARAM("action", "approvePending") << CHAR_PARAM("itype", "friend") << INT_PARAM("json", 1) << INT_PARAM("xml", 0);
}
};
-class IgnorePendingRequest : public HttpRequest
+struct IgnorePendingRequest : public HttpRequest
{
-public:
- IgnorePendingRequest(const char *token, const char *sessionId, const char *steamId, const char *who) :
+ IgnorePendingRequest(const char *token, const char *sessionId, int64_t steamId, const char *who) :
HttpRequest(REQUEST_POST, "")
{
- m_szUrl.Format(STEAM_WEB_URL "/profiles/%s/home_process", steamId);
+ m_szUrl.Format(STEAM_WEB_URL "/profiles/%lld/home_process", steamId);
char cookie[MAX_PATH];
mir_snprintf(cookie, "steamLogin=%s||oauth:%s;sessionid=%s;mobileClientVersion=1291812;forceMobile=1;mobileClient=ios",
@@ -40,24 +32,17 @@ public:
AddHeader("Cookie", cookie);
- this
- << CHAR_PARAM("sessionID", sessionId)
- << CHAR_PARAM("id", who)
- << CHAR_PARAM("perform", "ignore")
- << CHAR_PARAM("action", "approvePending")
- << CHAR_PARAM("itype", "friend")
- << INT_PARAM("json", 1)
- << INT_PARAM("xml", 0);
+ this << CHAR_PARAM("sessionID", sessionId) << CHAR_PARAM("id", who) << CHAR_PARAM("perform", "ignore")
+ << CHAR_PARAM("action", "approvePending") << CHAR_PARAM("itype", "friend") << INT_PARAM("json", 1) << INT_PARAM("xml", 0);
}
};
-class BlockPendingRequest : public HttpRequest
+struct BlockPendingRequest : public HttpRequest
{
-public:
- BlockPendingRequest(const char *token, const char *sessionId, const char *steamId, const char *who) :
+ BlockPendingRequest(const char *token, const char *sessionId, int64_t steamId, const char *who) :
HttpRequest(REQUEST_POST, "")
{
- m_szUrl.Format(STEAM_WEB_URL "/profiles/%s/home_process", steamId);
+ m_szUrl.Format(STEAM_WEB_URL "/profiles/%lld/home_process", steamId);
char cookie[MAX_PATH];
mir_snprintf(cookie, "steamLogin=%s||oauth:%s;sessionid=%s;mobileClientVersion=1291812;forceMobile=1;mobileClient=ios",
@@ -65,14 +50,8 @@ public:
AddHeader("Cookie", cookie);
- this
- << CHAR_PARAM("sessionID", sessionId)
- << CHAR_PARAM("id", who)
- << CHAR_PARAM("perform", "block")
- << CHAR_PARAM("action", "approvePending")
- << CHAR_PARAM("itype", "friend")
- << INT_PARAM("json", 1)
- << INT_PARAM("xml", 0);
+ this << CHAR_PARAM("sessionID", sessionId) << CHAR_PARAM("id", who) << CHAR_PARAM("perform", "block")
+ << CHAR_PARAM("action", "approvePending") << CHAR_PARAM("itype", "friend") << INT_PARAM("json", 1) << INT_PARAM("xml", 0);
}
};
diff --git a/protocols/Steam/src/api/rsa_key.h b/protocols/Steam/src/api/rsa_key.h
deleted file mode 100644
index 48c76e3e6d..0000000000
--- a/protocols/Steam/src/api/rsa_key.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#ifndef _STEAM_REQUEST_RSA_KEY_H_
-#define _STEAM_REQUEST_RSA_KEY_H_
-
-class GetRsaKeyRequest : public HttpRequest
-{
-public:
- GetRsaKeyRequest(const char *username) :
- HttpRequest(REQUEST_POST, STEAM_WEB_URL "/mobilelogin/getrsakey/")
- {
- flags = NLHRF_HTTP11 | NLHRF_SSL | NLHRF_NODUMP;
-
- this
- << CHAR_PARAM("username", username)
- << INT64_PARAM("donotcache", now());
- }
-};
-
-#endif //_STEAM_REQUEST_RSA_KEY_H_
diff --git a/protocols/Steam/src/api/search.h b/protocols/Steam/src/api/search.h
index d72d140dc5..64ff7e828f 100644
--- a/protocols/Steam/src/api/search.h
+++ b/protocols/Steam/src/api/search.h
@@ -1,19 +1,13 @@
#ifndef _STEAM_REQUEST_SEARCH_H_
#define _STEAM_REQUEST_SEARCH_H_
-class SearchRequest : public HttpRequest
+struct SearchRequest : public HttpRequest
{
-public:
SearchRequest(const char *token, const char *text, int offset = 0, int count = 30) :
HttpRequest(REQUEST_GET, "/ISteamUserOAuth/Search/v0001")
{
- this
- << CHAR_PARAM("access_token", token)
- << CHAR_PARAM("keywords", text)
- << INT_PARAM("offset", offset)
- << INT_PARAM("count", count)
- << CHAR_PARAM("targets", "users")
- << CHAR_PARAM("fields", "all");
+ this << CHAR_PARAM("access_token", token) << CHAR_PARAM("keywords", text) << INT_PARAM("offset", offset)
+ << INT_PARAM("count", count) << CHAR_PARAM("targets", "users") << CHAR_PARAM("fields", "all");
}
//{
diff --git a/protocols/Steam/src/http_request.h b/protocols/Steam/src/http_request.h
deleted file mode 100644
index ac988a804a..0000000000
--- a/protocols/Steam/src/http_request.h
+++ /dev/null
@@ -1,56 +0,0 @@
-#ifndef _HTTP_REQUEST_H_
-#define _HTTP_REQUEST_H_
-
-#define STEAM_USER_AGENT "Valve/Steam HTTP Client 1.0"
-
-class HttpResponse
-{
- MHttpResponse *m_response;
-
-public:
- HttpResponse(MHttpResponse *response) :
- m_response(response)
- {
- }
-
- ~HttpResponse()
- {
- delete m_response;
- }
-
- bool operator!() const
- {
- return !m_response || m_response->body.IsEmpty();
- }
-
- operator bool() const
- {
- return m_response && !m_response->body.IsEmpty();
- }
-
- bool IsSuccess() const
- {
- return m_response &&
- m_response->resultCode >= HTTP_CODE_OK &&
- m_response->resultCode <= HTTP_CODE_MULTI_STATUS;
- }
-
- char* data() const
- {
- return (m_response) ? m_response->body.GetBuffer() : nullptr;
- }
-
- unsigned length() const
- {
- return (m_response) ? m_response->body.GetLength() : 0;
- }
-
- int GetStatusCode() const
- {
- if (m_response)
- return m_response->resultCode;
- return 500;
- }
-};
-
-#endif //_HTTP_REQUEST_H_ \ No newline at end of file
diff --git a/protocols/Steam/src/main.cpp b/protocols/Steam/src/main.cpp
index be3991d116..577b55700f 100644
--- a/protocols/Steam/src/main.cpp
+++ b/protocols/Steam/src/main.cpp
@@ -32,15 +32,181 @@ extern "C" __declspec(dllexport) const MUUID MirandaInterfaces[] = { MIID_PROTOC
/////////////////////////////////////////////////////////////////////////////////////////
+void CMPlugin::InitSteamServices()
+{
+ // message descriptors map
+ messages[EMsg::Multi] = &cmsg_multi__descriptor;
+ messages[EMsg::ClientHeartBeat] = &cmsg_client_heart_beat__descriptor;
+ messages[EMsg::ClientHello] = &cmsg_client_hello__descriptor;
+ messages[EMsg::ClientLogon] = &cmsg_client_logon__descriptor;
+ messages[EMsg::ClientLogOnResponse] = &cmsg_client_logon_response__descriptor;
+ messages[EMsg::ClientLogOff] = &cmsg_client_log_off__descriptor;
+ messages[EMsg::ClientLoggedOff] = &cmsg_client_logged_off__descriptor;
+ messages[EMsg::ClientUpdateMachineAuth] = &cmsg_client_update_machine_auth__descriptor;
+ messages[EMsg::ClientUpdateMachineAuthResponse] = &cmsg_client_update_machine_auth_response__descriptor;
+ messages[EMsg::ClientNewLoginKey] = &cmsg_client_new_login_key__descriptor;
+ messages[EMsg::ClientNewLoginKeyAccepted] = &cmsg_client_new_login_key_accepted__descriptor;
+ messages[EMsg::ClientRequestWebAPIAuthenticateUserNonceResponse] = &cmsg_client_request_web_apiauthenticate_user_nonce_response__descriptor;
+ messages[EMsg::ClientCMList] = &cmsg_client_cmlist__descriptor;
+ messages[EMsg::ClientItemAnnouncements] = &cmsg_client_item_announcements__descriptor;
+ messages[EMsg::ClientRequestItemAnnouncements] = &cmsg_client_request_item_announcements__descriptor;
+ messages[EMsg::ClientCommentNotifications] = &cmsg_client_comment_notifications__descriptor;
+ messages[EMsg::ClientRequestCommentNotifications] = &cmsg_client_request_comment_notifications__descriptor;
+ messages[EMsg::ClientUserNotifications] = &cmsg_client_user_notifications__descriptor;
+ messages[EMsg::ClientFSOfflineMessageNotification] = &cmsg_client_offline_message_notification__descriptor;
+ messages[EMsg::ClientFSRequestOfflineMessageCount] = &cmsg_client_request_offline_message_count__descriptor;
+ messages[EMsg::ClientGamesPlayed] = &cmsg_client_games_played__descriptor;
+ messages[EMsg::ClientGamesPlayedWithDataBlob] = &cmsg_client_games_played__descriptor;
+ messages[EMsg::ClientAccountInfo] = &cmsg_client_account_info__descriptor;
+ // messages[EMsg::ClientEmailAddrInfo] = &cmsg_Client__EmailAddrInfo;
+ messages[EMsg::ClientIsLimitedAccount] = &cmsg_client_is_limited_account__descriptor;
+ messages[EMsg::ClientWalletInfoUpdate] = &cmsg_client_wallet_info_update__descriptor;
+ messages[EMsg::ClientLicenseList] = &cmsg_client_license_list__descriptor;
+ // messages[EMsg::ClientGMSServerQuery] = &cmsg_Client_GMSServerQuery;
+ // messages[EMsg::GMSClientServerQueryResponse] = &cmsg_GMSClientServerQueryResponse;
+ messages[EMsg::ClientPICSChangesSinceResponse] = &cmsg_client_picschanges_since_response__descriptor;
+ messages[EMsg::ClientPICSProductInfoResponse] = &cmsg_client_picsproduct_info_response__descriptor;
+ messages[EMsg::ClientPICSAccessTokenResponse] = &cmsg_client_picsaccess_token_response__descriptor;
+ messages[EMsg::EconTrading_InitiateTradeResponse] = &cmsg_trading__initiate_trade_request__descriptor;
+ messages[EMsg::EconTrading_InitiateTradeResult] = &cmsg_trading__initiate_trade_response__descriptor;
+ messages[EMsg::EconTrading_StartSession] = &cmsg_trading__start_session__descriptor;
+ messages[EMsg::ClientChangeStatus] = &cmsg_client_change_status__descriptor;
+ messages[EMsg::ClientAddFriendResponse] = &cmsg_client_add_friend_response__descriptor;
+ messages[EMsg::ClientRemoveFriend] = &cmsg_client_remove_friend__descriptor;
+ messages[EMsg::ClientFSGetFriendsSteamLevels] = &cmsg_client_fsget_friends_steam_levels__descriptor;
+ messages[EMsg::ClientFSGetFriendsSteamLevelsResponse] = &cmsg_client_fsget_friends_steam_levels_response__descriptor;
+ messages[EMsg::ClientPersonaState] = &cmsg_client_persona_state__descriptor;
+ messages[EMsg::ClientClanState] = &cmsg_client_clan_state__descriptor;
+ messages[EMsg::ClientFriendsList] = &cmsg_client_friends_list__descriptor;
+ messages[EMsg::ClientRequestFriendData] = &cmsg_client_request_friend_data__descriptor;
+ messages[EMsg::ClientFriendMsg] = &cmsg_client_friend_msg__descriptor;
+ messages[EMsg::ClientChatInvite] = &cmsg_client_chat_invite__descriptor;
+ messages[EMsg::ClientFriendMsgIncoming] = &cmsg_client_friend_msg_incoming__descriptor;
+ messages[EMsg::ClientFriendMsgEchoToSender] = &cmsg_client_friend_msg_incoming__descriptor;
+ messages[EMsg::ClientFSGetFriendMessageHistory] = &cmsg_client_chat_get_friend_message_history__descriptor;
+ messages[EMsg::ClientFSGetFriendMessageHistoryResponse] = &cmsg_client_chat_get_friend_message_history_response__descriptor;
+ messages[EMsg::ClientFriendsGroupsList] = &cmsg_client_friends_groups_list__descriptor;
+ messages[EMsg::AMClientCreateFriendsGroup] = &cmsg_client_create_friends_group__descriptor;
+ messages[EMsg::AMClientCreateFriendsGroupResponse] = &cmsg_client_create_friends_group_response__descriptor;
+ messages[EMsg::AMClientDeleteFriendsGroup] = &cmsg_client_delete_friends_group__descriptor;
+ messages[EMsg::AMClientDeleteFriendsGroupResponse] = &cmsg_client_delete_friends_group_response__descriptor;
+ messages[EMsg::AMClientRenameFriendsGroup] = &cmsg_client_manage_friends_group__descriptor;
+ messages[EMsg::AMClientRenameFriendsGroupResponse] = &cmsg_client_manage_friends_group_response__descriptor;
+ messages[EMsg::AMClientAddFriendToGroup] = &cmsg_client_add_friend_to_group__descriptor;
+ messages[EMsg::AMClientAddFriendToGroupResponse] = &cmsg_client_add_friend_to_group_response__descriptor;
+ messages[EMsg::AMClientRemoveFriendFromGroup] = &cmsg_client_remove_friend_from_group__descriptor;
+ messages[EMsg::AMClientRemoveFriendFromGroupResponse] = &cmsg_client_remove_friend_from_group_response__descriptor;
+ messages[EMsg::ClientPlayerNicknameList] = &cmsg_client_player_nickname_list__descriptor;
+ messages[EMsg::AMClientSetPlayerNickname] = &cmsg_client_set_player_nickname__descriptor;
+ messages[EMsg::AMClientSetPlayerNicknameResponse] = &cmsg_client_set_player_nickname_response__descriptor;
+ messages[EMsg::ClientRegisterKey] = &cmsg_client_register_key__descriptor;
+ messages[EMsg::ClientPurchaseResponse] = &cmsg_client_purchase_response__descriptor;
+ messages[EMsg::ClientRequestFreeLicense] = &cmsg_client_request_free_license__descriptor;
+ messages[EMsg::ClientRequestFreeLicenseResponse] = &cmsg_client_request_free_license_response__descriptor;
+ messages[EMsg::ClientGetNumberOfCurrentPlayersDP] = &cmsg_dpget_number_of_current_players__descriptor;
+ messages[EMsg::ClientGetNumberOfCurrentPlayersDPResponse] = &cmsg_dpget_number_of_current_players_response__descriptor;
+ messages[EMsg::ClientGetAppOwnershipTicketResponse] = &cmsg_client_get_app_ownership_ticket_response__descriptor;
+ messages[EMsg::ClientGameConnectTokens] = &cmsg_client_game_connect_tokens__descriptor;
+ messages[EMsg::ClientAuthList] = &cmsg_client_auth_list__descriptor;
+ messages[EMsg::ClientAuthListAck] = &cmsg_client_auth_list_ack__descriptor;
+ messages[EMsg::ClientTicketAuthComplete] = &cmsg_client_ticket_auth_complete__descriptor;
+ messages[EMsg::ClientRequestEncryptedAppTicket] = &cmsg_client_request_encrypted_app_ticket__descriptor;
+ messages[EMsg::ClientRequestEncryptedAppTicketResponse] = &cmsg_client_request_encrypted_app_ticket_response__descriptor;
+ messages[EMsg::ClientCurrentUIMode] = &cmsg_client_uimode__descriptor;
+ messages[EMsg::ClientVanityURLChangedNotification] = &cmsg_client_vanity_urlchanged_notification__descriptor;
+ messages[EMsg::ClientAMGetPersonaNameHistory] = &cmsg_client_amget_persona_name_history__descriptor;
+ messages[EMsg::ClientAMGetPersonaNameHistoryResponse] = &cmsg_client_amget_persona_name_history_response__descriptor;
+ messages[EMsg::ClientGetCDNAuthToken] = &cmsg_client_get_cdnauth_token__descriptor;
+ messages[EMsg::ClientGetCDNAuthTokenResponse] = &cmsg_client_get_cdnauth_token_response__descriptor;
+ messages[EMsg::ClientKickPlayingSession] = &cmsg_client_kick_playing_session__descriptor;
+ messages[EMsg::ClientPlayingSessionState] = &cmsg_client_playing_session_state__descriptor;
+ messages[EMsg::ClientToGC] = &cmsg_gcclient__descriptor;
+ messages[EMsg::ClientFromGC] = &cmsg_gcclient__descriptor;
+ messages[EMsg::ClientRichPresenceUpload] = &cmsg_client_rich_presence_upload__descriptor;
+ messages[EMsg::ClientRichPresenceRequest] = &cmsg_client_rich_presence_request__descriptor;
+ messages[EMsg::ClientRichPresenceInfo] = &cmsg_client_rich_presence_info__descriptor;
+ messages[EMsg::ClientGetEmoticonList] = &cmsg_client_get_emoticon_list__descriptor;
+ messages[EMsg::ClientEmoticonList] = &cmsg_client_emoticon_list__descriptor;
+ messages[EMsg::ClientGetAuthorizedDevicesResponse] = &cmsg_client_get_authorized_devices__descriptor;
+ messages[EMsg::ClientAuthorizeLocalDeviceRequest] = &cmsg_client_authorize_local_device_request__descriptor;
+ messages[EMsg::ClientAuthorizeLocalDeviceResponse] = &cmsg_client_authorize_local_device__descriptor;
+ messages[EMsg::ClientDeauthorizeDeviceRequest] = &cmsg_client_deauthorize_device_request__descriptor;
+ messages[EMsg::ClientDeauthorizeDevice] = &cmsg_client_deauthorize_device__descriptor;
+ messages[EMsg::ClientUseLocalDeviceAuthorizations] = &cmsg_client_use_local_device_authorizations__descriptor;
+
+ // message handlers
+ messageHandlers[EMsg::ClientLoggedOff] = ServiceResponseHandler(&CSteamProto::OnClientLogoff);
+ messageHandlers[EMsg::ClientLogOnResponse] = ServiceResponseHandler(&CSteamProto::OnClientLogon);
+ messageHandlers[EMsg::ClientFriendsList] = ServiceResponseHandler(&CSteamProto::OnGotFriendList);
+ messageHandlers[EMsg::ClientPersonaState] = ServiceResponseHandler(&CSteamProto::OnGotFriendInfo);
+ messageHandlers[EMsg::ClientClanState] = ServiceResponseHandler(&CSteamProto::OnGotClanInfo);
+ messageHandlers[EMsg::ClientPICSProductInfoResponse] = ServiceResponseHandler(&CSteamProto::OnGotAppInfo);
+
+ // services from steammessages_auth.steamclient.proto
+ services["Authentication"] = &authentication__descriptor;
+ services["AuthenticationSupport"] = &authentication_support__descriptor;
+
+ // services from steammessages_chat.steamclient.proto
+ services["Chat"] = &chat__descriptor;
+ services["ChatRoom"] = &chat_room__descriptor;
+ services["ChatRoomClient"] = &chat_room_client__descriptor;
+
+ // services from steammessages_deviceauth.steamclient.proto
+ services["DeviceAuth"] = &device_auth__descriptor;
+
+ // services from steammessages_friendmessages.steamclient.proto
+ services["FriendMessages"] = &friend_messages__descriptor;
+ services["FriendMessagesClient"] = &friend_messages_client__descriptor;
+
+ // services from steammessages_notifications.steamclient.proto
+ services["SteamNotificationClient"] = &steam_notification_client__descriptor;
+
+ // static service handlers
+ serviceHandlers[PollAuthSessionStatus] = ServiceResponseHandler(&CSteamProto::OnPollSession);
+ serviceHandlers[GetPasswordRSAPublicKey] = ServiceResponseHandler(&CSteamProto::OnGotRsaKey);
+ serviceHandlers[BeginAuthSessionViaCredentials] = ServiceResponseHandler(&CSteamProto::OnBeginSession);
+ serviceHandlers[UpdateAuthSessionWithSteamGuardCode] = ServiceResponseHandler(&CSteamProto::OnGotConfirmationCode);
+
+ serviceHandlers[FriendSendMessage] = ServiceResponseHandler(&CSteamProto::OnMessageSent);
+ serviceHandlers[FriendGetActiveSessions] = ServiceResponseHandler(&CSteamProto::OnGotConversations);
+ serviceHandlers[FriendGetRecentMessages] = ServiceResponseHandler(&CSteamProto::OnGotRecentMessages);
+ serviceHandlers[FriendGetIncomingMessage] = ServiceResponseHandler(&CSteamProto::OnGotIncomingMessage);
+ serviceHandlers[FriendNotifyAckMessage] = ServiceResponseHandler(&CSteamProto::OnGotMarkRead);
+
+ serviceHandlers[GetMyChatRoomGroups] = ServiceResponseHandler(&CSteamProto::OnGetMyChats);
+ serviceHandlers[GetChatHistory] = ServiceResponseHandler(&CSteamProto::OnGetChatHistory);
+ serviceHandlers[DeleteChatMessage] = ServiceResponseHandler(&CSteamProto::OnDoNothing);
+ serviceHandlers[LeaveChatGroup] = ServiceResponseHandler(&CSteamProto::OnDoNothing);
+ serviceHandlers[NotifyIncomingChatMessage] = ServiceResponseHandler(&CSteamProto::OnGetChatMessage);
+ serviceHandlers[NotifyAckChatMessageEcho] = ServiceResponseHandler(&CSteamProto::OnDoNothing);
+ serviceHandlers[NotifyModifiedChatMessage] = ServiceResponseHandler(&CSteamProto::OnDoNothing);
+ serviceHandlers[NotifyChatGroupUserStateChanged] = ServiceResponseHandler(&CSteamProto::OnChatChanged);
+
+ serviceHandlers[GetOwnAuthorizedDevices] = ServiceResponseHandler(&CSteamProto::OnGotDeviceList);
+
+ serviceHandlers[NotificationReceived] = ServiceResponseHandler(&CSteamProto::OnGotNotification);
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
+static IconItem iconList[] = {
+ { LPGEN("Protocol icon"), "main", IDI_STEAM },
+ { LPGEN("Gaming icon"), "gaming", IDI_GAMING },
+};
+
int CMPlugin::Load()
{
- char iconName[100];
- mir_snprintf(iconName, "%s_%s", MODULE, "gaming");
+ InitSteamServices();
+
+ // icons
+ g_plugin.registerIcon("Protocols/" MODULENAME, iconList, MODULENAME);
// extra statuses
+ hExtraXStatus = ExtraIcon_RegisterIcolib("steam_game", LPGEN("Steam game"), g_plugin.getIconHandle(IDI_GAMING));
+
HookEvent(ME_SKIN_ICONSCHANGED, OnReloadIcons);
- hExtraXStatus = ExtraIcon_RegisterIcolib("steam_game", LPGEN("Steam game"), iconName);
+ // menus
CSteamProto::InitMenus();
return 0;
}
diff --git a/protocols/Steam/src/proto.h b/protocols/Steam/src/proto.h
index 2d1f07bf6a..c7f917a4e8 100644
--- a/protocols/Steam/src/proto.h
+++ b/protocols/Steam/src/proto.h
@@ -1,6 +1,6 @@
#pragma once
-enum EMsg
+enum class EMsg
{
Invalid = 0,
Multi = 1,
@@ -1962,6 +1962,170 @@ enum EMsg
ServerSecretChanged = 12100,
};
+enum class EChatEntryType
+{
+ Invalid = 0,
+ ChatMsg = 1,
+ Typing = 2,
+ InviteGame = 3,
+ Emote = 4, // removed "No longer supported by clients"
+ LobbyGameStart = 5, // removed "Listen for LobbyGameCreated_t callback instead"
+ LeftConversation = 6,
+ Entered = 7,
+ WasKicked = 8,
+ WasBanned = 9,
+ Disconnected = 10,
+ HistoricalChat = 11,
+ Reserved1 = 12,
+ Reserved2 = 13,
+ LinkBlocked = 14,
+};
+
+enum class EResult
+{
+ Invalid = 0,
+ OK = 1,
+ Fail = 2,
+ NoConnection = 3,
+ InvalidPassword = 5,
+ LoggedInElsewhere = 6,
+ InvalidProtocolVer = 7,
+ InvalidParam = 8,
+ FileNotFound = 9,
+ Busy = 10,
+ InvalidState = 11,
+ InvalidName = 12,
+ InvalidEmail = 13,
+ DuplicateName = 14,
+ AccessDenied = 15,
+ Timeout = 16,
+ Banned = 17,
+ AccountNotFound = 18,
+ InvalidSteamID = 19,
+ ServiceUnavailable = 20,
+ NotLoggedOn = 21,
+ Pending = 22,
+ EncryptionFailure = 23,
+ InsufficientPrivilege = 24,
+ LimitExceeded = 25,
+ Revoked = 26,
+ Expired = 27,
+ AlreadyRedeemed = 28,
+ DuplicateRequest = 29,
+ AlreadyOwned = 30,
+ IPNotFound = 31,
+ PersistFailed = 32,
+ LockingFailed = 33,
+ LogonSessionReplaced = 34,
+ ConnectFailed = 35,
+ HandshakeFailed = 36,
+ IOFailure = 37,
+ RemoteDisconnect = 38,
+ ShoppingCartNotFound = 39,
+ Blocked = 40,
+ Ignored = 41,
+ NoMatch = 42,
+ AccountDisabled = 43,
+ ServiceReadOnly = 44,
+ AccountNotFeatured = 45,
+ AdministratorOK = 46,
+ ContentVersion = 47,
+ TryAnotherCM = 48,
+ PasswordRequiredToKickSession = 49,
+ AlreadyLoggedInElsewhere = 50,
+ Suspended = 51,
+ Cancelled = 52,
+ DataCorruption = 53,
+ DiskFull = 54,
+ RemoteCallFailed = 55,
+ PasswordNotSet = 56,
+ PasswordUnset = 56,
+ ExternalAccountUnlinked = 57,
+ PSNTicketInvalid = 58,
+ ExternalAccountAlreadyLinked = 59,
+ RemoteFileConflict = 60,
+ IllegalPassword = 61,
+ SameAsPreviousValue = 62,
+ AccountLogonDenied = 63,
+ CannotUseOldPassword = 64,
+ InvalidLoginAuthCode = 65,
+ AccountLogonDeniedNoMailSent = 66,
+ AccountLogonDeniedNoMail = 66,
+ HardwareNotCapableOfIPT = 67,
+ IPTInitError = 68,
+ ParentalControlRestricted = 69,
+ FacebookQueryError = 70,
+ ExpiredLoginAuthCode = 71,
+ IPLoginRestrictionFailed = 72,
+ AccountLocked = 73,
+ AccountLockedDown = 73,
+ AccountLogonDeniedVerifiedEmailRequired = 74,
+ NoMatchingURL = 75,
+ BadResponse = 76,
+ RequirePasswordReEntry = 77,
+ ValueOutOfRange = 78,
+ UnexpectedError = 79,
+ Disabled = 80,
+ InvalidCEGSubmission = 81,
+ RestrictedDevice = 82,
+ RegionLocked = 83,
+ RateLimitExceeded = 84,
+ AccountLogonDeniedNeedTwoFactorCode = 85,
+ AccountLoginDeniedNeedTwoFactor = 85,
+ ItemOrEntryHasBeenDeleted = 86,
+ ItemDeleted = 86,
+ AccountLoginDeniedThrottle = 87,
+ TwoFactorCodeMismatch = 88,
+ TwoFactorActivationCodeMismatch = 89,
+ AccountAssociatedToMultiplePlayers = 90,
+ AccountAssociatedToMultiplePartners = 90,
+ NotModified = 91,
+ NoMobileDeviceAvailable = 92,
+ NoMobileDevice = 92,
+ TimeIsOutOfSync = 93,
+ TimeNotSynced = 93,
+ SMSCodeFailed = 94,
+ TooManyAccountsAccessThisResource = 95,
+ AccountLimitExceeded = 95,
+ AccountActivityLimitExceeded = 96,
+ PhoneActivityLimitExceeded = 97,
+ RefundToWallet = 98,
+ EmailSendFailure = 99,
+ NotSettled = 100,
+ NeedCaptcha = 101,
+ GSLTDenied = 102,
+ GSOwnerDenied = 103,
+ InvalidItemType = 104,
+ IPBanned = 105,
+ GSLTExpired = 106,
+ InsufficientFunds = 107,
+ TooManyPending = 108,
+ NoSiteLicensesFound = 109,
+ WGNetworkSendExceeded = 110,
+ AccountNotFriends = 111,
+ LimitedUserAccount = 112,
+ CantRemoveItem = 113,
+ AccountHasBeenDeleted = 114,
+ AccountDeleted = 114,
+ AccountHasAnExistingUserCancelledLicense = 115,
+ ExistingUserCancelledLicense = 115,
+ DeniedDueToCommunityCooldown = 116,
+ CommunityCooldown = 116,
+ NoLauncherSpecified = 117,
+ MustAgreeToSSA = 118,
+ ClientNoLongerSupported = 119,
+ LauncherMigrated = 119,
+ CurrentSteamRealmDoesNotMatch = 120,
+ SteamRealmMismatch = 120,
+ InvalidSignature = 121,
+ ParseFailure = 122,
+ NoVerifiedPhone = 123,
+ InsufficientBattery = 124,
+ ChargerRequired = 125,
+ CachedCredentialInvalid = 126,
+ PhoneNumberIsVOIP = 127
+};
+
namespace proto
{
#define PROTOBUF_PTR(T,D) \
@@ -1978,8 +2142,4 @@ namespace proto
PROTOBUF_PTR(MsgMulti, cmsg_multi__descriptor);
PROTOBUF_PTR(MsgProtoBufHeader, cmsg_proto_buf_header__descriptor);
- PROTOBUF_PTR(MsgClientLogonResponse, cmsg_client_logon_response__descriptor);
- PROTOBUF_PTR(AuthenticationGetPasswordRSAPublicKeyResponse, cauthentication__get_password_rsapublic_key__response__descriptor);
- PROTOBUF_PTR(AuthenticationBeginAuthSessionViaCredentialsResponse, cauthentication__begin_auth_session_via_credentials__response__descriptor);
- PROTOBUF_PTR(AuthenticationPollAuthSessionStatusResponse, cauthentication__poll_auth_session_status__response__descriptor);
};
diff --git a/protocols/Steam/src/protobuf-c/descriptor.proto b/protocols/Steam/src/protobuf-c/descriptor.proto
new file mode 100644
index 0000000000..f8eb216cdc
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/descriptor.proto
@@ -0,0 +1,921 @@
+// Protocol Buffers - Google's data interchange format
+// Copyright 2008 Google Inc. All rights reserved.
+// https://developers.google.com/protocol-buffers/
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+// Author: kenton@google.com (Kenton Varda)
+// Based on original Protocol Buffers design by
+// Sanjay Ghemawat, Jeff Dean, and others.
+//
+// The messages in this file describe the definitions found in .proto files.
+// A valid .proto file can be translated directly to a FileDescriptorProto
+// without any other information (e.g. without reading its imports).
+
+
+syntax = "proto2";
+
+package google.protobuf;
+
+option go_package = "google.golang.org/protobuf/types/descriptorpb";
+option java_package = "com.google.protobuf";
+option java_outer_classname = "DescriptorProtos";
+option csharp_namespace = "Google.Protobuf.Reflection";
+option objc_class_prefix = "GPB";
+option cc_enable_arenas = true;
+
+// descriptor.proto must be optimized for speed because reflection-based
+// algorithms don't work during bootstrapping.
+option optimize_for = SPEED;
+
+// The protocol compiler can output a FileDescriptorSet containing the .proto
+// files it parses.
+message FileDescriptorSet {
+ repeated FileDescriptorProto file = 1;
+}
+
+// Describes a complete .proto file.
+message FileDescriptorProto {
+ optional string name = 1; // file name, relative to root of source tree
+ optional string package = 2; // e.g. "foo", "foo.bar", etc.
+
+ // Names of files imported by this file.
+ repeated string dependency = 3;
+ // Indexes of the public imported files in the dependency list above.
+ repeated int32 public_dependency = 10;
+ // Indexes of the weak imported files in the dependency list.
+ // For Google-internal migration only. Do not use.
+ repeated int32 weak_dependency = 11;
+
+ // All top-level definitions in this file.
+ repeated DescriptorProto message_type = 4;
+ repeated EnumDescriptorProto enum_type = 5;
+ repeated ServiceDescriptorProto service = 6;
+ repeated FieldDescriptorProto extension = 7;
+
+ optional FileOptions options = 8;
+
+ // This field contains optional information about the original source code.
+ // You may safely remove this entire field without harming runtime
+ // functionality of the descriptors -- the information is needed only by
+ // development tools.
+ optional SourceCodeInfo source_code_info = 9;
+
+ // The syntax of the proto file.
+ // The supported values are "proto2" and "proto3".
+ optional string syntax = 12;
+}
+
+// Describes a message type.
+message DescriptorProto {
+ optional string name = 1;
+
+ repeated FieldDescriptorProto field = 2;
+ repeated FieldDescriptorProto extension = 6;
+
+ repeated DescriptorProto nested_type = 3;
+ repeated EnumDescriptorProto enum_type = 4;
+
+ message ExtensionRange {
+ optional int32 start = 1; // Inclusive.
+ optional int32 end = 2; // Exclusive.
+
+ optional ExtensionRangeOptions options = 3;
+ }
+ repeated ExtensionRange extension_range = 5;
+
+ repeated OneofDescriptorProto oneof_decl = 8;
+
+ optional MessageOptions options = 7;
+
+ // Range of reserved tag numbers. Reserved tag numbers may not be used by
+ // fields or extension ranges in the same message. Reserved ranges may
+ // not overlap.
+ message ReservedRange {
+ optional int32 start = 1; // Inclusive.
+ optional int32 end = 2; // Exclusive.
+ }
+ repeated ReservedRange reserved_range = 9;
+ // Reserved field names, which may not be used by fields in the same message.
+ // A given name may only be reserved once.
+ repeated string reserved_name = 10;
+}
+
+message ExtensionRangeOptions {
+ // The parser stores options it doesn't recognize here. See above.
+ repeated UninterpretedOption uninterpreted_option = 999;
+
+
+ // Clients can define custom options in extensions of this message. See above.
+ extensions 1000 to max;
+}
+
+// Describes a field within a message.
+message FieldDescriptorProto {
+ enum Type {
+ // 0 is reserved for errors.
+ // Order is weird for historical reasons.
+ TYPE_DOUBLE = 1;
+ TYPE_FLOAT = 2;
+ // Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT64 if
+ // negative values are likely.
+ TYPE_INT64 = 3;
+ TYPE_UINT64 = 4;
+ // Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT32 if
+ // negative values are likely.
+ TYPE_INT32 = 5;
+ TYPE_FIXED64 = 6;
+ TYPE_FIXED32 = 7;
+ TYPE_BOOL = 8;
+ TYPE_STRING = 9;
+ // Tag-delimited aggregate.
+ // Group type is deprecated and not supported in proto3. However, Proto3
+ // implementations should still be able to parse the group wire format and
+ // treat group fields as unknown fields.
+ TYPE_GROUP = 10;
+ TYPE_MESSAGE = 11; // Length-delimited aggregate.
+
+ // New in version 2.
+ TYPE_BYTES = 12;
+ TYPE_UINT32 = 13;
+ TYPE_ENUM = 14;
+ TYPE_SFIXED32 = 15;
+ TYPE_SFIXED64 = 16;
+ TYPE_SINT32 = 17; // Uses ZigZag encoding.
+ TYPE_SINT64 = 18; // Uses ZigZag encoding.
+ }
+
+ enum Label {
+ // 0 is reserved for errors
+ LABEL_OPTIONAL = 1;
+ LABEL_REQUIRED = 2;
+ LABEL_REPEATED = 3;
+ }
+
+ optional string name = 1;
+ optional int32 number = 3;
+ optional Label label = 4;
+
+ // If type_name is set, this need not be set. If both this and type_name
+ // are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
+ optional Type type = 5;
+
+ // For message and enum types, this is the name of the type. If the name
+ // starts with a '.', it is fully-qualified. Otherwise, C++-like scoping
+ // rules are used to find the type (i.e. first the nested types within this
+ // message are searched, then within the parent, on up to the root
+ // namespace).
+ optional string type_name = 6;
+
+ // For extensions, this is the name of the type being extended. It is
+ // resolved in the same manner as type_name.
+ optional string extendee = 2;
+
+ // For numeric types, contains the original text representation of the value.
+ // For booleans, "true" or "false".
+ // For strings, contains the default text contents (not escaped in any way).
+ // For bytes, contains the C escaped value. All bytes >= 128 are escaped.
+ optional string default_value = 7;
+
+ // If set, gives the index of a oneof in the containing type's oneof_decl
+ // list. This field is a member of that oneof.
+ optional int32 oneof_index = 9;
+
+ // JSON name of this field. The value is set by protocol compiler. If the
+ // user has set a "json_name" option on this field, that option's value
+ // will be used. Otherwise, it's deduced from the field's name by converting
+ // it to camelCase.
+ optional string json_name = 10;
+
+ optional FieldOptions options = 8;
+
+ // If true, this is a proto3 "optional". When a proto3 field is optional, it
+ // tracks presence regardless of field type.
+ //
+ // When proto3_optional is true, this field must be belong to a oneof to
+ // signal to old proto3 clients that presence is tracked for this field. This
+ // oneof is known as a "synthetic" oneof, and this field must be its sole
+ // member (each proto3 optional field gets its own synthetic oneof). Synthetic
+ // oneofs exist in the descriptor only, and do not generate any API. Synthetic
+ // oneofs must be ordered after all "real" oneofs.
+ //
+ // For message fields, proto3_optional doesn't create any semantic change,
+ // since non-repeated message fields always track presence. However it still
+ // indicates the semantic detail of whether the user wrote "optional" or not.
+ // This can be useful for round-tripping the .proto file. For consistency we
+ // give message fields a synthetic oneof also, even though it is not required
+ // to track presence. This is especially important because the parser can't
+ // tell if a field is a message or an enum, so it must always create a
+ // synthetic oneof.
+ //
+ // Proto2 optional fields do not set this flag, because they already indicate
+ // optional with `LABEL_OPTIONAL`.
+ optional bool proto3_optional = 17;
+}
+
+// Describes a oneof.
+message OneofDescriptorProto {
+ optional string name = 1;
+ optional OneofOptions options = 2;
+}
+
+// Describes an enum type.
+message EnumDescriptorProto {
+ optional string name = 1;
+
+ repeated EnumValueDescriptorProto value = 2;
+
+ optional EnumOptions options = 3;
+
+ // Range of reserved numeric values. Reserved values may not be used by
+ // entries in the same enum. Reserved ranges may not overlap.
+ //
+ // Note that this is distinct from DescriptorProto.ReservedRange in that it
+ // is inclusive such that it can appropriately represent the entire int32
+ // domain.
+ message EnumReservedRange {
+ optional int32 start = 1; // Inclusive.
+ optional int32 end = 2; // Inclusive.
+ }
+
+ // Range of reserved numeric values. Reserved numeric values may not be used
+ // by enum values in the same enum declaration. Reserved ranges may not
+ // overlap.
+ repeated EnumReservedRange reserved_range = 4;
+
+ // Reserved enum value names, which may not be reused. A given name may only
+ // be reserved once.
+ repeated string reserved_name = 5;
+}
+
+// Describes a value within an enum.
+message EnumValueDescriptorProto {
+ optional string name = 1;
+ optional int32 number = 2;
+
+ optional EnumValueOptions options = 3;
+}
+
+// Describes a service.
+message ServiceDescriptorProto {
+ optional string name = 1;
+ repeated MethodDescriptorProto method = 2;
+
+ optional ServiceOptions options = 3;
+}
+
+// Describes a method of a service.
+message MethodDescriptorProto {
+ optional string name = 1;
+
+ // Input and output type names. These are resolved in the same way as
+ // FieldDescriptorProto.type_name, but must refer to a message type.
+ optional string input_type = 2;
+ optional string output_type = 3;
+
+ optional MethodOptions options = 4;
+
+ // Identifies if client streams multiple client messages
+ optional bool client_streaming = 5 [default = false];
+ // Identifies if server streams multiple server messages
+ optional bool server_streaming = 6 [default = false];
+}
+
+
+// ===================================================================
+// Options
+
+// Each of the definitions above may have "options" attached. These are
+// just annotations which may cause code to be generated slightly differently
+// or may contain hints for code that manipulates protocol messages.
+//
+// Clients may define custom options as extensions of the *Options messages.
+// These extensions may not yet be known at parsing time, so the parser cannot
+// store the values in them. Instead it stores them in a field in the *Options
+// message called uninterpreted_option. This field must have the same name
+// across all *Options messages. We then use this field to populate the
+// extensions when we build a descriptor, at which point all protos have been
+// parsed and so all extensions are known.
+//
+// Extension numbers for custom options may be chosen as follows:
+// * For options which will only be used within a single application or
+// organization, or for experimental options, use field numbers 50000
+// through 99999. It is up to you to ensure that you do not use the
+// same number for multiple options.
+// * For options which will be published and used publicly by multiple
+// independent entities, e-mail protobuf-global-extension-registry@google.com
+// to reserve extension numbers. Simply provide your project name (e.g.
+// Objective-C plugin) and your project website (if available) -- there's no
+// need to explain how you intend to use them. Usually you only need one
+// extension number. You can declare multiple options with only one extension
+// number by putting them in a sub-message. See the Custom Options section of
+// the docs for examples:
+// https://developers.google.com/protocol-buffers/docs/proto#options
+// If this turns out to be popular, a web service will be set up
+// to automatically assign option numbers.
+
+message FileOptions {
+
+ // Sets the Java package where classes generated from this .proto will be
+ // placed. By default, the proto package is used, but this is often
+ // inappropriate because proto packages do not normally start with backwards
+ // domain names.
+ optional string java_package = 1;
+
+
+ // Controls the name of the wrapper Java class generated for the .proto file.
+ // That class will always contain the .proto file's getDescriptor() method as
+ // well as any top-level extensions defined in the .proto file.
+ // If java_multiple_files is disabled, then all the other classes from the
+ // .proto file will be nested inside the single wrapper outer class.
+ optional string java_outer_classname = 8;
+
+ // If enabled, then the Java code generator will generate a separate .java
+ // file for each top-level message, enum, and service defined in the .proto
+ // file. Thus, these types will *not* be nested inside the wrapper class
+ // named by java_outer_classname. However, the wrapper class will still be
+ // generated to contain the file's getDescriptor() method as well as any
+ // top-level extensions defined in the file.
+ optional bool java_multiple_files = 10 [default = false];
+
+ // This option does nothing.
+ optional bool java_generate_equals_and_hash = 20 [deprecated=true];
+
+ // If set true, then the Java2 code generator will generate code that
+ // throws an exception whenever an attempt is made to assign a non-UTF-8
+ // byte sequence to a string field.
+ // Message reflection will do the same.
+ // However, an extension field still accepts non-UTF-8 byte sequences.
+ // This option has no effect on when used with the lite runtime.
+ optional bool java_string_check_utf8 = 27 [default = false];
+
+
+ // Generated classes can be optimized for speed or code size.
+ enum OptimizeMode {
+ SPEED = 1; // Generate complete code for parsing, serialization,
+ // etc.
+ CODE_SIZE = 2; // Use ReflectionOps to implement these methods.
+ LITE_RUNTIME = 3; // Generate code using MessageLite and the lite runtime.
+ }
+ optional OptimizeMode optimize_for = 9 [default = SPEED];
+
+ // Sets the Go package where structs generated from this .proto will be
+ // placed. If omitted, the Go package will be derived from the following:
+ // - The basename of the package import path, if provided.
+ // - Otherwise, the package statement in the .proto file, if present.
+ // - Otherwise, the basename of the .proto file, without extension.
+ optional string go_package = 11;
+
+
+
+
+ // Should generic services be generated in each language? "Generic" services
+ // are not specific to any particular RPC system. They are generated by the
+ // main code generators in each language (without additional plugins).
+ // Generic services were the only kind of service generation supported by
+ // early versions of google.protobuf.
+ //
+ // Generic services are now considered deprecated in favor of using plugins
+ // that generate code specific to your particular RPC system. Therefore,
+ // these default to false. Old code which depends on generic services should
+ // explicitly set them to true.
+ optional bool cc_generic_services = 16 [default = false];
+ optional bool java_generic_services = 17 [default = false];
+ optional bool py_generic_services = 18 [default = false];
+ optional bool php_generic_services = 42 [default = false];
+
+ // Is this file deprecated?
+ // Depending on the target platform, this can emit Deprecated annotations
+ // for everything in the file, or it will be completely ignored; in the very
+ // least, this is a formalization for deprecating files.
+ optional bool deprecated = 23 [default = false];
+
+ // Enables the use of arenas for the proto messages in this file. This applies
+ // only to generated classes for C++.
+ optional bool cc_enable_arenas = 31 [default = true];
+
+
+ // Sets the objective c class prefix which is prepended to all objective c
+ // generated classes from this .proto. There is no default.
+ optional string objc_class_prefix = 36;
+
+ // Namespace for generated classes; defaults to the package.
+ optional string csharp_namespace = 37;
+
+ // By default Swift generators will take the proto package and CamelCase it
+ // replacing '.' with underscore and use that to prefix the types/symbols
+ // defined. When this options is provided, they will use this value instead
+ // to prefix the types/symbols defined.
+ optional string swift_prefix = 39;
+
+ // Sets the php class prefix which is prepended to all php generated classes
+ // from this .proto. Default is empty.
+ optional string php_class_prefix = 40;
+
+ // Use this option to change the namespace of php generated classes. Default
+ // is empty. When this option is empty, the package name will be used for
+ // determining the namespace.
+ optional string php_namespace = 41;
+
+ // Use this option to change the namespace of php generated metadata classes.
+ // Default is empty. When this option is empty, the proto file name will be
+ // used for determining the namespace.
+ optional string php_metadata_namespace = 44;
+
+ // Use this option to change the package of ruby generated classes. Default
+ // is empty. When this option is not set, the package name will be used for
+ // determining the ruby package.
+ optional string ruby_package = 45;
+
+
+ // The parser stores options it doesn't recognize here.
+ // See the documentation for the "Options" section above.
+ repeated UninterpretedOption uninterpreted_option = 999;
+
+ // Clients can define custom options in extensions of this message.
+ // See the documentation for the "Options" section above.
+ extensions 1000 to max;
+
+ reserved 38;
+}
+
+message MessageOptions {
+ // Set true to use the old proto1 MessageSet wire format for extensions.
+ // This is provided for backwards-compatibility with the MessageSet wire
+ // format. You should not use this for any other reason: It's less
+ // efficient, has fewer features, and is more complicated.
+ //
+ // The message must be defined exactly as follows:
+ // message Foo {
+ // option message_set_wire_format = true;
+ // extensions 4 to max;
+ // }
+ // Note that the message cannot have any defined fields; MessageSets only
+ // have extensions.
+ //
+ // All extensions of your type must be singular messages; e.g. they cannot
+ // be int32s, enums, or repeated messages.
+ //
+ // Because this is an option, the above two restrictions are not enforced by
+ // the protocol compiler.
+ optional bool message_set_wire_format = 1 [default = false];
+
+ // Disables the generation of the standard "descriptor()" accessor, which can
+ // conflict with a field of the same name. This is meant to make migration
+ // from proto1 easier; new code should avoid fields named "descriptor".
+ optional bool no_standard_descriptor_accessor = 2 [default = false];
+
+ // Is this message deprecated?
+ // Depending on the target platform, this can emit Deprecated annotations
+ // for the message, or it will be completely ignored; in the very least,
+ // this is a formalization for deprecating messages.
+ optional bool deprecated = 3 [default = false];
+
+ reserved 4, 5, 6;
+
+ // Whether the message is an automatically generated map entry type for the
+ // maps field.
+ //
+ // For maps fields:
+ // map<KeyType, ValueType> map_field = 1;
+ // The parsed descriptor looks like:
+ // message MapFieldEntry {
+ // option map_entry = true;
+ // optional KeyType key = 1;
+ // optional ValueType value = 2;
+ // }
+ // repeated MapFieldEntry map_field = 1;
+ //
+ // Implementations may choose not to generate the map_entry=true message, but
+ // use a native map in the target language to hold the keys and values.
+ // The reflection APIs in such implementations still need to work as
+ // if the field is a repeated message field.
+ //
+ // NOTE: Do not set the option in .proto files. Always use the maps syntax
+ // instead. The option should only be implicitly set by the proto compiler
+ // parser.
+ optional bool map_entry = 7;
+
+ reserved 8; // javalite_serializable
+ reserved 9; // javanano_as_lite
+
+
+ // The parser stores options it doesn't recognize here. See above.
+ repeated UninterpretedOption uninterpreted_option = 999;
+
+ // Clients can define custom options in extensions of this message. See above.
+ extensions 1000 to max;
+}
+
+message FieldOptions {
+ // The ctype option instructs the C++ code generator to use a different
+ // representation of the field than it normally would. See the specific
+ // options below. This option is not yet implemented in the open source
+ // release -- sorry, we'll try to include it in a future version!
+ optional CType ctype = 1 [default = STRING];
+ enum CType {
+ // Default mode.
+ STRING = 0;
+
+ CORD = 1;
+
+ STRING_PIECE = 2;
+ }
+ // The packed option can be enabled for repeated primitive fields to enable
+ // a more efficient representation on the wire. Rather than repeatedly
+ // writing the tag and type for each element, the entire array is encoded as
+ // a single length-delimited blob. In proto3, only explicit setting it to
+ // false will avoid using packed encoding.
+ optional bool packed = 2;
+
+ // The jstype option determines the JavaScript type used for values of the
+ // field. The option is permitted only for 64 bit integral and fixed types
+ // (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING
+ // is represented as JavaScript string, which avoids loss of precision that
+ // can happen when a large value is converted to a floating point JavaScript.
+ // Specifying JS_NUMBER for the jstype causes the generated JavaScript code to
+ // use the JavaScript "number" type. The behavior of the default option
+ // JS_NORMAL is implementation dependent.
+ //
+ // This option is an enum to permit additional types to be added, e.g.
+ // goog.math.Integer.
+ optional JSType jstype = 6 [default = JS_NORMAL];
+ enum JSType {
+ // Use the default type.
+ JS_NORMAL = 0;
+
+ // Use JavaScript strings.
+ JS_STRING = 1;
+
+ // Use JavaScript numbers.
+ JS_NUMBER = 2;
+ }
+
+ // Should this field be parsed lazily? Lazy applies only to message-type
+ // fields. It means that when the outer message is initially parsed, the
+ // inner message's contents will not be parsed but instead stored in encoded
+ // form. The inner message will actually be parsed when it is first accessed.
+ //
+ // This is only a hint. Implementations are free to choose whether to use
+ // eager or lazy parsing regardless of the value of this option. However,
+ // setting this option true suggests that the protocol author believes that
+ // using lazy parsing on this field is worth the additional bookkeeping
+ // overhead typically needed to implement it.
+ //
+ // This option does not affect the public interface of any generated code;
+ // all method signatures remain the same. Furthermore, thread-safety of the
+ // interface is not affected by this option; const methods remain safe to
+ // call from multiple threads concurrently, while non-const methods continue
+ // to require exclusive access.
+ //
+ //
+ // Note that implementations may choose not to check required fields within
+ // a lazy sub-message. That is, calling IsInitialized() on the outer message
+ // may return true even if the inner message has missing required fields.
+ // This is necessary because otherwise the inner message would have to be
+ // parsed in order to perform the check, defeating the purpose of lazy
+ // parsing. An implementation which chooses not to check required fields
+ // must be consistent about it. That is, for any particular sub-message, the
+ // implementation must either *always* check its required fields, or *never*
+ // check its required fields, regardless of whether or not the message has
+ // been parsed.
+ //
+ // As of 2021, lazy does no correctness checks on the byte stream during
+ // parsing. This may lead to crashes if and when an invalid byte stream is
+ // finally parsed upon access.
+ //
+ // TODO(b/211906113): Enable validation on lazy fields.
+ optional bool lazy = 5 [default = false];
+
+ // unverified_lazy does no correctness checks on the byte stream. This should
+ // only be used where lazy with verification is prohibitive for performance
+ // reasons.
+ optional bool unverified_lazy = 15 [default = false];
+
+ // Is this field deprecated?
+ // Depending on the target platform, this can emit Deprecated annotations
+ // for accessors, or it will be completely ignored; in the very least, this
+ // is a formalization for deprecating fields.
+ optional bool deprecated = 3 [default = false];
+
+ // For Google-internal migration only. Do not use.
+ optional bool weak = 10 [default = false];
+
+
+ // The parser stores options it doesn't recognize here. See above.
+ repeated UninterpretedOption uninterpreted_option = 999;
+
+ // Clients can define custom options in extensions of this message. See above.
+ extensions 1000 to max;
+
+ reserved 4; // removed jtype
+}
+
+message OneofOptions {
+ // The parser stores options it doesn't recognize here. See above.
+ repeated UninterpretedOption uninterpreted_option = 999;
+
+ // Clients can define custom options in extensions of this message. See above.
+ extensions 1000 to max;
+}
+
+message EnumOptions {
+
+ // Set this option to true to allow mapping different tag names to the same
+ // value.
+ optional bool allow_alias = 2;
+
+ // Is this enum deprecated?
+ // Depending on the target platform, this can emit Deprecated annotations
+ // for the enum, or it will be completely ignored; in the very least, this
+ // is a formalization for deprecating enums.
+ optional bool deprecated = 3 [default = false];
+
+ reserved 5; // javanano_as_lite
+
+ // The parser stores options it doesn't recognize here. See above.
+ repeated UninterpretedOption uninterpreted_option = 999;
+
+ // Clients can define custom options in extensions of this message. See above.
+ extensions 1000 to max;
+}
+
+message EnumValueOptions {
+ // Is this enum value deprecated?
+ // Depending on the target platform, this can emit Deprecated annotations
+ // for the enum value, or it will be completely ignored; in the very least,
+ // this is a formalization for deprecating enum values.
+ optional bool deprecated = 1 [default = false];
+
+ // The parser stores options it doesn't recognize here. See above.
+ repeated UninterpretedOption uninterpreted_option = 999;
+
+ // Clients can define custom options in extensions of this message. See above.
+ extensions 1000 to max;
+}
+
+message ServiceOptions {
+
+ // Note: Field numbers 1 through 32 are reserved for Google's internal RPC
+ // framework. We apologize for hoarding these numbers to ourselves, but
+ // we were already using them long before we decided to release Protocol
+ // Buffers.
+
+ // Is this service deprecated?
+ // Depending on the target platform, this can emit Deprecated annotations
+ // for the service, or it will be completely ignored; in the very least,
+ // this is a formalization for deprecating services.
+ optional bool deprecated = 33 [default = false];
+
+ // The parser stores options it doesn't recognize here. See above.
+ repeated UninterpretedOption uninterpreted_option = 999;
+
+ // Clients can define custom options in extensions of this message. See above.
+ extensions 1000 to max;
+}
+
+message MethodOptions {
+
+ // Note: Field numbers 1 through 32 are reserved for Google's internal RPC
+ // framework. We apologize for hoarding these numbers to ourselves, but
+ // we were already using them long before we decided to release Protocol
+ // Buffers.
+
+ // Is this method deprecated?
+ // Depending on the target platform, this can emit Deprecated annotations
+ // for the method, or it will be completely ignored; in the very least,
+ // this is a formalization for deprecating methods.
+ optional bool deprecated = 33 [default = false];
+
+ // Is this method side-effect-free (or safe in HTTP parlance), or idempotent,
+ // or neither? HTTP based RPC implementation may choose GET verb for safe
+ // methods, and PUT verb for idempotent methods instead of the default POST.
+ enum IdempotencyLevel {
+ IDEMPOTENCY_UNKNOWN = 0;
+ NO_SIDE_EFFECTS = 1; // implies idempotent
+ IDEMPOTENT = 2; // idempotent, but may have side effects
+ }
+ optional IdempotencyLevel idempotency_level = 34
+ [default = IDEMPOTENCY_UNKNOWN];
+
+ // The parser stores options it doesn't recognize here. See above.
+ repeated UninterpretedOption uninterpreted_option = 999;
+
+ // Clients can define custom options in extensions of this message. See above.
+ extensions 1000 to max;
+}
+
+
+// A message representing a option the parser does not recognize. This only
+// appears in options protos created by the compiler::Parser class.
+// DescriptorPool resolves these when building Descriptor objects. Therefore,
+// options protos in descriptor objects (e.g. returned by Descriptor::options(),
+// or produced by Descriptor::CopyTo()) will never have UninterpretedOptions
+// in them.
+message UninterpretedOption {
+ // The name of the uninterpreted option. Each string represents a segment in
+ // a dot-separated name. is_extension is true iff a segment represents an
+ // extension (denoted with parentheses in options specs in .proto files).
+ // E.g.,{ ["foo", false], ["bar.baz", true], ["moo", false] } represents
+ // "foo.(bar.baz).moo".
+ message NamePart {
+ required string name_part = 1;
+ required bool is_extension = 2;
+ }
+ repeated NamePart name = 2;
+
+ // The value of the uninterpreted option, in whatever type the tokenizer
+ // identified it as during parsing. Exactly one of these should be set.
+ optional string identifier_value = 3;
+ optional uint64 positive_int_value = 4;
+ optional int64 negative_int_value = 5;
+ optional double double_value = 6;
+ optional bytes string_value = 7;
+ optional string aggregate_value = 8;
+}
+
+// ===================================================================
+// Optional source code info
+
+// Encapsulates information about the original source file from which a
+// FileDescriptorProto was generated.
+message SourceCodeInfo {
+ // A Location identifies a piece of source code in a .proto file which
+ // corresponds to a particular definition. This information is intended
+ // to be useful to IDEs, code indexers, documentation generators, and similar
+ // tools.
+ //
+ // For example, say we have a file like:
+ // message Foo {
+ // optional string foo = 1;
+ // }
+ // Let's look at just the field definition:
+ // optional string foo = 1;
+ // ^ ^^ ^^ ^ ^^^
+ // a bc de f ghi
+ // We have the following locations:
+ // span path represents
+ // [a,i) [ 4, 0, 2, 0 ] The whole field definition.
+ // [a,b) [ 4, 0, 2, 0, 4 ] The label (optional).
+ // [c,d) [ 4, 0, 2, 0, 5 ] The type (string).
+ // [e,f) [ 4, 0, 2, 0, 1 ] The name (foo).
+ // [g,h) [ 4, 0, 2, 0, 3 ] The number (1).
+ //
+ // Notes:
+ // - A location may refer to a repeated field itself (i.e. not to any
+ // particular index within it). This is used whenever a set of elements are
+ // logically enclosed in a single code segment. For example, an entire
+ // extend block (possibly containing multiple extension definitions) will
+ // have an outer location whose path refers to the "extensions" repeated
+ // field without an index.
+ // - Multiple locations may have the same path. This happens when a single
+ // logical declaration is spread out across multiple places. The most
+ // obvious example is the "extend" block again -- there may be multiple
+ // extend blocks in the same scope, each of which will have the same path.
+ // - A location's span is not always a subset of its parent's span. For
+ // example, the "extendee" of an extension declaration appears at the
+ // beginning of the "extend" block and is shared by all extensions within
+ // the block.
+ // - Just because a location's span is a subset of some other location's span
+ // does not mean that it is a descendant. For example, a "group" defines
+ // both a type and a field in a single declaration. Thus, the locations
+ // corresponding to the type and field and their components will overlap.
+ // - Code which tries to interpret locations should probably be designed to
+ // ignore those that it doesn't understand, as more types of locations could
+ // be recorded in the future.
+ repeated Location location = 1;
+ message Location {
+ // Identifies which part of the FileDescriptorProto was defined at this
+ // location.
+ //
+ // Each element is a field number or an index. They form a path from
+ // the root FileDescriptorProto to the place where the definition occurs.
+ // For example, this path:
+ // [ 4, 3, 2, 7, 1 ]
+ // refers to:
+ // file.message_type(3) // 4, 3
+ // .field(7) // 2, 7
+ // .name() // 1
+ // This is because FileDescriptorProto.message_type has field number 4:
+ // repeated DescriptorProto message_type = 4;
+ // and DescriptorProto.field has field number 2:
+ // repeated FieldDescriptorProto field = 2;
+ // and FieldDescriptorProto.name has field number 1:
+ // optional string name = 1;
+ //
+ // Thus, the above path gives the location of a field name. If we removed
+ // the last element:
+ // [ 4, 3, 2, 7 ]
+ // this path refers to the whole field declaration (from the beginning
+ // of the label to the terminating semicolon).
+ repeated int32 path = 1 [packed = true];
+
+ // Always has exactly three or four elements: start line, start column,
+ // end line (optional, otherwise assumed same as start line), end column.
+ // These are packed into a single field for efficiency. Note that line
+ // and column numbers are zero-based -- typically you will want to add
+ // 1 to each before displaying to a user.
+ repeated int32 span = 2 [packed = true];
+
+ // If this SourceCodeInfo represents a complete declaration, these are any
+ // comments appearing before and after the declaration which appear to be
+ // attached to the declaration.
+ //
+ // A series of line comments appearing on consecutive lines, with no other
+ // tokens appearing on those lines, will be treated as a single comment.
+ //
+ // leading_detached_comments will keep paragraphs of comments that appear
+ // before (but not connected to) the current element. Each paragraph,
+ // separated by empty lines, will be one comment element in the repeated
+ // field.
+ //
+ // Only the comment content is provided; comment markers (e.g. //) are
+ // stripped out. For block comments, leading whitespace and an asterisk
+ // will be stripped from the beginning of each line other than the first.
+ // Newlines are included in the output.
+ //
+ // Examples:
+ //
+ // optional int32 foo = 1; // Comment attached to foo.
+ // // Comment attached to bar.
+ // optional int32 bar = 2;
+ //
+ // optional string baz = 3;
+ // // Comment attached to baz.
+ // // Another line attached to baz.
+ //
+ // // Comment attached to moo.
+ // //
+ // // Another line attached to moo.
+ // optional double moo = 4;
+ //
+ // // Detached comment for corge. This is not leading or trailing comments
+ // // to moo or corge because there are blank lines separating it from
+ // // both.
+ //
+ // // Detached comment for corge paragraph 2.
+ //
+ // optional string corge = 5;
+ // /* Block comment attached
+ // * to corge. Leading asterisks
+ // * will be removed. */
+ // /* Block comment attached to
+ // * grault. */
+ // optional int32 grault = 6;
+ //
+ // // ignored detached comments.
+ optional string leading_comments = 3;
+ optional string trailing_comments = 4;
+ repeated string leading_detached_comments = 6;
+ }
+}
+
+// Describes the relationship between generated code and its original source
+// file. A GeneratedCodeInfo message is associated with only one generated
+// source file, but may contain references to different source .proto files.
+message GeneratedCodeInfo {
+ // An Annotation connects some span of text in generated code to an element
+ // of its generating .proto file.
+ repeated Annotation annotation = 1;
+ message Annotation {
+ // Identifies the element in the original source .proto file. This field
+ // is formatted the same as SourceCodeInfo.Location.path.
+ repeated int32 path = 1 [packed = true];
+
+ // Identifies the filesystem path to the original source .proto.
+ optional string source_file = 2;
+
+ // Identifies the starting offset in bytes in the generated code
+ // that relates to the identified object.
+ optional int32 begin = 3;
+
+ // Identifies the ending offset in bytes in the generated code that
+ // relates to the identified offset. The end offset should be one past
+ // the last relevant byte (so the length of the text = end - begin).
+ optional int32 end = 4;
+ }
+}
diff --git a/protocols/Steam/src/protobuf-c/encrypted_app_ticket.pb-c.cpp b/protocols/Steam/src/protobuf-c/encrypted_app_ticket.pb-c.cpp
new file mode 100644
index 0000000000..57ad3408a1
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/encrypted_app_ticket.pb-c.cpp
@@ -0,0 +1,138 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: encrypted_app_ticket.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "encrypted_app_ticket.pb-c.h"
+size_t encrypted_app_ticket__get_packed_size
+ (const EncryptedAppTicket *message)
+{
+ assert(message->descriptor == &encrypted_app_ticket__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t encrypted_app_ticket__pack
+ (const EncryptedAppTicket *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &encrypted_app_ticket__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t encrypted_app_ticket__pack_to_buffer
+ (const EncryptedAppTicket *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &encrypted_app_ticket__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+EncryptedAppTicket *
+ encrypted_app_ticket__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (EncryptedAppTicket *)
+ protobuf_c_message_unpack (&encrypted_app_ticket__descriptor,
+ allocator, len, data);
+}
+void encrypted_app_ticket__free_unpacked
+ (EncryptedAppTicket *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &encrypted_app_ticket__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+static const ProtobufCFieldDescriptor encrypted_app_ticket__field_descriptors[5] =
+{
+ {
+ "ticket_version_no",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(EncryptedAppTicket, has_ticket_version_no),
+ offsetof(EncryptedAppTicket, ticket_version_no),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "crc_encryptedticket",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(EncryptedAppTicket, has_crc_encryptedticket),
+ offsetof(EncryptedAppTicket, crc_encryptedticket),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "cb_encrypteduserdata",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(EncryptedAppTicket, has_cb_encrypteduserdata),
+ offsetof(EncryptedAppTicket, cb_encrypteduserdata),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "cb_encrypted_appownershipticket",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(EncryptedAppTicket, has_cb_encrypted_appownershipticket),
+ offsetof(EncryptedAppTicket, cb_encrypted_appownershipticket),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "encrypted_ticket",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(EncryptedAppTicket, has_encrypted_ticket),
+ offsetof(EncryptedAppTicket, encrypted_ticket),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned encrypted_app_ticket__field_indices_by_name[] = {
+ 3, /* field[3] = cb_encrypted_appownershipticket */
+ 2, /* field[2] = cb_encrypteduserdata */
+ 1, /* field[1] = crc_encryptedticket */
+ 4, /* field[4] = encrypted_ticket */
+ 0, /* field[0] = ticket_version_no */
+};
+static const ProtobufCIntRange encrypted_app_ticket__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor encrypted_app_ticket__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "EncryptedAppTicket",
+ "EncryptedAppTicket",
+ "EncryptedAppTicket",
+ "",
+ sizeof(EncryptedAppTicket),
+ 5,
+ encrypted_app_ticket__field_descriptors,
+ encrypted_app_ticket__field_indices_by_name,
+ 1, encrypted_app_ticket__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/protocols/Steam/src/protobuf-c/encrypted_app_ticket.pb-c.h b/protocols/Steam/src/protobuf-c/encrypted_app_ticket.pb-c.h
new file mode 100644
index 0000000000..5ec118d1f4
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/encrypted_app_ticket.pb-c.h
@@ -0,0 +1,78 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: encrypted_app_ticket.proto */
+
+#ifndef PROTOBUF_C_encrypted_5fapp_5fticket_2eproto__INCLUDED
+#define PROTOBUF_C_encrypted_5fapp_5fticket_2eproto__INCLUDED
+
+#include "protobuf-c.h"
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1000000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1004001 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+struct EncryptedAppTicket;
+
+
+/* --- enums --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor encrypted_app_ticket__descriptor;
+
+/* --- messages --- */
+
+extern "C" void message_init_generic(const ProtobufCMessageDescriptor * desc, ProtobufCMessage * message);
+
+struct EncryptedAppTicket : public ProtobufCppMessage
+{
+ EncryptedAppTicket() :
+ ProtobufCppMessage(encrypted_app_ticket__descriptor)
+ {}
+
+ protobuf_c_boolean has_ticket_version_no;
+ uint32_t ticket_version_no;
+ protobuf_c_boolean has_crc_encryptedticket;
+ uint32_t crc_encryptedticket;
+ protobuf_c_boolean has_cb_encrypteduserdata;
+ uint32_t cb_encrypteduserdata;
+ protobuf_c_boolean has_cb_encrypted_appownershipticket;
+ uint32_t cb_encrypted_appownershipticket;
+ protobuf_c_boolean has_encrypted_ticket;
+ ProtobufCBinaryData encrypted_ticket;
+};
+
+size_t encrypted_app_ticket__get_packed_size
+ (const EncryptedAppTicket *message);
+size_t encrypted_app_ticket__pack
+ (const EncryptedAppTicket *message,
+ uint8_t *out);
+size_t encrypted_app_ticket__pack_to_buffer
+ (const EncryptedAppTicket *message,
+ ProtobufCBuffer *buffer);
+EncryptedAppTicket *
+ encrypted_app_ticket__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void encrypted_app_ticket__free_unpacked
+ (EncryptedAppTicket *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*EncryptedAppTicket_Closure)
+ (const EncryptedAppTicket *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_encrypted_5fapp_5fticket_2eproto__INCLUDED */
diff --git a/protocols/Steam/src/protobuf-c/encrypted_app_ticket.proto b/protocols/Steam/src/protobuf-c/encrypted_app_ticket.proto
new file mode 100644
index 0000000000..0b88bad8e6
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/encrypted_app_ticket.proto
@@ -0,0 +1,10 @@
+option optimize_for = SPEED;
+option cc_generic_services = false;
+
+message EncryptedAppTicket {
+ optional uint32 ticket_version_no = 1;
+ optional uint32 crc_encryptedticket = 2;
+ optional uint32 cb_encrypteduserdata = 3;
+ optional uint32 cb_encrypted_appownershipticket = 4;
+ optional bytes encrypted_ticket = 5;
+}
diff --git a/protocols/Steam/src/protobuf-c/protobuf-c-text.cpp b/protocols/Steam/src/protobuf-c/protobuf-c-text.cpp
new file mode 100644
index 0000000000..1a4a858218
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/protobuf-c-text.cpp
@@ -0,0 +1,387 @@
+/** \file
+ * Routines to generate text format protobufs.
+ *
+ * This file contains the internal support functions as well as the
+ * exported functions which are used to generate text format protobufs
+ * from C protobuf data types.
+ *
+ * \author Kevin Lyda <kevin@ie.suberic.net>
+ * \date March 2014
+ */
+
+#include "../stdafx.h"
+
+#include <sys/types.h>
+#include <stdarg.h>
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+#include "protobuf-c.h"
+#include "protobuf-c-util.h"
+
+ /** Append a string to the ReturnString.
+ *
+ * Append the string built from \c format and its args to the \c rs
+ * string. Note that \c malloc_err is checked and if it's true,
+ * this function won't do anything.
+ *
+ * \param[in,out] rs The string to append to.
+ * \param[in] guess A guess at the number of chars being added.
+ * \param[in] allocator allocator functions.
+ * \param[in] format Printf-style format string.
+ * \param[in] ... Variable number of args for \c format.
+ */
+
+ /** \defgroup generate Functions to generate text format proto bufs
+ * \ingroup internal
+ * @{
+ */
+
+ /** Escape string.
+ *
+ * Add escape characters to strings for problematic characters.
+ *
+ * \param[in] src The unescaped string to process.
+ * \param[in] len Length of \c src. Note that \c src might have ASCII
+ * \c NULs so strlen() isn't good enough here.
+ * \param[in] allocator allocator functions.
+ * \return The fully escaped string, or \c NULL if there has been an
+ * allocation error.
+ */
+static char *
+esc_str(const char *src, size_t len)
+{
+ size_t escapes = 0, dst_len = 0;
+
+ for (size_t i = 0; i < len; i++) {
+ if (!isprint(src[i])) {
+ escapes++;
+ }
+ }
+
+ char *dst = (char *)malloc((escapes * 2) + ((len - escapes) * 2) + 1);
+ if (!dst) {
+ return NULL;
+ }
+
+ for (size_t i = 0; i < len; i++) {
+ switch (src[i]) {
+ /* Special cases. */
+ case '\'':
+ dst[dst_len++] = '\\';
+ dst[dst_len++] = '\'';
+ break;
+ case '\"':
+ dst[dst_len++] = '\\';
+ dst[dst_len++] = '\"';
+ break;
+ case '\\':
+ dst[dst_len++] = '\\';
+ dst[dst_len++] = '\\';
+ break;
+ case '\n':
+ dst[dst_len++] = '\\';
+ dst[dst_len++] = 'n';
+ break;
+ case '\r':
+ dst[dst_len++] = '\\';
+ dst[dst_len++] = 'r';
+ break;
+ case '\t':
+ dst[dst_len++] = '\\';
+ dst[dst_len++] = 't';
+ break;
+
+ /* Escape with octal if !isprint. */
+ default:
+ dst[dst_len++] = src[i];
+ break;
+ }
+ }
+ dst[dst_len] = '\0';
+
+ return dst;
+}
+
+/** Internal function to back API function.
+ *
+ * Has a few extra params to better enable recursion. This function gets
+ * called for each nested message as the \c ProtobufCMessage struct is
+ * traversed.
+ *
+ * \param[in,out] rs The string being built up for the text format protobuf.
+ * \param[in] level Indent level - increments in 2's.
+ * \param[in] m The \c ProtobufCMessage being serialised.
+ * \param[in] d The descriptor for the \c ProtobufCMessage.
+ * \param[in] allocator allocator functions.
+ */
+static void protobuf_c_text_to_string_internal(
+ CMStringA &str,
+ int level,
+ const ProtobufCMessage *m,
+ const ProtobufCMessageDescriptor *d)
+{
+ size_t j, quantifier_offset;
+ double float_var;
+ const ProtobufCFieldDescriptor *f;
+ ProtobufCEnumDescriptor *enumd;
+ const ProtobufCEnumValue *enumv;
+
+ f = d->fields;
+ for (unsigned i = 0; i < d->n_fields; i++) {
+ /* Decide if something needs to be done for this field. */
+ switch (f[i].label) {
+ case PROTOBUF_C_LABEL_OPTIONAL:
+ if (f[i].type == PROTOBUF_C_TYPE_STRING) {
+ if (!STRUCT_MEMBER(char *, m, f[i].offset)
+ || (STRUCT_MEMBER(char *, m, f[i].offset)
+ == (char *)f[i].default_value)) {
+ continue;
+ }
+ }
+ else if (f[i].type == PROTOBUF_C_TYPE_MESSAGE) {
+ if (!STRUCT_MEMBER(char *, m, f[i].offset)) {
+ continue;
+ }
+ }
+ else {
+ if (!STRUCT_MEMBER(protobuf_c_boolean, m, f[i].quantifier_offset)) {
+ continue;
+ }
+ }
+ break;
+ case PROTOBUF_C_LABEL_REPEATED:
+ if (!STRUCT_MEMBER(size_t, m, f[i].quantifier_offset)) {
+ continue;
+ }
+ break;
+ }
+
+ quantifier_offset = STRUCT_MEMBER(size_t, m, f[i].quantifier_offset);
+ /* Field exists and has data, dump it. */
+ switch (f[i].type) {
+ case PROTOBUF_C_TYPE_INT32:
+ case PROTOBUF_C_TYPE_UINT32:
+ case PROTOBUF_C_TYPE_FIXED32:
+ if (f[i].label == PROTOBUF_C_LABEL_REPEATED) {
+ for (j = 0; j < quantifier_offset; j++) {
+ str.AppendFormat(
+ "%*s%s: %u\n",
+ level, "", f[i].name,
+ STRUCT_MEMBER(uint32_t *, m, f[i].offset)[j]);
+ }
+ }
+ else {
+ str.AppendFormat(
+ "%*s%s: %u\n",
+ level, "", f[i].name,
+ STRUCT_MEMBER(uint32_t, m, f[i].offset));
+ }
+ break;
+ case PROTOBUF_C_TYPE_SINT32:
+ case PROTOBUF_C_TYPE_SFIXED32:
+ if (f[i].label == PROTOBUF_C_LABEL_REPEATED) {
+ for (j = 0; j < quantifier_offset; j++) {
+ str.AppendFormat(
+ "%*s%s: %d\n",
+ level, "", f[i].name,
+ STRUCT_MEMBER(int32_t *, m, f[i].offset)[j]);
+ }
+ }
+ else {
+ str.AppendFormat(
+ "%*s%s: %d\n",
+ level, "", f[i].name,
+ STRUCT_MEMBER(int32_t, m, f[i].offset));
+ }
+ break;
+ case PROTOBUF_C_TYPE_INT64:
+ case PROTOBUF_C_TYPE_UINT64:
+ case PROTOBUF_C_TYPE_FIXED64:
+ if (f[i].label == PROTOBUF_C_LABEL_REPEATED) {
+ for (j = 0; j < quantifier_offset; j++) {
+ str.AppendFormat(
+ "%*s%s: %lld\n",
+ level, "", f[i].name,
+ STRUCT_MEMBER(uint64_t *, m, f[i].offset)[j]);
+ }
+ }
+ else {
+ str.AppendFormat(
+ "%*s%s: %lld\n",
+ level, "", f[i].name,
+ STRUCT_MEMBER(uint64_t, m, f[i].offset));
+ }
+ break;
+ case PROTOBUF_C_TYPE_SINT64:
+ case PROTOBUF_C_TYPE_SFIXED64:
+ if (f[i].label == PROTOBUF_C_LABEL_REPEATED) {
+ for (j = 0; j < quantifier_offset; j++) {
+ str.AppendFormat(
+ "%*s%s: %lld\n",
+ level, "", f[i].name,
+ STRUCT_MEMBER(int64_t *, m, f[i].offset)[j]);
+ }
+ }
+ else {
+ str.AppendFormat(
+ "%*s%s: %lld\n",
+ level, "", f[i].name,
+ STRUCT_MEMBER(int64_t, m, f[i].offset));
+ }
+ break;
+ case PROTOBUF_C_TYPE_FLOAT:
+ if (f[i].label == PROTOBUF_C_LABEL_REPEATED) {
+ for (j = 0; j < quantifier_offset; j++) {
+ float_var = STRUCT_MEMBER(float *, m, f[i].offset)[j];
+ str.AppendFormat(
+ "%*s%s: %g\n",
+ level, "", f[i].name,
+ float_var);
+ }
+ }
+ else {
+ float_var = STRUCT_MEMBER(float, m, f[i].offset);
+ str.AppendFormat(
+ "%*s%s: %g\n",
+ level, "", f[i].name,
+ float_var);
+ }
+ break;
+ case PROTOBUF_C_TYPE_DOUBLE:
+ if (f[i].label == PROTOBUF_C_LABEL_REPEATED) {
+ for (j = 0; j < quantifier_offset; j++) {
+ str.AppendFormat(
+ "%*s%s: %g\n",
+ level, "", f[i].name,
+ STRUCT_MEMBER(double *, m, f[i].offset)[j]);
+ }
+ }
+ else {
+ str.AppendFormat(
+ "%*s%s: %g\n",
+ level, "", f[i].name,
+ STRUCT_MEMBER(double, m, f[i].offset));
+ }
+ break;
+ case PROTOBUF_C_TYPE_BOOL:
+ if (f[i].label == PROTOBUF_C_LABEL_REPEATED) {
+ for (j = 0; j < quantifier_offset; j++) {
+ str.AppendFormat(
+ "%*s%s: %s\n",
+ level, "", f[i].name,
+ STRUCT_MEMBER(protobuf_c_boolean *, m, f[i].offset)[j] ?
+ "true" : "false");
+ }
+ }
+ else {
+ str.AppendFormat(
+ "%*s%s: %s\n",
+ level, "", f[i].name,
+ STRUCT_MEMBER(protobuf_c_boolean, m, f[i].offset) ?
+ "true" : "false");
+ }
+ break;
+ case PROTOBUF_C_TYPE_ENUM:
+ enumd = (ProtobufCEnumDescriptor *)f[i].descriptor;
+ if (f[i].label == PROTOBUF_C_LABEL_REPEATED) {
+ for (j = 0; j < quantifier_offset; j++) {
+ enumv = protobuf_c_enum_descriptor_get_value(
+ enumd, STRUCT_MEMBER(int *, m, f[i].offset)[j]);
+ str.AppendFormat(
+ "%*s%s: %s\n",
+ level, "", f[i].name,
+ enumv ? enumv->name : "unknown");
+ }
+ }
+ else {
+ enumv = protobuf_c_enum_descriptor_get_value(
+ enumd, STRUCT_MEMBER(int, m, f[i].offset));
+ str.AppendFormat(
+ "%*s%s: %s\n",
+ level, "", f[i].name,
+ enumv ? enumv->name : "unknown");
+ }
+ break;
+ case PROTOBUF_C_TYPE_STRING:
+ if (f[i].label == PROTOBUF_C_LABEL_REPEATED) {
+ for (j = 0; j < quantifier_offset; j++) {
+ char *escaped = esc_str(
+ STRUCT_MEMBER(char **, m, f[i].offset)[j],
+ strlen(STRUCT_MEMBER(char **, m, f[i].offset)[j]));
+ str.AppendFormat("%*s%s: \"%s\"\n", level, "", f[i].name, escaped);
+ free(escaped);
+ }
+ }
+ else {
+ char *escaped = esc_str(STRUCT_MEMBER(char *, m, f[i].offset),
+ strlen(STRUCT_MEMBER(char *, m, f[i].offset)));
+ str.AppendFormat("%*s%s: \"%s\"\n", level, "", f[i].name, escaped);
+ free(escaped);
+ }
+ break;
+ case PROTOBUF_C_TYPE_BYTES:
+ if (f[i].label == PROTOBUF_C_LABEL_REPEATED) {
+ for (j = 0; j < quantifier_offset; j++) {
+ auto *member = STRUCT_MEMBER(ProtobufCBinaryData *, m, f[i].offset);
+ if (member->len && member->data) {
+ char *p = (char *)malloc(member->len * 2 + 1);
+ bin2hex(member->data, member->len, p);
+ str.AppendFormat("%*s%s: \"%s\"\n", level, "", f[i].name, p);
+ free(p);
+ }
+ }
+ }
+ else {
+ auto member = STRUCT_MEMBER(ProtobufCBinaryData, m, f[i].offset);
+ if (member.len && member.data) {
+ char *p = (char *)malloc(member.len * 2 + 1);
+ bin2hex(member.data, member.len, p);
+ str.AppendFormat("%*s%s: \"%s\"\n", level, "", f[i].name, p);
+ free(p);
+ }
+ }
+ break;
+
+ case PROTOBUF_C_TYPE_MESSAGE:
+ if (f[i].label == PROTOBUF_C_LABEL_REPEATED) {
+ for (j = 0;
+ j < STRUCT_MEMBER(size_t, m, f[i].quantifier_offset);
+ j++) {
+ str.AppendFormat("%*s%s {\n", level, "", f[i].name);
+ protobuf_c_text_to_string_internal(str, level + 2,
+ STRUCT_MEMBER(ProtobufCMessage **, m, f[i].offset)[j],
+ (ProtobufCMessageDescriptor *)f[i].descriptor);
+ str.AppendFormat("%*s}\n", level, "");
+ }
+ }
+ else {
+ str.AppendFormat("%*s%s {\n", level, "", f[i].name);
+ protobuf_c_text_to_string_internal(str, level + 2,
+ STRUCT_MEMBER(ProtobufCMessage *, m, f[i].offset),
+ (ProtobufCMessageDescriptor *)f[i].descriptor);
+ str.AppendFormat("%*s}\n", level, "");
+ }
+ break;
+
+ default:
+ return;
+ }
+ }
+}
+
+/** @} */ /* End of generate group. */
+
+/* See .h file for API docs. */
+
+CMStringA protobuf_c_text_to_string(const ProtobufCMessage &msg)
+{
+ CMStringA ret;
+
+ ret.AppendFormat("%s {\n", msg.descriptor->c_name);
+ protobuf_c_text_to_string_internal(ret, 1, &msg, msg.descriptor);
+ ret.Append("}\n");
+
+ return ret;
+}
diff --git a/protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.pb-c.cpp b/protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.pb-c.cpp
index 97245861d5..71aab2cb7e 100644
--- a/protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.pb-c.cpp
+++ b/protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.pb-c.cpp
@@ -967,6 +967,86 @@ void cauthentication__migrate_mobile_session__response__free_unpacked
protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
+size_t cauthentication__token__revoke__request__get_packed_size
+ (const CAuthenticationTokenRevokeRequest *message)
+{
+ assert(message->descriptor == &cauthentication__token__revoke__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cauthentication__token__revoke__request__pack
+ (const CAuthenticationTokenRevokeRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cauthentication__token__revoke__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cauthentication__token__revoke__request__pack_to_buffer
+ (const CAuthenticationTokenRevokeRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cauthentication__token__revoke__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CAuthenticationTokenRevokeRequest *
+ cauthentication__token__revoke__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CAuthenticationTokenRevokeRequest *)
+ protobuf_c_message_unpack (&cauthentication__token__revoke__request__descriptor,
+ allocator, len, data);
+}
+void cauthentication__token__revoke__request__free_unpacked
+ (CAuthenticationTokenRevokeRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cauthentication__token__revoke__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cauthentication__token__revoke__response__get_packed_size
+ (const CAuthenticationTokenRevokeResponse *message)
+{
+ assert(message->descriptor == &cauthentication__token__revoke__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cauthentication__token__revoke__response__pack
+ (const CAuthenticationTokenRevokeResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cauthentication__token__revoke__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cauthentication__token__revoke__response__pack_to_buffer
+ (const CAuthenticationTokenRevokeResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cauthentication__token__revoke__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CAuthenticationTokenRevokeResponse *
+ cauthentication__token__revoke__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CAuthenticationTokenRevokeResponse *)
+ protobuf_c_message_unpack (&cauthentication__token__revoke__response__descriptor,
+ allocator, len, data);
+}
+void cauthentication__token__revoke__response__free_unpacked
+ (CAuthenticationTokenRevokeResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cauthentication__token__revoke__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
size_t cauthentication__refresh_token__revoke__request__get_packed_size
(const CAuthenticationRefreshTokenRevokeRequest *message)
{
@@ -1748,7 +1828,7 @@ const ProtobufCMessageDescriptor cauthentication__get_password_rsapublic_key__re
NULL,NULL,NULL,NULL /* reserved[123] */
};
static const EAuthTokenPlatformType cauthentication__device_details__platform_type__default_value = EAUTH_TOKEN_PLATFORM_TYPE__k_EAuthTokenPlatformType_Unknown;
-static const ProtobufCFieldDescriptor cauthentication__device_details__field_descriptors[4] =
+static const ProtobufCFieldDescriptor cauthentication__device_details__field_descriptors[6] =
{
{
"device_friendly_name",
@@ -1798,17 +1878,43 @@ static const ProtobufCFieldDescriptor cauthentication__device_details__field_des
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
+ {
+ "client_count",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CAuthenticationDeviceDetails, has_client_count),
+ offsetof(CAuthenticationDeviceDetails, client_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "machine_id",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CAuthenticationDeviceDetails, has_machine_id),
+ offsetof(CAuthenticationDeviceDetails, machine_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
};
static const unsigned cauthentication__device_details__field_indices_by_name[] = {
+ 4, /* field[4] = client_count */
0, /* field[0] = device_friendly_name */
3, /* field[3] = gaming_device_type */
+ 5, /* field[5] = machine_id */
2, /* field[2] = os_type */
1, /* field[1] = platform_type */
};
static const ProtobufCIntRange cauthentication__device_details__number_ranges[1 + 1] =
{
{ 1, 0 },
- { 0, 4 }
+ { 0, 6 }
};
const ProtobufCMessageDescriptor cauthentication__device_details__descriptor =
{
@@ -1818,7 +1924,7 @@ const ProtobufCMessageDescriptor cauthentication__device_details__descriptor =
"CAuthenticationDeviceDetails",
"",
sizeof(CAuthenticationDeviceDetails),
- 4,
+ 6,
cauthentication__device_details__field_descriptors,
cauthentication__device_details__field_indices_by_name,
1, cauthentication__device_details__number_ranges,
@@ -3013,7 +3119,8 @@ const ProtobufCMessageDescriptor cauthentication__update_auth_session_with_steam
1, cauthentication__update_auth_session_with_steam_guard_code__response__number_ranges,
NULL,NULL,NULL,NULL /* reserved[123] */
};
-static const ProtobufCFieldDescriptor cauthentication__access_token__generate_for_app__request__field_descriptors[2] =
+static const ETokenRenewalType cauthentication__access_token__generate_for_app__request__renewal_type__default_value = ETOKEN_RENEWAL_TYPE__k_ETokenRenewalType_None;
+static const ProtobufCFieldDescriptor cauthentication__access_token__generate_for_app__request__field_descriptors[3] =
{
{
"refresh_token",
@@ -3039,15 +3146,28 @@ static const ProtobufCFieldDescriptor cauthentication__access_token__generate_fo
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
+ {
+ "renewal_type",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CAuthenticationAccessTokenGenerateForAppRequest, has_renewal_type),
+ offsetof(CAuthenticationAccessTokenGenerateForAppRequest, renewal_type),
+ &etoken_renewal_type__descriptor,
+ &cauthentication__access_token__generate_for_app__request__renewal_type__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
};
static const unsigned cauthentication__access_token__generate_for_app__request__field_indices_by_name[] = {
0, /* field[0] = refresh_token */
+ 2, /* field[2] = renewal_type */
1, /* field[1] = steamid */
};
static const ProtobufCIntRange cauthentication__access_token__generate_for_app__request__number_ranges[1 + 1] =
{
{ 1, 0 },
- { 0, 2 }
+ { 0, 3 }
};
const ProtobufCMessageDescriptor cauthentication__access_token__generate_for_app__request__descriptor =
{
@@ -3057,13 +3177,13 @@ const ProtobufCMessageDescriptor cauthentication__access_token__generate_for_app
"CAuthenticationAccessTokenGenerateForAppRequest",
"",
sizeof(CAuthenticationAccessTokenGenerateForAppRequest),
- 2,
+ 3,
cauthentication__access_token__generate_for_app__request__field_descriptors,
cauthentication__access_token__generate_for_app__request__field_indices_by_name,
1, cauthentication__access_token__generate_for_app__request__number_ranges,
NULL,NULL,NULL,NULL /* reserved[123] */
};
-static const ProtobufCFieldDescriptor cauthentication__access_token__generate_for_app__response__field_descriptors[1] =
+static const ProtobufCFieldDescriptor cauthentication__access_token__generate_for_app__response__field_descriptors[2] =
{
{
"access_token",
@@ -3077,14 +3197,27 @@ static const ProtobufCFieldDescriptor cauthentication__access_token__generate_fo
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
+ {
+ "refresh_token",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CAuthenticationAccessTokenGenerateForAppResponse, refresh_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
};
static const unsigned cauthentication__access_token__generate_for_app__response__field_indices_by_name[] = {
0, /* field[0] = access_token */
+ 1, /* field[1] = refresh_token */
};
static const ProtobufCIntRange cauthentication__access_token__generate_for_app__response__number_ranges[1 + 1] =
{
{ 1, 0 },
- { 0, 1 }
+ { 0, 2 }
};
const ProtobufCMessageDescriptor cauthentication__access_token__generate_for_app__response__descriptor =
{
@@ -3094,7 +3227,7 @@ const ProtobufCMessageDescriptor cauthentication__access_token__generate_for_app
"CAuthenticationAccessTokenGenerateForAppResponse",
"",
sizeof(CAuthenticationAccessTokenGenerateForAppResponse),
- 1,
+ 2,
cauthentication__access_token__generate_for_app__response__field_descriptors,
cauthentication__access_token__generate_for_app__response__field_indices_by_name,
1, cauthentication__access_token__generate_for_app__response__number_ranges,
@@ -3604,6 +3737,74 @@ const ProtobufCMessageDescriptor cauthentication__migrate_mobile_session__respon
1, cauthentication__migrate_mobile_session__response__number_ranges,
NULL,NULL,NULL,NULL /* reserved[123] */
};
+static const EAuthTokenRevokeAction cauthentication__token__revoke__request__revoke_action__default_value = EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokePermanent;
+static const ProtobufCFieldDescriptor cauthentication__token__revoke__request__field_descriptors[2] =
+{
+ {
+ "token",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CAuthenticationTokenRevokeRequest, token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "revoke_action",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CAuthenticationTokenRevokeRequest, has_revoke_action),
+ offsetof(CAuthenticationTokenRevokeRequest, revoke_action),
+ &eauth_token_revoke_action__descriptor,
+ &cauthentication__token__revoke__request__revoke_action__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cauthentication__token__revoke__request__field_indices_by_name[] = {
+ 1, /* field[1] = revoke_action */
+ 0, /* field[0] = token */
+};
+static const ProtobufCIntRange cauthentication__token__revoke__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cauthentication__token__revoke__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CAuthentication_Token_Revoke_Request",
+ "CAuthenticationTokenRevokeRequest",
+ "CAuthenticationTokenRevokeRequest",
+ "",
+ sizeof(CAuthenticationTokenRevokeRequest),
+ 2,
+ cauthentication__token__revoke__request__field_descriptors,
+ cauthentication__token__revoke__request__field_indices_by_name,
+ 1, cauthentication__token__revoke__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cauthentication__token__revoke__response__field_descriptors NULL
+#define cauthentication__token__revoke__response__field_indices_by_name NULL
+#define cauthentication__token__revoke__response__number_ranges NULL
+const ProtobufCMessageDescriptor cauthentication__token__revoke__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CAuthentication_Token_Revoke_Response",
+ "CAuthenticationTokenRevokeResponse",
+ "CAuthenticationTokenRevokeResponse",
+ "",
+ sizeof(CAuthenticationTokenRevokeResponse),
+ 0,
+ cauthentication__token__revoke__response__field_descriptors,
+ cauthentication__token__revoke__response__field_indices_by_name,
+ 0, cauthentication__token__revoke__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
static const EAuthTokenRevokeAction cauthentication__refresh_token__revoke__request__revoke_action__default_value = EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokePermanent;
static const ProtobufCFieldDescriptor cauthentication__refresh_token__revoke__request__field_descriptors[4] =
{
@@ -4699,21 +4900,55 @@ const ProtobufCEnumDescriptor eauth_session_security_history__descriptor =
eauth_session_security_history__value_ranges,
NULL,NULL,NULL,NULL /* reserved[1234] */
};
-static const ProtobufCEnumValue eauth_token_revoke_action__enum_values_by_number[5] =
+static const ProtobufCEnumValue etoken_renewal_type__enum_values_by_number[2] =
+{
+ { "k_ETokenRenewalType_None", "ETOKEN_RENEWAL_TYPE__k_ETokenRenewalType_None", 0 },
+ { "k_ETokenRenewalType_Allow", "ETOKEN_RENEWAL_TYPE__k_ETokenRenewalType_Allow", 1 },
+};
+static const ProtobufCIntRange etoken_renewal_type__value_ranges[] = {
+{0, 0},{0, 2}
+};
+static const ProtobufCEnumValueIndex etoken_renewal_type__enum_values_by_name[2] =
+{
+ { "k_ETokenRenewalType_Allow", 1 },
+ { "k_ETokenRenewalType_None", 0 },
+};
+const ProtobufCEnumDescriptor etoken_renewal_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "ETokenRenewalType",
+ "ETokenRenewalType",
+ "ETokenRenewalType",
+ "",
+ 2,
+ etoken_renewal_type__enum_values_by_number,
+ 2,
+ etoken_renewal_type__enum_values_by_name,
+ 1,
+ etoken_renewal_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
+static const ProtobufCEnumValue eauth_token_revoke_action__enum_values_by_number[8] =
{
{ "k_EAuthTokenRevokeLogout", "EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeLogout", 0 },
{ "k_EAuthTokenRevokePermanent", "EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokePermanent", 1 },
{ "k_EAuthTokenRevokeReplaced", "EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeReplaced", 2 },
{ "k_EAuthTokenRevokeSupport", "EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeSupport", 3 },
{ "k_EAuthTokenRevokeConsume", "EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeConsume", 4 },
+ { "k_EAuthTokenRevokeNonRememberedLogout", "EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeNonRememberedLogout", 5 },
+ { "k_EAuthTokenRevokeNonRememberedPermanent", "EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeNonRememberedPermanent", 6 },
+ { "k_EAuthTokenRevokeAutomatic", "EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeAutomatic", 7 },
};
static const ProtobufCIntRange eauth_token_revoke_action__value_ranges[] = {
-{0, 0},{0, 5}
+{0, 0},{0, 8}
};
-static const ProtobufCEnumValueIndex eauth_token_revoke_action__enum_values_by_name[5] =
+static const ProtobufCEnumValueIndex eauth_token_revoke_action__enum_values_by_name[8] =
{
+ { "k_EAuthTokenRevokeAutomatic", 7 },
{ "k_EAuthTokenRevokeConsume", 4 },
{ "k_EAuthTokenRevokeLogout", 0 },
+ { "k_EAuthTokenRevokeNonRememberedLogout", 5 },
+ { "k_EAuthTokenRevokeNonRememberedPermanent", 6 },
{ "k_EAuthTokenRevokePermanent", 1 },
{ "k_EAuthTokenRevokeReplaced", 2 },
{ "k_EAuthTokenRevokeSupport", 3 },
@@ -4725,9 +4960,9 @@ const ProtobufCEnumDescriptor eauth_token_revoke_action__descriptor =
"EAuthTokenRevokeAction",
"EAuthTokenRevokeAction",
"",
- 5,
+ 8,
eauth_token_revoke_action__enum_values_by_number,
- 5,
+ 8,
eauth_token_revoke_action__enum_values_by_name,
1,
eauth_token_revoke_action__value_ranges,
@@ -4773,7 +5008,7 @@ const ProtobufCEnumDescriptor eauth_token_state__descriptor =
eauth_token_state__value_ranges,
NULL,NULL,NULL,NULL /* reserved[1234] */
};
-static const ProtobufCMethodDescriptor authentication__method_descriptors[12] =
+static const ProtobufCMethodDescriptor authentication__method_descriptors[13] =
{
{ "GetPasswordRSAPublicKey", &cauthentication__get_password_rsapublic_key__request__descriptor, &cauthentication__get_password_rsapublic_key__response__descriptor },
{ "BeginAuthSessionViaQR", &cauthentication__begin_auth_session_via_qr__request__descriptor, &cauthentication__begin_auth_session_via_qr__response__descriptor },
@@ -4786,6 +5021,7 @@ static const ProtobufCMethodDescriptor authentication__method_descriptors[12] =
{ "EnumerateTokens", &cauthentication__refresh_token__enumerate__request__descriptor, &cauthentication__refresh_token__enumerate__response__descriptor },
{ "GetAuthSessionsForAccount", &cauthentication__get_auth_sessions_for_account__request__descriptor, &cauthentication__get_auth_sessions_for_account__response__descriptor },
{ "MigrateMobileSession", &cauthentication__migrate_mobile_session__request__descriptor, &cauthentication__migrate_mobile_session__response__descriptor },
+ { "RevokeToken", &cauthentication__token__revoke__request__descriptor, &cauthentication__token__revoke__response__descriptor },
{ "RevokeRefreshToken", &cauthentication__refresh_token__revoke__request__descriptor, &cauthentication__refresh_token__revoke__response__descriptor },
};
const unsigned authentication__method_indices_by_name[] = {
@@ -4798,7 +5034,8 @@ const unsigned authentication__method_indices_by_name[] = {
0, /* GetPasswordRSAPublicKey */
10, /* MigrateMobileSession */
3, /* PollAuthSessionStatus */
- 11, /* RevokeRefreshToken */
+ 12, /* RevokeRefreshToken */
+ 11, /* RevokeToken */
5, /* UpdateAuthSessionWithMobileConfirmation */
6 /* UpdateAuthSessionWithSteamGuardCode */
};
@@ -4809,7 +5046,7 @@ const ProtobufCServiceDescriptor authentication__descriptor =
"Authentication",
"Authentication",
"",
- 12,
+ 13,
authentication__method_descriptors,
authentication__method_indices_by_name
};
@@ -4901,13 +5138,21 @@ void authentication__migrate_mobile_session(ProtobufCService *service,
assert(service->descriptor == &authentication__descriptor);
service->invoke(service, 10, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
}
+void authentication__revoke_token(ProtobufCService *service,
+ const CAuthenticationTokenRevokeRequest *input,
+ CAuthenticationTokenRevokeResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &authentication__descriptor);
+ service->invoke(service, 11, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
void authentication__revoke_refresh_token(ProtobufCService *service,
const CAuthenticationRefreshTokenRevokeRequest *input,
CAuthenticationRefreshTokenRevokeResponse_Closure closure,
void *closure_data)
{
assert(service->descriptor == &authentication__descriptor);
- service->invoke(service, 11, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+ service->invoke(service, 12, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
}
void authentication__init (Authentication_Service *service,
Authentication_ServiceDestroy destroy)
diff --git a/protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.pb-c.h b/protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.pb-c.h
index a914c93fd5..34bc57aba1 100644
--- a/protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.pb-c.h
+++ b/protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.pb-c.h
@@ -44,6 +44,8 @@ struct CAuthenticationGetAuthSessionsForAccountRequest;
struct CAuthenticationGetAuthSessionsForAccountResponse;
struct CAuthenticationMigrateMobileSessionRequest;
struct CAuthenticationMigrateMobileSessionResponse;
+struct CAuthenticationTokenRevokeRequest;
+struct CAuthenticationTokenRevokeResponse;
struct CAuthenticationRefreshTokenRevokeRequest;
struct CAuthenticationRefreshTokenRevokeResponse;
struct CAuthenticationSupportQueryRefreshTokensByAccountRequest;
@@ -90,12 +92,20 @@ typedef enum _EAuthSessionSecurityHistory {
EAUTH_SESSION_SECURITY_HISTORY__k_EAuthSessionSecurityHistory_NoPriorHistory = 2
PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(EAUTH_SESSION_SECURITY_HISTORY)
} EAuthSessionSecurityHistory;
+typedef enum _ETokenRenewalType {
+ ETOKEN_RENEWAL_TYPE__k_ETokenRenewalType_None = 0,
+ ETOKEN_RENEWAL_TYPE__k_ETokenRenewalType_Allow = 1
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(ETOKEN_RENEWAL_TYPE)
+} ETokenRenewalType;
typedef enum _EAuthTokenRevokeAction {
EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeLogout = 0,
EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokePermanent = 1,
EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeReplaced = 2,
EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeSupport = 3,
- EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeConsume = 4
+ EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeConsume = 4,
+ EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeNonRememberedLogout = 5,
+ EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeNonRememberedPermanent = 6,
+ EAUTH_TOKEN_REVOKE_ACTION__k_EAuthTokenRevokeAutomatic = 7
PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(EAUTH_TOKEN_REVOKE_ACTION)
} EAuthTokenRevokeAction;
typedef enum _EAuthTokenState {
@@ -115,6 +125,7 @@ typedef enum _EAuthTokenState {
extern const ProtobufCEnumDescriptor eauth_token_platform_type__descriptor;
extern const ProtobufCEnumDescriptor eauth_session_guard_type__descriptor;
extern const ProtobufCEnumDescriptor eauth_session_security_history__descriptor;
+extern const ProtobufCEnumDescriptor etoken_renewal_type__descriptor;
extern const ProtobufCEnumDescriptor eauth_token_revoke_action__descriptor;
extern const ProtobufCEnumDescriptor eauth_token_state__descriptor;
extern const ProtobufCMessageDescriptor cauthentication__get_password_rsapublic_key__request__descriptor;
@@ -143,6 +154,8 @@ extern const ProtobufCMessageDescriptor cauthentication__get_auth_sessions_for_a
extern const ProtobufCMessageDescriptor cauthentication__get_auth_sessions_for_account__response__descriptor;
extern const ProtobufCMessageDescriptor cauthentication__migrate_mobile_session__request__descriptor;
extern const ProtobufCMessageDescriptor cauthentication__migrate_mobile_session__response__descriptor;
+extern const ProtobufCMessageDescriptor cauthentication__token__revoke__request__descriptor;
+extern const ProtobufCMessageDescriptor cauthentication__token__revoke__response__descriptor;
extern const ProtobufCMessageDescriptor cauthentication__refresh_token__revoke__request__descriptor;
extern const ProtobufCMessageDescriptor cauthentication__refresh_token__revoke__response__descriptor;
extern const ProtobufCMessageDescriptor cauthentication_support__query_refresh_tokens_by_account__request__descriptor;
@@ -167,6 +180,8 @@ extern const ProtobufCServiceDescriptor cloud_gaming__descriptor;
/* --- messages --- */
+extern "C" void message_init_generic(const ProtobufCMessageDescriptor * desc, ProtobufCMessage * message);
+
struct CAuthenticationGetPasswordRSAPublicKeyRequest : public ProtobufCppMessage
{
CAuthenticationGetPasswordRSAPublicKeyRequest() :
@@ -201,6 +216,10 @@ struct CAuthenticationDeviceDetails : public ProtobufCppMessage
int32_t os_type;
protobuf_c_boolean has_gaming_device_type;
uint32_t gaming_device_type;
+ protobuf_c_boolean has_client_count;
+ uint32_t client_count;
+ protobuf_c_boolean has_machine_id;
+ ProtobufCBinaryData machine_id;
};
struct CAuthenticationBeginAuthSessionViaQRRequest : public ProtobufCppMessage
@@ -422,6 +441,8 @@ struct CAuthenticationAccessTokenGenerateForAppRequest : public ProtobufCppMessa
char *refresh_token;
protobuf_c_boolean has_steamid;
uint64_t steamid;
+ protobuf_c_boolean has_renewal_type;
+ ETokenRenewalType renewal_type;
};
struct CAuthenticationAccessTokenGenerateForAppResponse : public ProtobufCppMessage
@@ -431,6 +452,7 @@ struct CAuthenticationAccessTokenGenerateForAppResponse : public ProtobufCppMess
{}
char *access_token;
+ char *refresh_token;
};
struct CAuthenticationRefreshTokenEnumerateRequest : public ProtobufCppMessage
@@ -535,6 +557,25 @@ struct CAuthenticationMigrateMobileSessionResponse : public ProtobufCppMessage
char *access_token;
};
+struct CAuthenticationTokenRevokeRequest : public ProtobufCppMessage
+{
+ CAuthenticationTokenRevokeRequest() :
+ ProtobufCppMessage(cauthentication__token__revoke__request__descriptor)
+ {}
+
+ char *token;
+ protobuf_c_boolean has_revoke_action;
+ EAuthTokenRevokeAction revoke_action;
+};
+
+struct CAuthenticationTokenRevokeResponse : public ProtobufCppMessage
+{
+ CAuthenticationTokenRevokeResponse() :
+ ProtobufCppMessage(cauthentication__token__revoke__response__descriptor)
+ {}
+
+};
+
struct CAuthenticationRefreshTokenRevokeRequest : public ProtobufCppMessage
{
CAuthenticationRefreshTokenRevokeRequest() :
@@ -1140,6 +1181,38 @@ CAuthenticationMigrateMobileSessionResponse *
void cauthentication__migrate_mobile_session__response__free_unpacked
(CAuthenticationMigrateMobileSessionResponse *message,
ProtobufCAllocator *allocator);
+size_t cauthentication__token__revoke__request__get_packed_size
+ (const CAuthenticationTokenRevokeRequest *message);
+size_t cauthentication__token__revoke__request__pack
+ (const CAuthenticationTokenRevokeRequest *message,
+ uint8_t *out);
+size_t cauthentication__token__revoke__request__pack_to_buffer
+ (const CAuthenticationTokenRevokeRequest *message,
+ ProtobufCBuffer *buffer);
+CAuthenticationTokenRevokeRequest *
+ cauthentication__token__revoke__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cauthentication__token__revoke__request__free_unpacked
+ (CAuthenticationTokenRevokeRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cauthentication__token__revoke__response__get_packed_size
+ (const CAuthenticationTokenRevokeResponse *message);
+size_t cauthentication__token__revoke__response__pack
+ (const CAuthenticationTokenRevokeResponse *message,
+ uint8_t *out);
+size_t cauthentication__token__revoke__response__pack_to_buffer
+ (const CAuthenticationTokenRevokeResponse *message,
+ ProtobufCBuffer *buffer);
+CAuthenticationTokenRevokeResponse *
+ cauthentication__token__revoke__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cauthentication__token__revoke__response__free_unpacked
+ (CAuthenticationTokenRevokeResponse *message,
+ ProtobufCAllocator *allocator);
size_t cauthentication__refresh_token__revoke__request__get_packed_size
(const CAuthenticationRefreshTokenRevokeRequest *message);
size_t cauthentication__refresh_token__revoke__request__pack
@@ -1492,6 +1565,12 @@ typedef void (*CAuthenticationMigrateMobileSessionRequest_Closure)
typedef void (*CAuthenticationMigrateMobileSessionResponse_Closure)
(const CAuthenticationMigrateMobileSessionResponse *message,
void *closure_data);
+typedef void (*CAuthenticationTokenRevokeRequest_Closure)
+ (const CAuthenticationTokenRevokeRequest *message,
+ void *closure_data);
+typedef void (*CAuthenticationTokenRevokeResponse_Closure)
+ (const CAuthenticationTokenRevokeResponse *message,
+ void *closure_data);
typedef void (*CAuthenticationRefreshTokenRevokeRequest_Closure)
(const CAuthenticationRefreshTokenRevokeRequest *message,
void *closure_data);
@@ -1597,6 +1676,10 @@ struct Authentication_Service
const CAuthenticationMigrateMobileSessionRequest *input,
CAuthenticationMigrateMobileSessionResponse_Closure closure,
void *closure_data);
+ void (*revoke_token)(Authentication_Service *service,
+ const CAuthenticationTokenRevokeRequest *input,
+ CAuthenticationTokenRevokeResponse_Closure closure,
+ void *closure_data);
void (*revoke_refresh_token)(Authentication_Service *service,
const CAuthenticationRefreshTokenRevokeRequest *input,
CAuthenticationRefreshTokenRevokeResponse_Closure closure,
@@ -1620,6 +1703,7 @@ void authentication__init (Authentication_Service *service,
function_prefix__ ## enumerate_tokens,\
function_prefix__ ## get_auth_sessions_for_account,\
function_prefix__ ## migrate_mobile_session,\
+ function_prefix__ ## revoke_token,\
function_prefix__ ## revoke_refresh_token }
void authentication__get_password_rsapublic_key(ProtobufCService *service,
const CAuthenticationGetPasswordRSAPublicKeyRequest *input,
@@ -1665,6 +1749,10 @@ void authentication__migrate_mobile_session(ProtobufCService *service,
const CAuthenticationMigrateMobileSessionRequest *input,
CAuthenticationMigrateMobileSessionResponse_Closure closure,
void *closure_data);
+void authentication__revoke_token(ProtobufCService *service,
+ const CAuthenticationTokenRevokeRequest *input,
+ CAuthenticationTokenRevokeResponse_Closure closure,
+ void *closure_data);
void authentication__revoke_refresh_token(ProtobufCService *service,
const CAuthenticationRefreshTokenRevokeRequest *input,
CAuthenticationRefreshTokenRevokeResponse_Closure closure,
diff --git a/protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.proto b/protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.proto
index f39bf9125a..6cd1e467a2 100644
--- a/protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.proto
+++ b/protocols/Steam/src/protobuf-c/steammessages_auth.steamclient.proto
@@ -28,12 +28,20 @@ enum EAuthSessionSecurityHistory {
k_EAuthSessionSecurityHistory_NoPriorHistory = 2;
}
+enum ETokenRenewalType {
+ k_ETokenRenewalType_None = 0;
+ k_ETokenRenewalType_Allow = 1;
+}
+
enum EAuthTokenRevokeAction {
k_EAuthTokenRevokeLogout = 0;
k_EAuthTokenRevokePermanent = 1;
k_EAuthTokenRevokeReplaced = 2;
k_EAuthTokenRevokeSupport = 3;
k_EAuthTokenRevokeConsume = 4;
+ k_EAuthTokenRevokeNonRememberedLogout = 5;
+ k_EAuthTokenRevokeNonRememberedPermanent = 6;
+ k_EAuthTokenRevokeAutomatic = 7;
}
enum EAuthTokenState {
@@ -62,6 +70,8 @@ message CAuthentication_DeviceDetails {
optional .EAuthTokenPlatformType platform_type = 2 [default = k_EAuthTokenPlatformType_Unknown, (description) = "EAuthTokenPlatformType, claimed, of device"];
optional int32 os_type = 3 [(description) = "EOSType, claimed, of authorized device"];
optional uint32 gaming_device_type = 4 [(description) = "EGamingDeviceType, claimed, of authorized device for steam client-type devices"];
+ optional uint32 client_count = 5 [(description) = "For desktop clients, quantized number of users in history"];
+ optional bytes machine_id = 6 [(description) = "Additional device context"];
}
message CAuthentication_BeginAuthSessionViaQR_Request {
@@ -173,10 +183,12 @@ message CAuthentication_UpdateAuthSessionWithSteamGuardCode_Response {
message CAuthentication_AccessToken_GenerateForApp_Request {
optional string refresh_token = 1;
optional fixed64 steamid = 2;
+ optional .ETokenRenewalType renewal_type = 3 [default = k_ETokenRenewalType_None];
}
message CAuthentication_AccessToken_GenerateForApp_Response {
optional string access_token = 1;
+ optional string refresh_token = 2;
}
message CAuthentication_RefreshToken_Enumerate_Request {
@@ -228,6 +240,14 @@ message CAuthentication_MigrateMobileSession_Response {
optional string access_token = 2;
}
+message CAuthentication_Token_Revoke_Request {
+ optional string token = 1;
+ optional .EAuthTokenRevokeAction revoke_action = 2 [default = k_EAuthTokenRevokePermanent, (description) = "Select between logout and logout-and-forget-machine"];
+}
+
+message CAuthentication_Token_Revoke_Response {
+}
+
message CAuthentication_RefreshToken_Revoke_Request {
optional fixed64 token_id = 1;
optional fixed64 steamid = 2 [(description) = "Token holder if an admin action on behalf of another user"];
@@ -373,6 +393,10 @@ service Authentication {
option (method_description) = "Migrates a WG token to an access and refresh token using a signature generated with the user's 2FA secret";
}
+ rpc RevokeToken (.CAuthentication_Token_Revoke_Request) returns (.CAuthentication_Token_Revoke_Response) {
+ option (method_description) = "Revoke a single token immediately, making it unable to renew or generate new access tokens";
+ }
+
rpc RevokeRefreshToken (.CAuthentication_RefreshToken_Revoke_Request) returns (.CAuthentication_RefreshToken_Revoke_Response) {
option (method_description) = "Mark the given refresh token as revoked";
}
diff --git a/protocols/Steam/src/protobuf-c/steammessages_base.pb-c.h b/protocols/Steam/src/protobuf-c/steammessages_base.pb-c.h
index 4ff94b1524..a561798c6c 100644
--- a/protocols/Steam/src/protobuf-c/steammessages_base.pb-c.h
+++ b/protocols/Steam/src/protobuf-c/steammessages_base.pb-c.h
@@ -177,6 +177,10 @@ struct CMsgProtoBufHeader : public ProtobufCppMessage
ProtobufCppMessage(cmsg_proto_buf_header__descriptor)
{}
+ bool failed() const {
+ return has_eresult && eresult != 1;
+ }
+
protobuf_c_boolean has_steamid;
uint64_t steamid;
protobuf_c_boolean has_client_sessionid;
diff --git a/protocols/Steam/src/protobuf-c/steammessages_base.proto b/protocols/Steam/src/protobuf-c/steammessages_base.proto
index d64ce8acc3..3a3e3f92f2 100644
--- a/protocols/Steam/src/protobuf-c/steammessages_base.proto
+++ b/protocols/Steam/src/protobuf-c/steammessages_base.proto
@@ -1,4 +1,4 @@
-import "google/protobuf/descriptor.proto";
+import "descriptor.proto";
option optimize_for = SPEED;
option cc_generic_services = true;
diff --git a/protocols/Steam/src/protobuf-c/steammessages_chat.steamclient.pb-c.cpp b/protocols/Steam/src/protobuf-c/steammessages_chat.steamclient.pb-c.cpp
new file mode 100644
index 0000000000..46ef8b5bdb
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_chat.steamclient.pb-c.cpp
@@ -0,0 +1,15991 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_chat.steamclient.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "steammessages_chat.steamclient.pb-c.h"
+size_t cchat__request_friend_persona_states__request__get_packed_size
+ (const CChatRequestFriendPersonaStatesRequest *message)
+{
+ assert(message->descriptor == &cchat__request_friend_persona_states__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat__request_friend_persona_states__request__pack
+ (const CChatRequestFriendPersonaStatesRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat__request_friend_persona_states__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat__request_friend_persona_states__request__pack_to_buffer
+ (const CChatRequestFriendPersonaStatesRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat__request_friend_persona_states__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRequestFriendPersonaStatesRequest *
+ cchat__request_friend_persona_states__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRequestFriendPersonaStatesRequest *)
+ protobuf_c_message_unpack (&cchat__request_friend_persona_states__request__descriptor,
+ allocator, len, data);
+}
+void cchat__request_friend_persona_states__request__free_unpacked
+ (CChatRequestFriendPersonaStatesRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat__request_friend_persona_states__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat__request_friend_persona_states__response__get_packed_size
+ (const CChatRequestFriendPersonaStatesResponse *message)
+{
+ assert(message->descriptor == &cchat__request_friend_persona_states__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat__request_friend_persona_states__response__pack
+ (const CChatRequestFriendPersonaStatesResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat__request_friend_persona_states__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat__request_friend_persona_states__response__pack_to_buffer
+ (const CChatRequestFriendPersonaStatesResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat__request_friend_persona_states__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRequestFriendPersonaStatesResponse *
+ cchat__request_friend_persona_states__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRequestFriendPersonaStatesResponse *)
+ protobuf_c_message_unpack (&cchat__request_friend_persona_states__response__descriptor,
+ allocator, len, data);
+}
+void cchat__request_friend_persona_states__response__free_unpacked
+ (CChatRequestFriendPersonaStatesResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat__request_friend_persona_states__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__create_chat_room_group__request__get_packed_size
+ (const CChatRoomCreateChatRoomGroupRequest *message)
+{
+ assert(message->descriptor == &cchat_room__create_chat_room_group__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__create_chat_room_group__request__pack
+ (const CChatRoomCreateChatRoomGroupRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__create_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__create_chat_room_group__request__pack_to_buffer
+ (const CChatRoomCreateChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__create_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomCreateChatRoomGroupRequest *
+ cchat_room__create_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomCreateChatRoomGroupRequest *)
+ protobuf_c_message_unpack (&cchat_room__create_chat_room_group__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__create_chat_room_group__request__free_unpacked
+ (CChatRoomCreateChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__create_chat_room_group__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_role__get_packed_size
+ (const CChatRole *message)
+{
+ assert(message->descriptor == &cchat_role__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_role__pack
+ (const CChatRole *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_role__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_role__pack_to_buffer
+ (const CChatRole *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_role__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRole *
+ cchat_role__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRole *)
+ protobuf_c_message_unpack (&cchat_role__descriptor,
+ allocator, len, data);
+}
+void cchat_role__free_unpacked
+ (CChatRole *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_role__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_role_actions__get_packed_size
+ (const CChatRoleActions *message)
+{
+ assert(message->descriptor == &cchat_role_actions__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_role_actions__pack
+ (const CChatRoleActions *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_role_actions__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_role_actions__pack_to_buffer
+ (const CChatRoleActions *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_role_actions__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoleActions *
+ cchat_role_actions__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoleActions *)
+ protobuf_c_message_unpack (&cchat_role_actions__descriptor,
+ allocator, len, data);
+}
+void cchat_role_actions__free_unpacked
+ (CChatRoleActions *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_role_actions__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_party_beacon__get_packed_size
+ (const CChatPartyBeacon *message)
+{
+ assert(message->descriptor == &cchat_party_beacon__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_party_beacon__pack
+ (const CChatPartyBeacon *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_party_beacon__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_party_beacon__pack_to_buffer
+ (const CChatPartyBeacon *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_party_beacon__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatPartyBeacon *
+ cchat_party_beacon__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatPartyBeacon *)
+ protobuf_c_message_unpack (&cchat_party_beacon__descriptor,
+ allocator, len, data);
+}
+void cchat_party_beacon__free_unpacked
+ (CChatPartyBeacon *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_party_beacon__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room_group_header_state__get_packed_size
+ (const CChatRoomGroupHeaderState *message)
+{
+ assert(message->descriptor == &cchat_room_group_header_state__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room_group_header_state__pack
+ (const CChatRoomGroupHeaderState *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room_group_header_state__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room_group_header_state__pack_to_buffer
+ (const CChatRoomGroupHeaderState *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room_group_header_state__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGroupHeaderState *
+ cchat_room_group_header_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGroupHeaderState *)
+ protobuf_c_message_unpack (&cchat_room_group_header_state__descriptor,
+ allocator, len, data);
+}
+void cchat_room_group_header_state__free_unpacked
+ (CChatRoomGroupHeaderState *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room_group_header_state__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room_member__get_packed_size
+ (const CChatRoomMember *message)
+{
+ assert(message->descriptor == &cchat_room_member__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room_member__pack
+ (const CChatRoomMember *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room_member__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room_member__pack_to_buffer
+ (const CChatRoomMember *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room_member__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomMember *
+ cchat_room_member__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomMember *)
+ protobuf_c_message_unpack (&cchat_room_member__descriptor,
+ allocator, len, data);
+}
+void cchat_room_member__free_unpacked
+ (CChatRoomMember *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room_member__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room_state__get_packed_size
+ (const CChatRoomState *message)
+{
+ assert(message->descriptor == &cchat_room_state__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room_state__pack
+ (const CChatRoomState *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room_state__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room_state__pack_to_buffer
+ (const CChatRoomState *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room_state__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomState *
+ cchat_room_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomState *)
+ protobuf_c_message_unpack (&cchat_room_state__descriptor,
+ allocator, len, data);
+}
+void cchat_room_state__free_unpacked
+ (CChatRoomState *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room_state__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room_group_state__get_packed_size
+ (const CChatRoomGroupState *message)
+{
+ assert(message->descriptor == &cchat_room_group_state__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room_group_state__pack
+ (const CChatRoomGroupState *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room_group_state__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room_group_state__pack_to_buffer
+ (const CChatRoomGroupState *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room_group_state__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGroupState *
+ cchat_room_group_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGroupState *)
+ protobuf_c_message_unpack (&cchat_room_group_state__descriptor,
+ allocator, len, data);
+}
+void cchat_room_group_state__free_unpacked
+ (CChatRoomGroupState *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room_group_state__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cuser_chat_room_state__get_packed_size
+ (const CUserChatRoomState *message)
+{
+ assert(message->descriptor == &cuser_chat_room_state__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cuser_chat_room_state__pack
+ (const CUserChatRoomState *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cuser_chat_room_state__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cuser_chat_room_state__pack_to_buffer
+ (const CUserChatRoomState *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cuser_chat_room_state__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CUserChatRoomState *
+ cuser_chat_room_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CUserChatRoomState *)
+ protobuf_c_message_unpack (&cuser_chat_room_state__descriptor,
+ allocator, len, data);
+}
+void cuser_chat_room_state__free_unpacked
+ (CUserChatRoomState *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cuser_chat_room_state__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cuser_chat_room_group_state__get_packed_size
+ (const CUserChatRoomGroupState *message)
+{
+ assert(message->descriptor == &cuser_chat_room_group_state__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cuser_chat_room_group_state__pack
+ (const CUserChatRoomGroupState *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cuser_chat_room_group_state__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cuser_chat_room_group_state__pack_to_buffer
+ (const CUserChatRoomGroupState *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cuser_chat_room_group_state__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CUserChatRoomGroupState *
+ cuser_chat_room_group_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CUserChatRoomGroupState *)
+ protobuf_c_message_unpack (&cuser_chat_room_group_state__descriptor,
+ allocator, len, data);
+}
+void cuser_chat_room_group_state__free_unpacked
+ (CUserChatRoomGroupState *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cuser_chat_room_group_state__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__create_chat_room_group__response__get_packed_size
+ (const CChatRoomCreateChatRoomGroupResponse *message)
+{
+ assert(message->descriptor == &cchat_room__create_chat_room_group__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__create_chat_room_group__response__pack
+ (const CChatRoomCreateChatRoomGroupResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__create_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__create_chat_room_group__response__pack_to_buffer
+ (const CChatRoomCreateChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__create_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomCreateChatRoomGroupResponse *
+ cchat_room__create_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomCreateChatRoomGroupResponse *)
+ protobuf_c_message_unpack (&cchat_room__create_chat_room_group__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__create_chat_room_group__response__free_unpacked
+ (CChatRoomCreateChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__create_chat_room_group__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__save_chat_room_group__request__get_packed_size
+ (const CChatRoomSaveChatRoomGroupRequest *message)
+{
+ assert(message->descriptor == &cchat_room__save_chat_room_group__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__save_chat_room_group__request__pack
+ (const CChatRoomSaveChatRoomGroupRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__save_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__save_chat_room_group__request__pack_to_buffer
+ (const CChatRoomSaveChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__save_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSaveChatRoomGroupRequest *
+ cchat_room__save_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSaveChatRoomGroupRequest *)
+ protobuf_c_message_unpack (&cchat_room__save_chat_room_group__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__save_chat_room_group__request__free_unpacked
+ (CChatRoomSaveChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__save_chat_room_group__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__save_chat_room_group__response__get_packed_size
+ (const CChatRoomSaveChatRoomGroupResponse *message)
+{
+ assert(message->descriptor == &cchat_room__save_chat_room_group__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__save_chat_room_group__response__pack
+ (const CChatRoomSaveChatRoomGroupResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__save_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__save_chat_room_group__response__pack_to_buffer
+ (const CChatRoomSaveChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__save_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSaveChatRoomGroupResponse *
+ cchat_room__save_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSaveChatRoomGroupResponse *)
+ protobuf_c_message_unpack (&cchat_room__save_chat_room_group__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__save_chat_room_group__response__free_unpacked
+ (CChatRoomSaveChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__save_chat_room_group__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__rename_chat_room_group__request__get_packed_size
+ (const CChatRoomRenameChatRoomGroupRequest *message)
+{
+ assert(message->descriptor == &cchat_room__rename_chat_room_group__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__rename_chat_room_group__request__pack
+ (const CChatRoomRenameChatRoomGroupRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__rename_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__rename_chat_room_group__request__pack_to_buffer
+ (const CChatRoomRenameChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__rename_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomRenameChatRoomGroupRequest *
+ cchat_room__rename_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomRenameChatRoomGroupRequest *)
+ protobuf_c_message_unpack (&cchat_room__rename_chat_room_group__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__rename_chat_room_group__request__free_unpacked
+ (CChatRoomRenameChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__rename_chat_room_group__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__rename_chat_room_group__response__get_packed_size
+ (const CChatRoomRenameChatRoomGroupResponse *message)
+{
+ assert(message->descriptor == &cchat_room__rename_chat_room_group__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__rename_chat_room_group__response__pack
+ (const CChatRoomRenameChatRoomGroupResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__rename_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__rename_chat_room_group__response__pack_to_buffer
+ (const CChatRoomRenameChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__rename_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomRenameChatRoomGroupResponse *
+ cchat_room__rename_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomRenameChatRoomGroupResponse *)
+ protobuf_c_message_unpack (&cchat_room__rename_chat_room_group__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__rename_chat_room_group__response__free_unpacked
+ (CChatRoomRenameChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__rename_chat_room_group__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_chat_room_group_tagline__request__get_packed_size
+ (const CChatRoomSetChatRoomGroupTaglineRequest *message)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_tagline__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_chat_room_group_tagline__request__pack
+ (const CChatRoomSetChatRoomGroupTaglineRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_tagline__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_chat_room_group_tagline__request__pack_to_buffer
+ (const CChatRoomSetChatRoomGroupTaglineRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_tagline__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetChatRoomGroupTaglineRequest *
+ cchat_room__set_chat_room_group_tagline__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetChatRoomGroupTaglineRequest *)
+ protobuf_c_message_unpack (&cchat_room__set_chat_room_group_tagline__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_chat_room_group_tagline__request__free_unpacked
+ (CChatRoomSetChatRoomGroupTaglineRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_chat_room_group_tagline__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_chat_room_group_tagline__response__get_packed_size
+ (const CChatRoomSetChatRoomGroupTaglineResponse *message)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_tagline__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_chat_room_group_tagline__response__pack
+ (const CChatRoomSetChatRoomGroupTaglineResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_tagline__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_chat_room_group_tagline__response__pack_to_buffer
+ (const CChatRoomSetChatRoomGroupTaglineResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_tagline__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetChatRoomGroupTaglineResponse *
+ cchat_room__set_chat_room_group_tagline__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetChatRoomGroupTaglineResponse *)
+ protobuf_c_message_unpack (&cchat_room__set_chat_room_group_tagline__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_chat_room_group_tagline__response__free_unpacked
+ (CChatRoomSetChatRoomGroupTaglineResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_chat_room_group_tagline__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_chat_room_group_avatar__request__get_packed_size
+ (const CChatRoomSetChatRoomGroupAvatarRequest *message)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_avatar__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_chat_room_group_avatar__request__pack
+ (const CChatRoomSetChatRoomGroupAvatarRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_avatar__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_chat_room_group_avatar__request__pack_to_buffer
+ (const CChatRoomSetChatRoomGroupAvatarRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_avatar__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetChatRoomGroupAvatarRequest *
+ cchat_room__set_chat_room_group_avatar__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetChatRoomGroupAvatarRequest *)
+ protobuf_c_message_unpack (&cchat_room__set_chat_room_group_avatar__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_chat_room_group_avatar__request__free_unpacked
+ (CChatRoomSetChatRoomGroupAvatarRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_chat_room_group_avatar__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_chat_room_group_avatar__response__get_packed_size
+ (const CChatRoomSetChatRoomGroupAvatarResponse *message)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_avatar__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_chat_room_group_avatar__response__pack
+ (const CChatRoomSetChatRoomGroupAvatarResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_avatar__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_chat_room_group_avatar__response__pack_to_buffer
+ (const CChatRoomSetChatRoomGroupAvatarResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_avatar__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetChatRoomGroupAvatarResponse *
+ cchat_room__set_chat_room_group_avatar__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetChatRoomGroupAvatarResponse *)
+ protobuf_c_message_unpack (&cchat_room__set_chat_room_group_avatar__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_chat_room_group_avatar__response__free_unpacked
+ (CChatRoomSetChatRoomGroupAvatarResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_chat_room_group_avatar__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_chat_room_group_watching_broadcast__request__get_packed_size
+ (const CChatRoomSetChatRoomGroupWatchingBroadcastRequest *message)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_watching_broadcast__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_chat_room_group_watching_broadcast__request__pack
+ (const CChatRoomSetChatRoomGroupWatchingBroadcastRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_watching_broadcast__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_chat_room_group_watching_broadcast__request__pack_to_buffer
+ (const CChatRoomSetChatRoomGroupWatchingBroadcastRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_watching_broadcast__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetChatRoomGroupWatchingBroadcastRequest *
+ cchat_room__set_chat_room_group_watching_broadcast__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetChatRoomGroupWatchingBroadcastRequest *)
+ protobuf_c_message_unpack (&cchat_room__set_chat_room_group_watching_broadcast__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_chat_room_group_watching_broadcast__request__free_unpacked
+ (CChatRoomSetChatRoomGroupWatchingBroadcastRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_chat_room_group_watching_broadcast__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_chat_room_group_watching_broadcast__response__get_packed_size
+ (const CChatRoomSetChatRoomGroupWatchingBroadcastResponse *message)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_watching_broadcast__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_chat_room_group_watching_broadcast__response__pack
+ (const CChatRoomSetChatRoomGroupWatchingBroadcastResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_watching_broadcast__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_chat_room_group_watching_broadcast__response__pack_to_buffer
+ (const CChatRoomSetChatRoomGroupWatchingBroadcastResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_chat_room_group_watching_broadcast__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetChatRoomGroupWatchingBroadcastResponse *
+ cchat_room__set_chat_room_group_watching_broadcast__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetChatRoomGroupWatchingBroadcastResponse *)
+ protobuf_c_message_unpack (&cchat_room__set_chat_room_group_watching_broadcast__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_chat_room_group_watching_broadcast__response__free_unpacked
+ (CChatRoomSetChatRoomGroupWatchingBroadcastResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_chat_room_group_watching_broadcast__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__join_mini_game_for_chat_room_group__request__get_packed_size
+ (const CChatRoomJoinMiniGameForChatRoomGroupRequest *message)
+{
+ assert(message->descriptor == &cchat_room__join_mini_game_for_chat_room_group__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__join_mini_game_for_chat_room_group__request__pack
+ (const CChatRoomJoinMiniGameForChatRoomGroupRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__join_mini_game_for_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__join_mini_game_for_chat_room_group__request__pack_to_buffer
+ (const CChatRoomJoinMiniGameForChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__join_mini_game_for_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomJoinMiniGameForChatRoomGroupRequest *
+ cchat_room__join_mini_game_for_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomJoinMiniGameForChatRoomGroupRequest *)
+ protobuf_c_message_unpack (&cchat_room__join_mini_game_for_chat_room_group__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__join_mini_game_for_chat_room_group__request__free_unpacked
+ (CChatRoomJoinMiniGameForChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__join_mini_game_for_chat_room_group__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__join_mini_game_for_chat_room_group__response__get_packed_size
+ (const CChatRoomJoinMiniGameForChatRoomGroupResponse *message)
+{
+ assert(message->descriptor == &cchat_room__join_mini_game_for_chat_room_group__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__join_mini_game_for_chat_room_group__response__pack
+ (const CChatRoomJoinMiniGameForChatRoomGroupResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__join_mini_game_for_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__join_mini_game_for_chat_room_group__response__pack_to_buffer
+ (const CChatRoomJoinMiniGameForChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__join_mini_game_for_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomJoinMiniGameForChatRoomGroupResponse *
+ cchat_room__join_mini_game_for_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomJoinMiniGameForChatRoomGroupResponse *)
+ protobuf_c_message_unpack (&cchat_room__join_mini_game_for_chat_room_group__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__join_mini_game_for_chat_room_group__response__free_unpacked
+ (CChatRoomJoinMiniGameForChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__join_mini_game_for_chat_room_group__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__end_mini_game_for_chat_room_group__request__get_packed_size
+ (const CChatRoomEndMiniGameForChatRoomGroupRequest *message)
+{
+ assert(message->descriptor == &cchat_room__end_mini_game_for_chat_room_group__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__end_mini_game_for_chat_room_group__request__pack
+ (const CChatRoomEndMiniGameForChatRoomGroupRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__end_mini_game_for_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__end_mini_game_for_chat_room_group__request__pack_to_buffer
+ (const CChatRoomEndMiniGameForChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__end_mini_game_for_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomEndMiniGameForChatRoomGroupRequest *
+ cchat_room__end_mini_game_for_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomEndMiniGameForChatRoomGroupRequest *)
+ protobuf_c_message_unpack (&cchat_room__end_mini_game_for_chat_room_group__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__end_mini_game_for_chat_room_group__request__free_unpacked
+ (CChatRoomEndMiniGameForChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__end_mini_game_for_chat_room_group__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__end_mini_game_for_chat_room_group__response__get_packed_size
+ (const CChatRoomEndMiniGameForChatRoomGroupResponse *message)
+{
+ assert(message->descriptor == &cchat_room__end_mini_game_for_chat_room_group__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__end_mini_game_for_chat_room_group__response__pack
+ (const CChatRoomEndMiniGameForChatRoomGroupResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__end_mini_game_for_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__end_mini_game_for_chat_room_group__response__pack_to_buffer
+ (const CChatRoomEndMiniGameForChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__end_mini_game_for_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomEndMiniGameForChatRoomGroupResponse *
+ cchat_room__end_mini_game_for_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomEndMiniGameForChatRoomGroupResponse *)
+ protobuf_c_message_unpack (&cchat_room__end_mini_game_for_chat_room_group__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__end_mini_game_for_chat_room_group__response__free_unpacked
+ (CChatRoomEndMiniGameForChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__end_mini_game_for_chat_room_group__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__mute_user__request__get_packed_size
+ (const CChatRoomMuteUserRequest *message)
+{
+ assert(message->descriptor == &cchat_room__mute_user__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__mute_user__request__pack
+ (const CChatRoomMuteUserRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__mute_user__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__mute_user__request__pack_to_buffer
+ (const CChatRoomMuteUserRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__mute_user__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomMuteUserRequest *
+ cchat_room__mute_user__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomMuteUserRequest *)
+ protobuf_c_message_unpack (&cchat_room__mute_user__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__mute_user__request__free_unpacked
+ (CChatRoomMuteUserRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__mute_user__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__mute_user__response__get_packed_size
+ (const CChatRoomMuteUserResponse *message)
+{
+ assert(message->descriptor == &cchat_room__mute_user__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__mute_user__response__pack
+ (const CChatRoomMuteUserResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__mute_user__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__mute_user__response__pack_to_buffer
+ (const CChatRoomMuteUserResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__mute_user__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomMuteUserResponse *
+ cchat_room__mute_user__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomMuteUserResponse *)
+ protobuf_c_message_unpack (&cchat_room__mute_user__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__mute_user__response__free_unpacked
+ (CChatRoomMuteUserResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__mute_user__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__kick_user__request__get_packed_size
+ (const CChatRoomKickUserRequest *message)
+{
+ assert(message->descriptor == &cchat_room__kick_user__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__kick_user__request__pack
+ (const CChatRoomKickUserRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__kick_user__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__kick_user__request__pack_to_buffer
+ (const CChatRoomKickUserRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__kick_user__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomKickUserRequest *
+ cchat_room__kick_user__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomKickUserRequest *)
+ protobuf_c_message_unpack (&cchat_room__kick_user__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__kick_user__request__free_unpacked
+ (CChatRoomKickUserRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__kick_user__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__kick_user__response__get_packed_size
+ (const CChatRoomKickUserResponse *message)
+{
+ assert(message->descriptor == &cchat_room__kick_user__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__kick_user__response__pack
+ (const CChatRoomKickUserResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__kick_user__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__kick_user__response__pack_to_buffer
+ (const CChatRoomKickUserResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__kick_user__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomKickUserResponse *
+ cchat_room__kick_user__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomKickUserResponse *)
+ protobuf_c_message_unpack (&cchat_room__kick_user__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__kick_user__response__free_unpacked
+ (CChatRoomKickUserResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__kick_user__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_user_ban_state__request__get_packed_size
+ (const CChatRoomSetUserBanStateRequest *message)
+{
+ assert(message->descriptor == &cchat_room__set_user_ban_state__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_user_ban_state__request__pack
+ (const CChatRoomSetUserBanStateRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_user_ban_state__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_user_ban_state__request__pack_to_buffer
+ (const CChatRoomSetUserBanStateRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_user_ban_state__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetUserBanStateRequest *
+ cchat_room__set_user_ban_state__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetUserBanStateRequest *)
+ protobuf_c_message_unpack (&cchat_room__set_user_ban_state__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_user_ban_state__request__free_unpacked
+ (CChatRoomSetUserBanStateRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_user_ban_state__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_user_ban_state__response__get_packed_size
+ (const CChatRoomSetUserBanStateResponse *message)
+{
+ assert(message->descriptor == &cchat_room__set_user_ban_state__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_user_ban_state__response__pack
+ (const CChatRoomSetUserBanStateResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_user_ban_state__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_user_ban_state__response__pack_to_buffer
+ (const CChatRoomSetUserBanStateResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_user_ban_state__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetUserBanStateResponse *
+ cchat_room__set_user_ban_state__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetUserBanStateResponse *)
+ protobuf_c_message_unpack (&cchat_room__set_user_ban_state__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_user_ban_state__response__free_unpacked
+ (CChatRoomSetUserBanStateResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_user_ban_state__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__revoke_invite__request__get_packed_size
+ (const CChatRoomRevokeInviteRequest *message)
+{
+ assert(message->descriptor == &cchat_room__revoke_invite__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__revoke_invite__request__pack
+ (const CChatRoomRevokeInviteRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__revoke_invite__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__revoke_invite__request__pack_to_buffer
+ (const CChatRoomRevokeInviteRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__revoke_invite__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomRevokeInviteRequest *
+ cchat_room__revoke_invite__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomRevokeInviteRequest *)
+ protobuf_c_message_unpack (&cchat_room__revoke_invite__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__revoke_invite__request__free_unpacked
+ (CChatRoomRevokeInviteRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__revoke_invite__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__revoke_invite__response__get_packed_size
+ (const CChatRoomRevokeInviteResponse *message)
+{
+ assert(message->descriptor == &cchat_room__revoke_invite__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__revoke_invite__response__pack
+ (const CChatRoomRevokeInviteResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__revoke_invite__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__revoke_invite__response__pack_to_buffer
+ (const CChatRoomRevokeInviteResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__revoke_invite__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomRevokeInviteResponse *
+ cchat_room__revoke_invite__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomRevokeInviteResponse *)
+ protobuf_c_message_unpack (&cchat_room__revoke_invite__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__revoke_invite__response__free_unpacked
+ (CChatRoomRevokeInviteResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__revoke_invite__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__create_role__request__get_packed_size
+ (const CChatRoomCreateRoleRequest *message)
+{
+ assert(message->descriptor == &cchat_room__create_role__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__create_role__request__pack
+ (const CChatRoomCreateRoleRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__create_role__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__create_role__request__pack_to_buffer
+ (const CChatRoomCreateRoleRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__create_role__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomCreateRoleRequest *
+ cchat_room__create_role__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomCreateRoleRequest *)
+ protobuf_c_message_unpack (&cchat_room__create_role__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__create_role__request__free_unpacked
+ (CChatRoomCreateRoleRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__create_role__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__create_role__response__get_packed_size
+ (const CChatRoomCreateRoleResponse *message)
+{
+ assert(message->descriptor == &cchat_room__create_role__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__create_role__response__pack
+ (const CChatRoomCreateRoleResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__create_role__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__create_role__response__pack_to_buffer
+ (const CChatRoomCreateRoleResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__create_role__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomCreateRoleResponse *
+ cchat_room__create_role__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomCreateRoleResponse *)
+ protobuf_c_message_unpack (&cchat_room__create_role__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__create_role__response__free_unpacked
+ (CChatRoomCreateRoleResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__create_role__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_roles__request__get_packed_size
+ (const CChatRoomGetRolesRequest *message)
+{
+ assert(message->descriptor == &cchat_room__get_roles__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_roles__request__pack
+ (const CChatRoomGetRolesRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_roles__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_roles__request__pack_to_buffer
+ (const CChatRoomGetRolesRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_roles__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetRolesRequest *
+ cchat_room__get_roles__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetRolesRequest *)
+ protobuf_c_message_unpack (&cchat_room__get_roles__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_roles__request__free_unpacked
+ (CChatRoomGetRolesRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_roles__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_roles__response__get_packed_size
+ (const CChatRoomGetRolesResponse *message)
+{
+ assert(message->descriptor == &cchat_room__get_roles__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_roles__response__pack
+ (const CChatRoomGetRolesResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_roles__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_roles__response__pack_to_buffer
+ (const CChatRoomGetRolesResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_roles__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetRolesResponse *
+ cchat_room__get_roles__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetRolesResponse *)
+ protobuf_c_message_unpack (&cchat_room__get_roles__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_roles__response__free_unpacked
+ (CChatRoomGetRolesResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_roles__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__rename_role__request__get_packed_size
+ (const CChatRoomRenameRoleRequest *message)
+{
+ assert(message->descriptor == &cchat_room__rename_role__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__rename_role__request__pack
+ (const CChatRoomRenameRoleRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__rename_role__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__rename_role__request__pack_to_buffer
+ (const CChatRoomRenameRoleRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__rename_role__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomRenameRoleRequest *
+ cchat_room__rename_role__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomRenameRoleRequest *)
+ protobuf_c_message_unpack (&cchat_room__rename_role__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__rename_role__request__free_unpacked
+ (CChatRoomRenameRoleRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__rename_role__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__rename_role__response__get_packed_size
+ (const CChatRoomRenameRoleResponse *message)
+{
+ assert(message->descriptor == &cchat_room__rename_role__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__rename_role__response__pack
+ (const CChatRoomRenameRoleResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__rename_role__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__rename_role__response__pack_to_buffer
+ (const CChatRoomRenameRoleResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__rename_role__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomRenameRoleResponse *
+ cchat_room__rename_role__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomRenameRoleResponse *)
+ protobuf_c_message_unpack (&cchat_room__rename_role__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__rename_role__response__free_unpacked
+ (CChatRoomRenameRoleResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__rename_role__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__reorder_role__request__get_packed_size
+ (const CChatRoomReorderRoleRequest *message)
+{
+ assert(message->descriptor == &cchat_room__reorder_role__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__reorder_role__request__pack
+ (const CChatRoomReorderRoleRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__reorder_role__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__reorder_role__request__pack_to_buffer
+ (const CChatRoomReorderRoleRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__reorder_role__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomReorderRoleRequest *
+ cchat_room__reorder_role__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomReorderRoleRequest *)
+ protobuf_c_message_unpack (&cchat_room__reorder_role__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__reorder_role__request__free_unpacked
+ (CChatRoomReorderRoleRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__reorder_role__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__reorder_role__response__get_packed_size
+ (const CChatRoomReorderRoleResponse *message)
+{
+ assert(message->descriptor == &cchat_room__reorder_role__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__reorder_role__response__pack
+ (const CChatRoomReorderRoleResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__reorder_role__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__reorder_role__response__pack_to_buffer
+ (const CChatRoomReorderRoleResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__reorder_role__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomReorderRoleResponse *
+ cchat_room__reorder_role__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomReorderRoleResponse *)
+ protobuf_c_message_unpack (&cchat_room__reorder_role__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__reorder_role__response__free_unpacked
+ (CChatRoomReorderRoleResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__reorder_role__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__delete_role__request__get_packed_size
+ (const CChatRoomDeleteRoleRequest *message)
+{
+ assert(message->descriptor == &cchat_room__delete_role__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__delete_role__request__pack
+ (const CChatRoomDeleteRoleRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__delete_role__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__delete_role__request__pack_to_buffer
+ (const CChatRoomDeleteRoleRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__delete_role__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomDeleteRoleRequest *
+ cchat_room__delete_role__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomDeleteRoleRequest *)
+ protobuf_c_message_unpack (&cchat_room__delete_role__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__delete_role__request__free_unpacked
+ (CChatRoomDeleteRoleRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__delete_role__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__delete_role__response__get_packed_size
+ (const CChatRoomDeleteRoleResponse *message)
+{
+ assert(message->descriptor == &cchat_room__delete_role__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__delete_role__response__pack
+ (const CChatRoomDeleteRoleResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__delete_role__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__delete_role__response__pack_to_buffer
+ (const CChatRoomDeleteRoleResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__delete_role__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomDeleteRoleResponse *
+ cchat_room__delete_role__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomDeleteRoleResponse *)
+ protobuf_c_message_unpack (&cchat_room__delete_role__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__delete_role__response__free_unpacked
+ (CChatRoomDeleteRoleResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__delete_role__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_role_actions__request__get_packed_size
+ (const CChatRoomGetRoleActionsRequest *message)
+{
+ assert(message->descriptor == &cchat_room__get_role_actions__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_role_actions__request__pack
+ (const CChatRoomGetRoleActionsRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_role_actions__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_role_actions__request__pack_to_buffer
+ (const CChatRoomGetRoleActionsRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_role_actions__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetRoleActionsRequest *
+ cchat_room__get_role_actions__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetRoleActionsRequest *)
+ protobuf_c_message_unpack (&cchat_room__get_role_actions__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_role_actions__request__free_unpacked
+ (CChatRoomGetRoleActionsRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_role_actions__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_role_actions__response__get_packed_size
+ (const CChatRoomGetRoleActionsResponse *message)
+{
+ assert(message->descriptor == &cchat_room__get_role_actions__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_role_actions__response__pack
+ (const CChatRoomGetRoleActionsResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_role_actions__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_role_actions__response__pack_to_buffer
+ (const CChatRoomGetRoleActionsResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_role_actions__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetRoleActionsResponse *
+ cchat_room__get_role_actions__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetRoleActionsResponse *)
+ protobuf_c_message_unpack (&cchat_room__get_role_actions__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_role_actions__response__free_unpacked
+ (CChatRoomGetRoleActionsResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_role_actions__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__replace_role_actions__request__get_packed_size
+ (const CChatRoomReplaceRoleActionsRequest *message)
+{
+ assert(message->descriptor == &cchat_room__replace_role_actions__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__replace_role_actions__request__pack
+ (const CChatRoomReplaceRoleActionsRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__replace_role_actions__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__replace_role_actions__request__pack_to_buffer
+ (const CChatRoomReplaceRoleActionsRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__replace_role_actions__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomReplaceRoleActionsRequest *
+ cchat_room__replace_role_actions__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomReplaceRoleActionsRequest *)
+ protobuf_c_message_unpack (&cchat_room__replace_role_actions__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__replace_role_actions__request__free_unpacked
+ (CChatRoomReplaceRoleActionsRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__replace_role_actions__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__replace_role_actions__response__get_packed_size
+ (const CChatRoomReplaceRoleActionsResponse *message)
+{
+ assert(message->descriptor == &cchat_room__replace_role_actions__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__replace_role_actions__response__pack
+ (const CChatRoomReplaceRoleActionsResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__replace_role_actions__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__replace_role_actions__response__pack_to_buffer
+ (const CChatRoomReplaceRoleActionsResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__replace_role_actions__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomReplaceRoleActionsResponse *
+ cchat_room__replace_role_actions__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomReplaceRoleActionsResponse *)
+ protobuf_c_message_unpack (&cchat_room__replace_role_actions__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__replace_role_actions__response__free_unpacked
+ (CChatRoomReplaceRoleActionsResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__replace_role_actions__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__add_role_to_user__request__get_packed_size
+ (const CChatRoomAddRoleToUserRequest *message)
+{
+ assert(message->descriptor == &cchat_room__add_role_to_user__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__add_role_to_user__request__pack
+ (const CChatRoomAddRoleToUserRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__add_role_to_user__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__add_role_to_user__request__pack_to_buffer
+ (const CChatRoomAddRoleToUserRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__add_role_to_user__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomAddRoleToUserRequest *
+ cchat_room__add_role_to_user__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomAddRoleToUserRequest *)
+ protobuf_c_message_unpack (&cchat_room__add_role_to_user__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__add_role_to_user__request__free_unpacked
+ (CChatRoomAddRoleToUserRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__add_role_to_user__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__add_role_to_user__response__get_packed_size
+ (const CChatRoomAddRoleToUserResponse *message)
+{
+ assert(message->descriptor == &cchat_room__add_role_to_user__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__add_role_to_user__response__pack
+ (const CChatRoomAddRoleToUserResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__add_role_to_user__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__add_role_to_user__response__pack_to_buffer
+ (const CChatRoomAddRoleToUserResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__add_role_to_user__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomAddRoleToUserResponse *
+ cchat_room__add_role_to_user__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomAddRoleToUserResponse *)
+ protobuf_c_message_unpack (&cchat_room__add_role_to_user__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__add_role_to_user__response__free_unpacked
+ (CChatRoomAddRoleToUserResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__add_role_to_user__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_roles_for_user__request__get_packed_size
+ (const CChatRoomGetRolesForUserRequest *message)
+{
+ assert(message->descriptor == &cchat_room__get_roles_for_user__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_roles_for_user__request__pack
+ (const CChatRoomGetRolesForUserRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_roles_for_user__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_roles_for_user__request__pack_to_buffer
+ (const CChatRoomGetRolesForUserRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_roles_for_user__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetRolesForUserRequest *
+ cchat_room__get_roles_for_user__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetRolesForUserRequest *)
+ protobuf_c_message_unpack (&cchat_room__get_roles_for_user__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_roles_for_user__request__free_unpacked
+ (CChatRoomGetRolesForUserRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_roles_for_user__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_roles_for_user__response__get_packed_size
+ (const CChatRoomGetRolesForUserResponse *message)
+{
+ assert(message->descriptor == &cchat_room__get_roles_for_user__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_roles_for_user__response__pack
+ (const CChatRoomGetRolesForUserResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_roles_for_user__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_roles_for_user__response__pack_to_buffer
+ (const CChatRoomGetRolesForUserResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_roles_for_user__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetRolesForUserResponse *
+ cchat_room__get_roles_for_user__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetRolesForUserResponse *)
+ protobuf_c_message_unpack (&cchat_room__get_roles_for_user__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_roles_for_user__response__free_unpacked
+ (CChatRoomGetRolesForUserResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_roles_for_user__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__delete_role_from_user__request__get_packed_size
+ (const CChatRoomDeleteRoleFromUserRequest *message)
+{
+ assert(message->descriptor == &cchat_room__delete_role_from_user__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__delete_role_from_user__request__pack
+ (const CChatRoomDeleteRoleFromUserRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__delete_role_from_user__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__delete_role_from_user__request__pack_to_buffer
+ (const CChatRoomDeleteRoleFromUserRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__delete_role_from_user__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomDeleteRoleFromUserRequest *
+ cchat_room__delete_role_from_user__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomDeleteRoleFromUserRequest *)
+ protobuf_c_message_unpack (&cchat_room__delete_role_from_user__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__delete_role_from_user__request__free_unpacked
+ (CChatRoomDeleteRoleFromUserRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__delete_role_from_user__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__delete_role_from_user__response__get_packed_size
+ (const CChatRoomDeleteRoleFromUserResponse *message)
+{
+ assert(message->descriptor == &cchat_room__delete_role_from_user__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__delete_role_from_user__response__pack
+ (const CChatRoomDeleteRoleFromUserResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__delete_role_from_user__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__delete_role_from_user__response__pack_to_buffer
+ (const CChatRoomDeleteRoleFromUserResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__delete_role_from_user__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomDeleteRoleFromUserResponse *
+ cchat_room__delete_role_from_user__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomDeleteRoleFromUserResponse *)
+ protobuf_c_message_unpack (&cchat_room__delete_role_from_user__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__delete_role_from_user__response__free_unpacked
+ (CChatRoomDeleteRoleFromUserResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__delete_role_from_user__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__join_chat_room_group__request__get_packed_size
+ (const CChatRoomJoinChatRoomGroupRequest *message)
+{
+ assert(message->descriptor == &cchat_room__join_chat_room_group__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__join_chat_room_group__request__pack
+ (const CChatRoomJoinChatRoomGroupRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__join_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__join_chat_room_group__request__pack_to_buffer
+ (const CChatRoomJoinChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__join_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomJoinChatRoomGroupRequest *
+ cchat_room__join_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomJoinChatRoomGroupRequest *)
+ protobuf_c_message_unpack (&cchat_room__join_chat_room_group__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__join_chat_room_group__request__free_unpacked
+ (CChatRoomJoinChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__join_chat_room_group__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__join_chat_room_group__response__get_packed_size
+ (const CChatRoomJoinChatRoomGroupResponse *message)
+{
+ assert(message->descriptor == &cchat_room__join_chat_room_group__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__join_chat_room_group__response__pack
+ (const CChatRoomJoinChatRoomGroupResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__join_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__join_chat_room_group__response__pack_to_buffer
+ (const CChatRoomJoinChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__join_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomJoinChatRoomGroupResponse *
+ cchat_room__join_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomJoinChatRoomGroupResponse *)
+ protobuf_c_message_unpack (&cchat_room__join_chat_room_group__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__join_chat_room_group__response__free_unpacked
+ (CChatRoomJoinChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__join_chat_room_group__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__invite_friend_to_chat_room_group__request__get_packed_size
+ (const CChatRoomInviteFriendToChatRoomGroupRequest *message)
+{
+ assert(message->descriptor == &cchat_room__invite_friend_to_chat_room_group__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__invite_friend_to_chat_room_group__request__pack
+ (const CChatRoomInviteFriendToChatRoomGroupRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__invite_friend_to_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__invite_friend_to_chat_room_group__request__pack_to_buffer
+ (const CChatRoomInviteFriendToChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__invite_friend_to_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomInviteFriendToChatRoomGroupRequest *
+ cchat_room__invite_friend_to_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomInviteFriendToChatRoomGroupRequest *)
+ protobuf_c_message_unpack (&cchat_room__invite_friend_to_chat_room_group__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__invite_friend_to_chat_room_group__request__free_unpacked
+ (CChatRoomInviteFriendToChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__invite_friend_to_chat_room_group__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__invite_friend_to_chat_room_group__response__get_packed_size
+ (const CChatRoomInviteFriendToChatRoomGroupResponse *message)
+{
+ assert(message->descriptor == &cchat_room__invite_friend_to_chat_room_group__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__invite_friend_to_chat_room_group__response__pack
+ (const CChatRoomInviteFriendToChatRoomGroupResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__invite_friend_to_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__invite_friend_to_chat_room_group__response__pack_to_buffer
+ (const CChatRoomInviteFriendToChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__invite_friend_to_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomInviteFriendToChatRoomGroupResponse *
+ cchat_room__invite_friend_to_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomInviteFriendToChatRoomGroupResponse *)
+ protobuf_c_message_unpack (&cchat_room__invite_friend_to_chat_room_group__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__invite_friend_to_chat_room_group__response__free_unpacked
+ (CChatRoomInviteFriendToChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__invite_friend_to_chat_room_group__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__leave_chat_room_group__request__get_packed_size
+ (const CChatRoomLeaveChatRoomGroupRequest *message)
+{
+ assert(message->descriptor == &cchat_room__leave_chat_room_group__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__leave_chat_room_group__request__pack
+ (const CChatRoomLeaveChatRoomGroupRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__leave_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__leave_chat_room_group__request__pack_to_buffer
+ (const CChatRoomLeaveChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__leave_chat_room_group__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomLeaveChatRoomGroupRequest *
+ cchat_room__leave_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomLeaveChatRoomGroupRequest *)
+ protobuf_c_message_unpack (&cchat_room__leave_chat_room_group__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__leave_chat_room_group__request__free_unpacked
+ (CChatRoomLeaveChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__leave_chat_room_group__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__leave_chat_room_group__response__get_packed_size
+ (const CChatRoomLeaveChatRoomGroupResponse *message)
+{
+ assert(message->descriptor == &cchat_room__leave_chat_room_group__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__leave_chat_room_group__response__pack
+ (const CChatRoomLeaveChatRoomGroupResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__leave_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__leave_chat_room_group__response__pack_to_buffer
+ (const CChatRoomLeaveChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__leave_chat_room_group__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomLeaveChatRoomGroupResponse *
+ cchat_room__leave_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomLeaveChatRoomGroupResponse *)
+ protobuf_c_message_unpack (&cchat_room__leave_chat_room_group__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__leave_chat_room_group__response__free_unpacked
+ (CChatRoomLeaveChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__leave_chat_room_group__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__create_chat_room__request__get_packed_size
+ (const CChatRoomCreateChatRoomRequest *message)
+{
+ assert(message->descriptor == &cchat_room__create_chat_room__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__create_chat_room__request__pack
+ (const CChatRoomCreateChatRoomRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__create_chat_room__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__create_chat_room__request__pack_to_buffer
+ (const CChatRoomCreateChatRoomRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__create_chat_room__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomCreateChatRoomRequest *
+ cchat_room__create_chat_room__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomCreateChatRoomRequest *)
+ protobuf_c_message_unpack (&cchat_room__create_chat_room__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__create_chat_room__request__free_unpacked
+ (CChatRoomCreateChatRoomRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__create_chat_room__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__create_chat_room__response__get_packed_size
+ (const CChatRoomCreateChatRoomResponse *message)
+{
+ assert(message->descriptor == &cchat_room__create_chat_room__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__create_chat_room__response__pack
+ (const CChatRoomCreateChatRoomResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__create_chat_room__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__create_chat_room__response__pack_to_buffer
+ (const CChatRoomCreateChatRoomResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__create_chat_room__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomCreateChatRoomResponse *
+ cchat_room__create_chat_room__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomCreateChatRoomResponse *)
+ protobuf_c_message_unpack (&cchat_room__create_chat_room__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__create_chat_room__response__free_unpacked
+ (CChatRoomCreateChatRoomResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__create_chat_room__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__delete_chat_room__request__get_packed_size
+ (const CChatRoomDeleteChatRoomRequest *message)
+{
+ assert(message->descriptor == &cchat_room__delete_chat_room__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__delete_chat_room__request__pack
+ (const CChatRoomDeleteChatRoomRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__delete_chat_room__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__delete_chat_room__request__pack_to_buffer
+ (const CChatRoomDeleteChatRoomRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__delete_chat_room__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomDeleteChatRoomRequest *
+ cchat_room__delete_chat_room__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomDeleteChatRoomRequest *)
+ protobuf_c_message_unpack (&cchat_room__delete_chat_room__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__delete_chat_room__request__free_unpacked
+ (CChatRoomDeleteChatRoomRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__delete_chat_room__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__delete_chat_room__response__get_packed_size
+ (const CChatRoomDeleteChatRoomResponse *message)
+{
+ assert(message->descriptor == &cchat_room__delete_chat_room__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__delete_chat_room__response__pack
+ (const CChatRoomDeleteChatRoomResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__delete_chat_room__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__delete_chat_room__response__pack_to_buffer
+ (const CChatRoomDeleteChatRoomResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__delete_chat_room__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomDeleteChatRoomResponse *
+ cchat_room__delete_chat_room__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomDeleteChatRoomResponse *)
+ protobuf_c_message_unpack (&cchat_room__delete_chat_room__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__delete_chat_room__response__free_unpacked
+ (CChatRoomDeleteChatRoomResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__delete_chat_room__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__rename_chat_room__request__get_packed_size
+ (const CChatRoomRenameChatRoomRequest *message)
+{
+ assert(message->descriptor == &cchat_room__rename_chat_room__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__rename_chat_room__request__pack
+ (const CChatRoomRenameChatRoomRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__rename_chat_room__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__rename_chat_room__request__pack_to_buffer
+ (const CChatRoomRenameChatRoomRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__rename_chat_room__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomRenameChatRoomRequest *
+ cchat_room__rename_chat_room__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomRenameChatRoomRequest *)
+ protobuf_c_message_unpack (&cchat_room__rename_chat_room__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__rename_chat_room__request__free_unpacked
+ (CChatRoomRenameChatRoomRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__rename_chat_room__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__rename_chat_room__response__get_packed_size
+ (const CChatRoomRenameChatRoomResponse *message)
+{
+ assert(message->descriptor == &cchat_room__rename_chat_room__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__rename_chat_room__response__pack
+ (const CChatRoomRenameChatRoomResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__rename_chat_room__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__rename_chat_room__response__pack_to_buffer
+ (const CChatRoomRenameChatRoomResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__rename_chat_room__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomRenameChatRoomResponse *
+ cchat_room__rename_chat_room__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomRenameChatRoomResponse *)
+ protobuf_c_message_unpack (&cchat_room__rename_chat_room__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__rename_chat_room__response__free_unpacked
+ (CChatRoomRenameChatRoomResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__rename_chat_room__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__reorder_chat_room__request__get_packed_size
+ (const CChatRoomReorderChatRoomRequest *message)
+{
+ assert(message->descriptor == &cchat_room__reorder_chat_room__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__reorder_chat_room__request__pack
+ (const CChatRoomReorderChatRoomRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__reorder_chat_room__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__reorder_chat_room__request__pack_to_buffer
+ (const CChatRoomReorderChatRoomRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__reorder_chat_room__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomReorderChatRoomRequest *
+ cchat_room__reorder_chat_room__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomReorderChatRoomRequest *)
+ protobuf_c_message_unpack (&cchat_room__reorder_chat_room__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__reorder_chat_room__request__free_unpacked
+ (CChatRoomReorderChatRoomRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__reorder_chat_room__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__reorder_chat_room__response__get_packed_size
+ (const CChatRoomReorderChatRoomResponse *message)
+{
+ assert(message->descriptor == &cchat_room__reorder_chat_room__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__reorder_chat_room__response__pack
+ (const CChatRoomReorderChatRoomResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__reorder_chat_room__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__reorder_chat_room__response__pack_to_buffer
+ (const CChatRoomReorderChatRoomResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__reorder_chat_room__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomReorderChatRoomResponse *
+ cchat_room__reorder_chat_room__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomReorderChatRoomResponse *)
+ protobuf_c_message_unpack (&cchat_room__reorder_chat_room__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__reorder_chat_room__response__free_unpacked
+ (CChatRoomReorderChatRoomResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__reorder_chat_room__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__send_chat_message__request__get_packed_size
+ (const CChatRoomSendChatMessageRequest *message)
+{
+ assert(message->descriptor == &cchat_room__send_chat_message__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__send_chat_message__request__pack
+ (const CChatRoomSendChatMessageRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__send_chat_message__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__send_chat_message__request__pack_to_buffer
+ (const CChatRoomSendChatMessageRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__send_chat_message__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSendChatMessageRequest *
+ cchat_room__send_chat_message__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSendChatMessageRequest *)
+ protobuf_c_message_unpack (&cchat_room__send_chat_message__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__send_chat_message__request__free_unpacked
+ (CChatRoomSendChatMessageRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__send_chat_message__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__send_chat_message__response__get_packed_size
+ (const CChatRoomSendChatMessageResponse *message)
+{
+ assert(message->descriptor == &cchat_room__send_chat_message__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__send_chat_message__response__pack
+ (const CChatRoomSendChatMessageResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__send_chat_message__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__send_chat_message__response__pack_to_buffer
+ (const CChatRoomSendChatMessageResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__send_chat_message__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSendChatMessageResponse *
+ cchat_room__send_chat_message__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSendChatMessageResponse *)
+ protobuf_c_message_unpack (&cchat_room__send_chat_message__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__send_chat_message__response__free_unpacked
+ (CChatRoomSendChatMessageResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__send_chat_message__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__join_voice_chat__request__get_packed_size
+ (const CChatRoomJoinVoiceChatRequest *message)
+{
+ assert(message->descriptor == &cchat_room__join_voice_chat__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__join_voice_chat__request__pack
+ (const CChatRoomJoinVoiceChatRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__join_voice_chat__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__join_voice_chat__request__pack_to_buffer
+ (const CChatRoomJoinVoiceChatRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__join_voice_chat__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomJoinVoiceChatRequest *
+ cchat_room__join_voice_chat__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomJoinVoiceChatRequest *)
+ protobuf_c_message_unpack (&cchat_room__join_voice_chat__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__join_voice_chat__request__free_unpacked
+ (CChatRoomJoinVoiceChatRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__join_voice_chat__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__join_voice_chat__response__get_packed_size
+ (const CChatRoomJoinVoiceChatResponse *message)
+{
+ assert(message->descriptor == &cchat_room__join_voice_chat__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__join_voice_chat__response__pack
+ (const CChatRoomJoinVoiceChatResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__join_voice_chat__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__join_voice_chat__response__pack_to_buffer
+ (const CChatRoomJoinVoiceChatResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__join_voice_chat__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomJoinVoiceChatResponse *
+ cchat_room__join_voice_chat__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomJoinVoiceChatResponse *)
+ protobuf_c_message_unpack (&cchat_room__join_voice_chat__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__join_voice_chat__response__free_unpacked
+ (CChatRoomJoinVoiceChatResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__join_voice_chat__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__leave_voice_chat__request__get_packed_size
+ (const CChatRoomLeaveVoiceChatRequest *message)
+{
+ assert(message->descriptor == &cchat_room__leave_voice_chat__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__leave_voice_chat__request__pack
+ (const CChatRoomLeaveVoiceChatRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__leave_voice_chat__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__leave_voice_chat__request__pack_to_buffer
+ (const CChatRoomLeaveVoiceChatRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__leave_voice_chat__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomLeaveVoiceChatRequest *
+ cchat_room__leave_voice_chat__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomLeaveVoiceChatRequest *)
+ protobuf_c_message_unpack (&cchat_room__leave_voice_chat__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__leave_voice_chat__request__free_unpacked
+ (CChatRoomLeaveVoiceChatRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__leave_voice_chat__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__leave_voice_chat__response__get_packed_size
+ (const CChatRoomLeaveVoiceChatResponse *message)
+{
+ assert(message->descriptor == &cchat_room__leave_voice_chat__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__leave_voice_chat__response__pack
+ (const CChatRoomLeaveVoiceChatResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__leave_voice_chat__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__leave_voice_chat__response__pack_to_buffer
+ (const CChatRoomLeaveVoiceChatResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__leave_voice_chat__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomLeaveVoiceChatResponse *
+ cchat_room__leave_voice_chat__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomLeaveVoiceChatResponse *)
+ protobuf_c_message_unpack (&cchat_room__leave_voice_chat__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__leave_voice_chat__response__free_unpacked
+ (CChatRoomLeaveVoiceChatResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__leave_voice_chat__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_message_history__request__get_packed_size
+ (const CChatRoomGetMessageHistoryRequest *message)
+{
+ assert(message->descriptor == &cchat_room__get_message_history__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_message_history__request__pack
+ (const CChatRoomGetMessageHistoryRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_message_history__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_message_history__request__pack_to_buffer
+ (const CChatRoomGetMessageHistoryRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_message_history__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetMessageHistoryRequest *
+ cchat_room__get_message_history__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetMessageHistoryRequest *)
+ protobuf_c_message_unpack (&cchat_room__get_message_history__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_message_history__request__free_unpacked
+ (CChatRoomGetMessageHistoryRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_message_history__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t server_message__get_packed_size
+ (const ServerMessage *message)
+{
+ assert(message->descriptor == &server_message__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t server_message__pack
+ (const ServerMessage *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &server_message__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t server_message__pack_to_buffer
+ (const ServerMessage *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &server_message__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ServerMessage *
+ server_message__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ServerMessage *)
+ protobuf_c_message_unpack (&server_message__descriptor,
+ allocator, len, data);
+}
+void server_message__free_unpacked
+ (ServerMessage *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &server_message__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_message_history__response__get_packed_size
+ (const CChatRoomGetMessageHistoryResponse *message)
+{
+ assert(message->descriptor == &cchat_room__get_message_history__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_message_history__response__pack
+ (const CChatRoomGetMessageHistoryResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_message_history__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_message_history__response__pack_to_buffer
+ (const CChatRoomGetMessageHistoryResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_message_history__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetMessageHistoryResponse *
+ cchat_room__get_message_history__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetMessageHistoryResponse *)
+ protobuf_c_message_unpack (&cchat_room__get_message_history__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_message_history__response__free_unpacked
+ (CChatRoomGetMessageHistoryResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_message_history__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_my_chat_room_groups__request__get_packed_size
+ (const CChatRoomGetMyChatRoomGroupsRequest *message)
+{
+ assert(message->descriptor == &cchat_room__get_my_chat_room_groups__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_my_chat_room_groups__request__pack
+ (const CChatRoomGetMyChatRoomGroupsRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_my_chat_room_groups__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_my_chat_room_groups__request__pack_to_buffer
+ (const CChatRoomGetMyChatRoomGroupsRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_my_chat_room_groups__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetMyChatRoomGroupsRequest *
+ cchat_room__get_my_chat_room_groups__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetMyChatRoomGroupsRequest *)
+ protobuf_c_message_unpack (&cchat_room__get_my_chat_room_groups__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_my_chat_room_groups__request__free_unpacked
+ (CChatRoomGetMyChatRoomGroupsRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_my_chat_room_groups__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_chat_room_group_summary__response__get_packed_size
+ (const CChatRoomGetChatRoomGroupSummaryResponse *message)
+{
+ assert(message->descriptor == &cchat_room__get_chat_room_group_summary__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_chat_room_group_summary__response__pack
+ (const CChatRoomGetChatRoomGroupSummaryResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_chat_room_group_summary__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_chat_room_group_summary__response__pack_to_buffer
+ (const CChatRoomGetChatRoomGroupSummaryResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_chat_room_group_summary__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetChatRoomGroupSummaryResponse *
+ cchat_room__get_chat_room_group_summary__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetChatRoomGroupSummaryResponse *)
+ protobuf_c_message_unpack (&cchat_room__get_chat_room_group_summary__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_chat_room_group_summary__response__free_unpacked
+ (CChatRoomGetChatRoomGroupSummaryResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_chat_room_group_summary__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room_summary_pair__get_packed_size
+ (const CChatRoomSummaryPair *message)
+{
+ assert(message->descriptor == &cchat_room_summary_pair__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room_summary_pair__pack
+ (const CChatRoomSummaryPair *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room_summary_pair__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room_summary_pair__pack_to_buffer
+ (const CChatRoomSummaryPair *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room_summary_pair__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSummaryPair *
+ cchat_room_summary_pair__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSummaryPair *)
+ protobuf_c_message_unpack (&cchat_room_summary_pair__descriptor,
+ allocator, len, data);
+}
+void cchat_room_summary_pair__free_unpacked
+ (CChatRoomSummaryPair *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room_summary_pair__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_my_chat_room_groups__response__get_packed_size
+ (const CChatRoomGetMyChatRoomGroupsResponse *message)
+{
+ assert(message->descriptor == &cchat_room__get_my_chat_room_groups__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_my_chat_room_groups__response__pack
+ (const CChatRoomGetMyChatRoomGroupsResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_my_chat_room_groups__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_my_chat_room_groups__response__pack_to_buffer
+ (const CChatRoomGetMyChatRoomGroupsResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_my_chat_room_groups__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetMyChatRoomGroupsResponse *
+ cchat_room__get_my_chat_room_groups__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetMyChatRoomGroupsResponse *)
+ protobuf_c_message_unpack (&cchat_room__get_my_chat_room_groups__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_my_chat_room_groups__response__free_unpacked
+ (CChatRoomGetMyChatRoomGroupsResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_my_chat_room_groups__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_chat_room_group_state__request__get_packed_size
+ (const CChatRoomGetChatRoomGroupStateRequest *message)
+{
+ assert(message->descriptor == &cchat_room__get_chat_room_group_state__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_chat_room_group_state__request__pack
+ (const CChatRoomGetChatRoomGroupStateRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_chat_room_group_state__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_chat_room_group_state__request__pack_to_buffer
+ (const CChatRoomGetChatRoomGroupStateRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_chat_room_group_state__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetChatRoomGroupStateRequest *
+ cchat_room__get_chat_room_group_state__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetChatRoomGroupStateRequest *)
+ protobuf_c_message_unpack (&cchat_room__get_chat_room_group_state__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_chat_room_group_state__request__free_unpacked
+ (CChatRoomGetChatRoomGroupStateRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_chat_room_group_state__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_chat_room_group_state__response__get_packed_size
+ (const CChatRoomGetChatRoomGroupStateResponse *message)
+{
+ assert(message->descriptor == &cchat_room__get_chat_room_group_state__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_chat_room_group_state__response__pack
+ (const CChatRoomGetChatRoomGroupStateResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_chat_room_group_state__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_chat_room_group_state__response__pack_to_buffer
+ (const CChatRoomGetChatRoomGroupStateResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_chat_room_group_state__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetChatRoomGroupStateResponse *
+ cchat_room__get_chat_room_group_state__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetChatRoomGroupStateResponse *)
+ protobuf_c_message_unpack (&cchat_room__get_chat_room_group_state__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_chat_room_group_state__response__free_unpacked
+ (CChatRoomGetChatRoomGroupStateResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_chat_room_group_state__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_chat_room_group_summary__request__get_packed_size
+ (const CChatRoomGetChatRoomGroupSummaryRequest *message)
+{
+ assert(message->descriptor == &cchat_room__get_chat_room_group_summary__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_chat_room_group_summary__request__pack
+ (const CChatRoomGetChatRoomGroupSummaryRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_chat_room_group_summary__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_chat_room_group_summary__request__pack_to_buffer
+ (const CChatRoomGetChatRoomGroupSummaryRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_chat_room_group_summary__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetChatRoomGroupSummaryRequest *
+ cchat_room__get_chat_room_group_summary__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetChatRoomGroupSummaryRequest *)
+ protobuf_c_message_unpack (&cchat_room__get_chat_room_group_summary__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_chat_room_group_summary__request__free_unpacked
+ (CChatRoomGetChatRoomGroupSummaryRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_chat_room_group_summary__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_app_chat_room_group_force_active__request__get_packed_size
+ (const CChatRoomSetAppChatRoomGroupForceActiveRequest *message)
+{
+ assert(message->descriptor == &cchat_room__set_app_chat_room_group_force_active__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_app_chat_room_group_force_active__request__pack
+ (const CChatRoomSetAppChatRoomGroupForceActiveRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_app_chat_room_group_force_active__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_app_chat_room_group_force_active__request__pack_to_buffer
+ (const CChatRoomSetAppChatRoomGroupForceActiveRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_app_chat_room_group_force_active__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetAppChatRoomGroupForceActiveRequest *
+ cchat_room__set_app_chat_room_group_force_active__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetAppChatRoomGroupForceActiveRequest *)
+ protobuf_c_message_unpack (&cchat_room__set_app_chat_room_group_force_active__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_app_chat_room_group_force_active__request__free_unpacked
+ (CChatRoomSetAppChatRoomGroupForceActiveRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_app_chat_room_group_force_active__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_app_chat_room_group_force_active__response__get_packed_size
+ (const CChatRoomSetAppChatRoomGroupForceActiveResponse *message)
+{
+ assert(message->descriptor == &cchat_room__set_app_chat_room_group_force_active__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_app_chat_room_group_force_active__response__pack
+ (const CChatRoomSetAppChatRoomGroupForceActiveResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_app_chat_room_group_force_active__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_app_chat_room_group_force_active__response__pack_to_buffer
+ (const CChatRoomSetAppChatRoomGroupForceActiveResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_app_chat_room_group_force_active__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetAppChatRoomGroupForceActiveResponse *
+ cchat_room__set_app_chat_room_group_force_active__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetAppChatRoomGroupForceActiveResponse *)
+ protobuf_c_message_unpack (&cchat_room__set_app_chat_room_group_force_active__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_app_chat_room_group_force_active__response__free_unpacked
+ (CChatRoomSetAppChatRoomGroupForceActiveResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_app_chat_room_group_force_active__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_app_chat_room_group_stop_force_active__notification__get_packed_size
+ (const CChatRoomSetAppChatRoomGroupStopForceActiveNotification *message)
+{
+ assert(message->descriptor == &cchat_room__set_app_chat_room_group_stop_force_active__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_app_chat_room_group_stop_force_active__notification__pack
+ (const CChatRoomSetAppChatRoomGroupStopForceActiveNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_app_chat_room_group_stop_force_active__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_app_chat_room_group_stop_force_active__notification__pack_to_buffer
+ (const CChatRoomSetAppChatRoomGroupStopForceActiveNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_app_chat_room_group_stop_force_active__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetAppChatRoomGroupStopForceActiveNotification *
+ cchat_room__set_app_chat_room_group_stop_force_active__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetAppChatRoomGroupStopForceActiveNotification *)
+ protobuf_c_message_unpack (&cchat_room__set_app_chat_room_group_stop_force_active__notification__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_app_chat_room_group_stop_force_active__notification__free_unpacked
+ (CChatRoomSetAppChatRoomGroupStopForceActiveNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_app_chat_room_group_stop_force_active__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__ack_chat_message__notification__get_packed_size
+ (const CChatRoomAckChatMessageNotification *message)
+{
+ assert(message->descriptor == &cchat_room__ack_chat_message__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__ack_chat_message__notification__pack
+ (const CChatRoomAckChatMessageNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__ack_chat_message__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__ack_chat_message__notification__pack_to_buffer
+ (const CChatRoomAckChatMessageNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__ack_chat_message__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomAckChatMessageNotification *
+ cchat_room__ack_chat_message__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomAckChatMessageNotification *)
+ protobuf_c_message_unpack (&cchat_room__ack_chat_message__notification__descriptor,
+ allocator, len, data);
+}
+void cchat_room__ack_chat_message__notification__free_unpacked
+ (CChatRoomAckChatMessageNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__ack_chat_message__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__create_invite_link__request__get_packed_size
+ (const CChatRoomCreateInviteLinkRequest *message)
+{
+ assert(message->descriptor == &cchat_room__create_invite_link__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__create_invite_link__request__pack
+ (const CChatRoomCreateInviteLinkRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__create_invite_link__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__create_invite_link__request__pack_to_buffer
+ (const CChatRoomCreateInviteLinkRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__create_invite_link__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomCreateInviteLinkRequest *
+ cchat_room__create_invite_link__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomCreateInviteLinkRequest *)
+ protobuf_c_message_unpack (&cchat_room__create_invite_link__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__create_invite_link__request__free_unpacked
+ (CChatRoomCreateInviteLinkRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__create_invite_link__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__create_invite_link__response__get_packed_size
+ (const CChatRoomCreateInviteLinkResponse *message)
+{
+ assert(message->descriptor == &cchat_room__create_invite_link__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__create_invite_link__response__pack
+ (const CChatRoomCreateInviteLinkResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__create_invite_link__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__create_invite_link__response__pack_to_buffer
+ (const CChatRoomCreateInviteLinkResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__create_invite_link__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomCreateInviteLinkResponse *
+ cchat_room__create_invite_link__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomCreateInviteLinkResponse *)
+ protobuf_c_message_unpack (&cchat_room__create_invite_link__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__create_invite_link__response__free_unpacked
+ (CChatRoomCreateInviteLinkResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__create_invite_link__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_invite_link_info__request__get_packed_size
+ (const CChatRoomGetInviteLinkInfoRequest *message)
+{
+ assert(message->descriptor == &cchat_room__get_invite_link_info__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_invite_link_info__request__pack
+ (const CChatRoomGetInviteLinkInfoRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_invite_link_info__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_invite_link_info__request__pack_to_buffer
+ (const CChatRoomGetInviteLinkInfoRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_invite_link_info__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetInviteLinkInfoRequest *
+ cchat_room__get_invite_link_info__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetInviteLinkInfoRequest *)
+ protobuf_c_message_unpack (&cchat_room__get_invite_link_info__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_invite_link_info__request__free_unpacked
+ (CChatRoomGetInviteLinkInfoRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_invite_link_info__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_invite_link_info__response__get_packed_size
+ (const CChatRoomGetInviteLinkInfoResponse *message)
+{
+ assert(message->descriptor == &cchat_room__get_invite_link_info__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_invite_link_info__response__pack
+ (const CChatRoomGetInviteLinkInfoResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_invite_link_info__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_invite_link_info__response__pack_to_buffer
+ (const CChatRoomGetInviteLinkInfoResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_invite_link_info__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetInviteLinkInfoResponse *
+ cchat_room__get_invite_link_info__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetInviteLinkInfoResponse *)
+ protobuf_c_message_unpack (&cchat_room__get_invite_link_info__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_invite_link_info__response__free_unpacked
+ (CChatRoomGetInviteLinkInfoResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_invite_link_info__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_invite_info__request__get_packed_size
+ (const CChatRoomGetInviteInfoRequest *message)
+{
+ assert(message->descriptor == &cchat_room__get_invite_info__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_invite_info__request__pack
+ (const CChatRoomGetInviteInfoRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_invite_info__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_invite_info__request__pack_to_buffer
+ (const CChatRoomGetInviteInfoRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_invite_info__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetInviteInfoRequest *
+ cchat_room__get_invite_info__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetInviteInfoRequest *)
+ protobuf_c_message_unpack (&cchat_room__get_invite_info__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_invite_info__request__free_unpacked
+ (CChatRoomGetInviteInfoRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_invite_info__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_invite_info__response__get_packed_size
+ (const CChatRoomGetInviteInfoResponse *message)
+{
+ assert(message->descriptor == &cchat_room__get_invite_info__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_invite_info__response__pack
+ (const CChatRoomGetInviteInfoResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_invite_info__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_invite_info__response__pack_to_buffer
+ (const CChatRoomGetInviteInfoResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_invite_info__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetInviteInfoResponse *
+ cchat_room__get_invite_info__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetInviteInfoResponse *)
+ protobuf_c_message_unpack (&cchat_room__get_invite_info__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_invite_info__response__free_unpacked
+ (CChatRoomGetInviteInfoResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_invite_info__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_invite_links_for_group__request__get_packed_size
+ (const CChatRoomGetInviteLinksForGroupRequest *message)
+{
+ assert(message->descriptor == &cchat_room__get_invite_links_for_group__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_invite_links_for_group__request__pack
+ (const CChatRoomGetInviteLinksForGroupRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_invite_links_for_group__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_invite_links_for_group__request__pack_to_buffer
+ (const CChatRoomGetInviteLinksForGroupRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_invite_links_for_group__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetInviteLinksForGroupRequest *
+ cchat_room__get_invite_links_for_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetInviteLinksForGroupRequest *)
+ protobuf_c_message_unpack (&cchat_room__get_invite_links_for_group__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_invite_links_for_group__request__free_unpacked
+ (CChatRoomGetInviteLinksForGroupRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_invite_links_for_group__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_invite_links_for_group__response__get_packed_size
+ (const CChatRoomGetInviteLinksForGroupResponse *message)
+{
+ assert(message->descriptor == &cchat_room__get_invite_links_for_group__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_invite_links_for_group__response__pack
+ (const CChatRoomGetInviteLinksForGroupResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_invite_links_for_group__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_invite_links_for_group__response__pack_to_buffer
+ (const CChatRoomGetInviteLinksForGroupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_invite_links_for_group__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetInviteLinksForGroupResponse *
+ cchat_room__get_invite_links_for_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetInviteLinksForGroupResponse *)
+ protobuf_c_message_unpack (&cchat_room__get_invite_links_for_group__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_invite_links_for_group__response__free_unpacked
+ (CChatRoomGetInviteLinksForGroupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_invite_links_for_group__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_ban_list__request__get_packed_size
+ (const CChatRoomGetBanListRequest *message)
+{
+ assert(message->descriptor == &cchat_room__get_ban_list__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_ban_list__request__pack
+ (const CChatRoomGetBanListRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_ban_list__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_ban_list__request__pack_to_buffer
+ (const CChatRoomGetBanListRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_ban_list__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetBanListRequest *
+ cchat_room__get_ban_list__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetBanListRequest *)
+ protobuf_c_message_unpack (&cchat_room__get_ban_list__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_ban_list__request__free_unpacked
+ (CChatRoomGetBanListRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_ban_list__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_ban_list__response__get_packed_size
+ (const CChatRoomGetBanListResponse *message)
+{
+ assert(message->descriptor == &cchat_room__get_ban_list__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_ban_list__response__pack
+ (const CChatRoomGetBanListResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_ban_list__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_ban_list__response__pack_to_buffer
+ (const CChatRoomGetBanListResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_ban_list__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetBanListResponse *
+ cchat_room__get_ban_list__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetBanListResponse *)
+ protobuf_c_message_unpack (&cchat_room__get_ban_list__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_ban_list__response__free_unpacked
+ (CChatRoomGetBanListResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_ban_list__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_invite_list__request__get_packed_size
+ (const CChatRoomGetInviteListRequest *message)
+{
+ assert(message->descriptor == &cchat_room__get_invite_list__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_invite_list__request__pack
+ (const CChatRoomGetInviteListRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_invite_list__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_invite_list__request__pack_to_buffer
+ (const CChatRoomGetInviteListRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_invite_list__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetInviteListRequest *
+ cchat_room__get_invite_list__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetInviteListRequest *)
+ protobuf_c_message_unpack (&cchat_room__get_invite_list__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_invite_list__request__free_unpacked
+ (CChatRoomGetInviteListRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_invite_list__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room_group_invite__get_packed_size
+ (const CChatRoomGroupInvite *message)
+{
+ assert(message->descriptor == &cchat_room_group_invite__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room_group_invite__pack
+ (const CChatRoomGroupInvite *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room_group_invite__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room_group_invite__pack_to_buffer
+ (const CChatRoomGroupInvite *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room_group_invite__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGroupInvite *
+ cchat_room_group_invite__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGroupInvite *)
+ protobuf_c_message_unpack (&cchat_room_group_invite__descriptor,
+ allocator, len, data);
+}
+void cchat_room_group_invite__free_unpacked
+ (CChatRoomGroupInvite *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room_group_invite__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_invite_list__response__get_packed_size
+ (const CChatRoomGetInviteListResponse *message)
+{
+ assert(message->descriptor == &cchat_room__get_invite_list__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_invite_list__response__pack
+ (const CChatRoomGetInviteListResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_invite_list__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_invite_list__response__pack_to_buffer
+ (const CChatRoomGetInviteListResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_invite_list__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetInviteListResponse *
+ cchat_room__get_invite_list__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetInviteListResponse *)
+ protobuf_c_message_unpack (&cchat_room__get_invite_list__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_invite_list__response__free_unpacked
+ (CChatRoomGetInviteListResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_invite_list__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__delete_invite_link__request__get_packed_size
+ (const CChatRoomDeleteInviteLinkRequest *message)
+{
+ assert(message->descriptor == &cchat_room__delete_invite_link__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__delete_invite_link__request__pack
+ (const CChatRoomDeleteInviteLinkRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__delete_invite_link__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__delete_invite_link__request__pack_to_buffer
+ (const CChatRoomDeleteInviteLinkRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__delete_invite_link__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomDeleteInviteLinkRequest *
+ cchat_room__delete_invite_link__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomDeleteInviteLinkRequest *)
+ protobuf_c_message_unpack (&cchat_room__delete_invite_link__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__delete_invite_link__request__free_unpacked
+ (CChatRoomDeleteInviteLinkRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__delete_invite_link__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__delete_invite_link__response__get_packed_size
+ (const CChatRoomDeleteInviteLinkResponse *message)
+{
+ assert(message->descriptor == &cchat_room__delete_invite_link__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__delete_invite_link__response__pack
+ (const CChatRoomDeleteInviteLinkResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__delete_invite_link__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__delete_invite_link__response__pack_to_buffer
+ (const CChatRoomDeleteInviteLinkResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__delete_invite_link__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomDeleteInviteLinkResponse *
+ cchat_room__delete_invite_link__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomDeleteInviteLinkResponse *)
+ protobuf_c_message_unpack (&cchat_room__delete_invite_link__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__delete_invite_link__response__free_unpacked
+ (CChatRoomDeleteInviteLinkResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__delete_invite_link__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_session_active_chat_room_groups__request__get_packed_size
+ (const CChatRoomSetSessionActiveChatRoomGroupsRequest *message)
+{
+ assert(message->descriptor == &cchat_room__set_session_active_chat_room_groups__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_session_active_chat_room_groups__request__pack
+ (const CChatRoomSetSessionActiveChatRoomGroupsRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_session_active_chat_room_groups__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_session_active_chat_room_groups__request__pack_to_buffer
+ (const CChatRoomSetSessionActiveChatRoomGroupsRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_session_active_chat_room_groups__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetSessionActiveChatRoomGroupsRequest *
+ cchat_room__set_session_active_chat_room_groups__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetSessionActiveChatRoomGroupsRequest *)
+ protobuf_c_message_unpack (&cchat_room__set_session_active_chat_room_groups__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_session_active_chat_room_groups__request__free_unpacked
+ (CChatRoomSetSessionActiveChatRoomGroupsRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_session_active_chat_room_groups__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_session_active_chat_room_groups__response__get_packed_size
+ (const CChatRoomSetSessionActiveChatRoomGroupsResponse *message)
+{
+ assert(message->descriptor == &cchat_room__set_session_active_chat_room_groups__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_session_active_chat_room_groups__response__pack
+ (const CChatRoomSetSessionActiveChatRoomGroupsResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_session_active_chat_room_groups__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_session_active_chat_room_groups__response__pack_to_buffer
+ (const CChatRoomSetSessionActiveChatRoomGroupsResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_session_active_chat_room_groups__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetSessionActiveChatRoomGroupsResponse *
+ cchat_room__set_session_active_chat_room_groups__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetSessionActiveChatRoomGroupsResponse *)
+ protobuf_c_message_unpack (&cchat_room__set_session_active_chat_room_groups__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_session_active_chat_room_groups__response__free_unpacked
+ (CChatRoomSetSessionActiveChatRoomGroupsResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_session_active_chat_room_groups__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_user_chat_group_preferences__request__get_packed_size
+ (const CChatRoomSetUserChatGroupPreferencesRequest *message)
+{
+ assert(message->descriptor == &cchat_room__set_user_chat_group_preferences__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_user_chat_group_preferences__request__pack
+ (const CChatRoomSetUserChatGroupPreferencesRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_user_chat_group_preferences__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_user_chat_group_preferences__request__pack_to_buffer
+ (const CChatRoomSetUserChatGroupPreferencesRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_user_chat_group_preferences__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetUserChatGroupPreferencesRequest *
+ cchat_room__set_user_chat_group_preferences__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetUserChatGroupPreferencesRequest *)
+ protobuf_c_message_unpack (&cchat_room__set_user_chat_group_preferences__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_user_chat_group_preferences__request__free_unpacked
+ (CChatRoomSetUserChatGroupPreferencesRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_user_chat_group_preferences__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__set_user_chat_group_preferences__response__get_packed_size
+ (const CChatRoomSetUserChatGroupPreferencesResponse *message)
+{
+ assert(message->descriptor == &cchat_room__set_user_chat_group_preferences__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__set_user_chat_group_preferences__response__pack
+ (const CChatRoomSetUserChatGroupPreferencesResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__set_user_chat_group_preferences__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__set_user_chat_group_preferences__response__pack_to_buffer
+ (const CChatRoomSetUserChatGroupPreferencesResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__set_user_chat_group_preferences__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSetUserChatGroupPreferencesResponse *
+ cchat_room__set_user_chat_group_preferences__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSetUserChatGroupPreferencesResponse *)
+ protobuf_c_message_unpack (&cchat_room__set_user_chat_group_preferences__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__set_user_chat_group_preferences__response__free_unpacked
+ (CChatRoomSetUserChatGroupPreferencesResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__set_user_chat_group_preferences__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__delete_chat_messages__request__get_packed_size
+ (const CChatRoomDeleteChatMessagesRequest *message)
+{
+ assert(message->descriptor == &cchat_room__delete_chat_messages__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__delete_chat_messages__request__pack
+ (const CChatRoomDeleteChatMessagesRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__delete_chat_messages__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__delete_chat_messages__request__pack_to_buffer
+ (const CChatRoomDeleteChatMessagesRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__delete_chat_messages__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomDeleteChatMessagesRequest *
+ cchat_room__delete_chat_messages__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomDeleteChatMessagesRequest *)
+ protobuf_c_message_unpack (&cchat_room__delete_chat_messages__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__delete_chat_messages__request__free_unpacked
+ (CChatRoomDeleteChatMessagesRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__delete_chat_messages__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__delete_chat_messages__response__get_packed_size
+ (const CChatRoomDeleteChatMessagesResponse *message)
+{
+ assert(message->descriptor == &cchat_room__delete_chat_messages__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__delete_chat_messages__response__pack
+ (const CChatRoomDeleteChatMessagesResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__delete_chat_messages__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__delete_chat_messages__response__pack_to_buffer
+ (const CChatRoomDeleteChatMessagesResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__delete_chat_messages__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomDeleteChatMessagesResponse *
+ cchat_room__delete_chat_messages__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomDeleteChatMessagesResponse *)
+ protobuf_c_message_unpack (&cchat_room__delete_chat_messages__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__delete_chat_messages__response__free_unpacked
+ (CChatRoomDeleteChatMessagesResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__delete_chat_messages__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__update_member_list_view__notification__get_packed_size
+ (const CChatRoomUpdateMemberListViewNotification *message)
+{
+ assert(message->descriptor == &cchat_room__update_member_list_view__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__update_member_list_view__notification__pack
+ (const CChatRoomUpdateMemberListViewNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__update_member_list_view__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__update_member_list_view__notification__pack_to_buffer
+ (const CChatRoomUpdateMemberListViewNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__update_member_list_view__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomUpdateMemberListViewNotification *
+ cchat_room__update_member_list_view__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomUpdateMemberListViewNotification *)
+ protobuf_c_message_unpack (&cchat_room__update_member_list_view__notification__descriptor,
+ allocator, len, data);
+}
+void cchat_room__update_member_list_view__notification__free_unpacked
+ (CChatRoomUpdateMemberListViewNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__update_member_list_view__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__search_members__request__get_packed_size
+ (const CChatRoomSearchMembersRequest *message)
+{
+ assert(message->descriptor == &cchat_room__search_members__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__search_members__request__pack
+ (const CChatRoomSearchMembersRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__search_members__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__search_members__request__pack_to_buffer
+ (const CChatRoomSearchMembersRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__search_members__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSearchMembersRequest *
+ cchat_room__search_members__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSearchMembersRequest *)
+ protobuf_c_message_unpack (&cchat_room__search_members__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__search_members__request__free_unpacked
+ (CChatRoomSearchMembersRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__search_members__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__search_members__response__get_packed_size
+ (const CChatRoomSearchMembersResponse *message)
+{
+ assert(message->descriptor == &cchat_room__search_members__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__search_members__response__pack
+ (const CChatRoomSearchMembersResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__search_members__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__search_members__response__pack_to_buffer
+ (const CChatRoomSearchMembersResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__search_members__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomSearchMembersResponse *
+ cchat_room__search_members__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomSearchMembersResponse *)
+ protobuf_c_message_unpack (&cchat_room__search_members__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__search_members__response__free_unpacked
+ (CChatRoomSearchMembersResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__search_members__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__update_message_reaction__request__get_packed_size
+ (const CChatRoomUpdateMessageReactionRequest *message)
+{
+ assert(message->descriptor == &cchat_room__update_message_reaction__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__update_message_reaction__request__pack
+ (const CChatRoomUpdateMessageReactionRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__update_message_reaction__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__update_message_reaction__request__pack_to_buffer
+ (const CChatRoomUpdateMessageReactionRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__update_message_reaction__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomUpdateMessageReactionRequest *
+ cchat_room__update_message_reaction__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomUpdateMessageReactionRequest *)
+ protobuf_c_message_unpack (&cchat_room__update_message_reaction__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__update_message_reaction__request__free_unpacked
+ (CChatRoomUpdateMessageReactionRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__update_message_reaction__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__update_message_reaction__response__get_packed_size
+ (const CChatRoomUpdateMessageReactionResponse *message)
+{
+ assert(message->descriptor == &cchat_room__update_message_reaction__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__update_message_reaction__response__pack
+ (const CChatRoomUpdateMessageReactionResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__update_message_reaction__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__update_message_reaction__response__pack_to_buffer
+ (const CChatRoomUpdateMessageReactionResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__update_message_reaction__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomUpdateMessageReactionResponse *
+ cchat_room__update_message_reaction__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomUpdateMessageReactionResponse *)
+ protobuf_c_message_unpack (&cchat_room__update_message_reaction__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__update_message_reaction__response__free_unpacked
+ (CChatRoomUpdateMessageReactionResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__update_message_reaction__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_message_reaction_reactors__request__get_packed_size
+ (const CChatRoomGetMessageReactionReactorsRequest *message)
+{
+ assert(message->descriptor == &cchat_room__get_message_reaction_reactors__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_message_reaction_reactors__request__pack
+ (const CChatRoomGetMessageReactionReactorsRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_message_reaction_reactors__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_message_reaction_reactors__request__pack_to_buffer
+ (const CChatRoomGetMessageReactionReactorsRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_message_reaction_reactors__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetMessageReactionReactorsRequest *
+ cchat_room__get_message_reaction_reactors__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetMessageReactionReactorsRequest *)
+ protobuf_c_message_unpack (&cchat_room__get_message_reaction_reactors__request__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_message_reaction_reactors__request__free_unpacked
+ (CChatRoomGetMessageReactionReactorsRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_message_reaction_reactors__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__get_message_reaction_reactors__response__get_packed_size
+ (const CChatRoomGetMessageReactionReactorsResponse *message)
+{
+ assert(message->descriptor == &cchat_room__get_message_reaction_reactors__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__get_message_reaction_reactors__response__pack
+ (const CChatRoomGetMessageReactionReactorsResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__get_message_reaction_reactors__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__get_message_reaction_reactors__response__pack_to_buffer
+ (const CChatRoomGetMessageReactionReactorsResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__get_message_reaction_reactors__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomGetMessageReactionReactorsResponse *
+ cchat_room__get_message_reaction_reactors__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomGetMessageReactionReactorsResponse *)
+ protobuf_c_message_unpack (&cchat_room__get_message_reaction_reactors__response__descriptor,
+ allocator, len, data);
+}
+void cchat_room__get_message_reaction_reactors__response__free_unpacked
+ (CChatRoomGetMessageReactionReactorsResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__get_message_reaction_reactors__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cclan_chat_rooms__get_clan_chat_room_info__request__get_packed_size
+ (const CClanChatRoomsGetClanChatRoomInfoRequest *message)
+{
+ assert(message->descriptor == &cclan_chat_rooms__get_clan_chat_room_info__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cclan_chat_rooms__get_clan_chat_room_info__request__pack
+ (const CClanChatRoomsGetClanChatRoomInfoRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cclan_chat_rooms__get_clan_chat_room_info__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cclan_chat_rooms__get_clan_chat_room_info__request__pack_to_buffer
+ (const CClanChatRoomsGetClanChatRoomInfoRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cclan_chat_rooms__get_clan_chat_room_info__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CClanChatRoomsGetClanChatRoomInfoRequest *
+ cclan_chat_rooms__get_clan_chat_room_info__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CClanChatRoomsGetClanChatRoomInfoRequest *)
+ protobuf_c_message_unpack (&cclan_chat_rooms__get_clan_chat_room_info__request__descriptor,
+ allocator, len, data);
+}
+void cclan_chat_rooms__get_clan_chat_room_info__request__free_unpacked
+ (CClanChatRoomsGetClanChatRoomInfoRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cclan_chat_rooms__get_clan_chat_room_info__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cclan_chat_rooms__get_clan_chat_room_info__response__get_packed_size
+ (const CClanChatRoomsGetClanChatRoomInfoResponse *message)
+{
+ assert(message->descriptor == &cclan_chat_rooms__get_clan_chat_room_info__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cclan_chat_rooms__get_clan_chat_room_info__response__pack
+ (const CClanChatRoomsGetClanChatRoomInfoResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cclan_chat_rooms__get_clan_chat_room_info__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cclan_chat_rooms__get_clan_chat_room_info__response__pack_to_buffer
+ (const CClanChatRoomsGetClanChatRoomInfoResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cclan_chat_rooms__get_clan_chat_room_info__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CClanChatRoomsGetClanChatRoomInfoResponse *
+ cclan_chat_rooms__get_clan_chat_room_info__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CClanChatRoomsGetClanChatRoomInfoResponse *)
+ protobuf_c_message_unpack (&cclan_chat_rooms__get_clan_chat_room_info__response__descriptor,
+ allocator, len, data);
+}
+void cclan_chat_rooms__get_clan_chat_room_info__response__free_unpacked
+ (CClanChatRoomsGetClanChatRoomInfoResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cclan_chat_rooms__get_clan_chat_room_info__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cclan_chat_rooms__set_clan_chat_room_private__request__get_packed_size
+ (const CClanChatRoomsSetClanChatRoomPrivateRequest *message)
+{
+ assert(message->descriptor == &cclan_chat_rooms__set_clan_chat_room_private__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cclan_chat_rooms__set_clan_chat_room_private__request__pack
+ (const CClanChatRoomsSetClanChatRoomPrivateRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cclan_chat_rooms__set_clan_chat_room_private__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cclan_chat_rooms__set_clan_chat_room_private__request__pack_to_buffer
+ (const CClanChatRoomsSetClanChatRoomPrivateRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cclan_chat_rooms__set_clan_chat_room_private__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CClanChatRoomsSetClanChatRoomPrivateRequest *
+ cclan_chat_rooms__set_clan_chat_room_private__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CClanChatRoomsSetClanChatRoomPrivateRequest *)
+ protobuf_c_message_unpack (&cclan_chat_rooms__set_clan_chat_room_private__request__descriptor,
+ allocator, len, data);
+}
+void cclan_chat_rooms__set_clan_chat_room_private__request__free_unpacked
+ (CClanChatRoomsSetClanChatRoomPrivateRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cclan_chat_rooms__set_clan_chat_room_private__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cclan_chat_rooms__set_clan_chat_room_private__response__get_packed_size
+ (const CClanChatRoomsSetClanChatRoomPrivateResponse *message)
+{
+ assert(message->descriptor == &cclan_chat_rooms__set_clan_chat_room_private__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cclan_chat_rooms__set_clan_chat_room_private__response__pack
+ (const CClanChatRoomsSetClanChatRoomPrivateResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cclan_chat_rooms__set_clan_chat_room_private__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cclan_chat_rooms__set_clan_chat_room_private__response__pack_to_buffer
+ (const CClanChatRoomsSetClanChatRoomPrivateResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cclan_chat_rooms__set_clan_chat_room_private__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CClanChatRoomsSetClanChatRoomPrivateResponse *
+ cclan_chat_rooms__set_clan_chat_room_private__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CClanChatRoomsSetClanChatRoomPrivateResponse *)
+ protobuf_c_message_unpack (&cclan_chat_rooms__set_clan_chat_room_private__response__descriptor,
+ allocator, len, data);
+}
+void cclan_chat_rooms__set_clan_chat_room_private__response__free_unpacked
+ (CClanChatRoomsSetClanChatRoomPrivateResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cclan_chat_rooms__set_clan_chat_room_private__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_mentions__get_packed_size
+ (const CChatMentions *message)
+{
+ assert(message->descriptor == &cchat_mentions__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_mentions__pack
+ (const CChatMentions *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_mentions__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_mentions__pack_to_buffer
+ (const CChatMentions *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_mentions__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatMentions *
+ cchat_mentions__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatMentions *)
+ protobuf_c_message_unpack (&cchat_mentions__descriptor,
+ allocator, len, data);
+}
+void cchat_mentions__free_unpacked
+ (CChatMentions *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_mentions__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__incoming_chat_message__notification__get_packed_size
+ (const CChatRoomIncomingChatMessageNotification *message)
+{
+ assert(message->descriptor == &cchat_room__incoming_chat_message__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__incoming_chat_message__notification__pack
+ (const CChatRoomIncomingChatMessageNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__incoming_chat_message__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__incoming_chat_message__notification__pack_to_buffer
+ (const CChatRoomIncomingChatMessageNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__incoming_chat_message__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomIncomingChatMessageNotification *
+ cchat_room__incoming_chat_message__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomIncomingChatMessageNotification *)
+ protobuf_c_message_unpack (&cchat_room__incoming_chat_message__notification__descriptor,
+ allocator, len, data);
+}
+void cchat_room__incoming_chat_message__notification__free_unpacked
+ (CChatRoomIncomingChatMessageNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__incoming_chat_message__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__chat_message_modified__notification__get_packed_size
+ (const CChatRoomChatMessageModifiedNotification *message)
+{
+ assert(message->descriptor == &cchat_room__chat_message_modified__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__chat_message_modified__notification__pack
+ (const CChatRoomChatMessageModifiedNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__chat_message_modified__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__chat_message_modified__notification__pack_to_buffer
+ (const CChatRoomChatMessageModifiedNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__chat_message_modified__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomChatMessageModifiedNotification *
+ cchat_room__chat_message_modified__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomChatMessageModifiedNotification *)
+ protobuf_c_message_unpack (&cchat_room__chat_message_modified__notification__descriptor,
+ allocator, len, data);
+}
+void cchat_room__chat_message_modified__notification__free_unpacked
+ (CChatRoomChatMessageModifiedNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__chat_message_modified__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__member_state_change__notification__get_packed_size
+ (const CChatRoomMemberStateChangeNotification *message)
+{
+ assert(message->descriptor == &cchat_room__member_state_change__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__member_state_change__notification__pack
+ (const CChatRoomMemberStateChangeNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__member_state_change__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__member_state_change__notification__pack_to_buffer
+ (const CChatRoomMemberStateChangeNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__member_state_change__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomMemberStateChangeNotification *
+ cchat_room__member_state_change__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomMemberStateChangeNotification *)
+ protobuf_c_message_unpack (&cchat_room__member_state_change__notification__descriptor,
+ allocator, len, data);
+}
+void cchat_room__member_state_change__notification__free_unpacked
+ (CChatRoomMemberStateChangeNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__member_state_change__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__chat_room_header_state__notification__get_packed_size
+ (const CChatRoomChatRoomHeaderStateNotification *message)
+{
+ assert(message->descriptor == &cchat_room__chat_room_header_state__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__chat_room_header_state__notification__pack
+ (const CChatRoomChatRoomHeaderStateNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__chat_room_header_state__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__chat_room_header_state__notification__pack_to_buffer
+ (const CChatRoomChatRoomHeaderStateNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__chat_room_header_state__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomChatRoomHeaderStateNotification *
+ cchat_room__chat_room_header_state__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomChatRoomHeaderStateNotification *)
+ protobuf_c_message_unpack (&cchat_room__chat_room_header_state__notification__descriptor,
+ allocator, len, data);
+}
+void cchat_room__chat_room_header_state__notification__free_unpacked
+ (CChatRoomChatRoomHeaderStateNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__chat_room_header_state__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__chat_room_group_rooms_change__notification__get_packed_size
+ (const CChatRoomChatRoomGroupRoomsChangeNotification *message)
+{
+ assert(message->descriptor == &cchat_room__chat_room_group_rooms_change__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__chat_room_group_rooms_change__notification__pack
+ (const CChatRoomChatRoomGroupRoomsChangeNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__chat_room_group_rooms_change__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__chat_room_group_rooms_change__notification__pack_to_buffer
+ (const CChatRoomChatRoomGroupRoomsChangeNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__chat_room_group_rooms_change__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomChatRoomGroupRoomsChangeNotification *
+ cchat_room__chat_room_group_rooms_change__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomChatRoomGroupRoomsChangeNotification *)
+ protobuf_c_message_unpack (&cchat_room__chat_room_group_rooms_change__notification__descriptor,
+ allocator, len, data);
+}
+void cchat_room__chat_room_group_rooms_change__notification__free_unpacked
+ (CChatRoomChatRoomGroupRoomsChangeNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__chat_room_group_rooms_change__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__get_packed_size
+ (const CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *message)
+{
+ assert(message->descriptor == &cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__pack
+ (const CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__pack_to_buffer
+ (const CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *
+ cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *)
+ protobuf_c_message_unpack (&cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__descriptor,
+ allocator, len, data);
+}
+void cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__free_unpacked
+ (CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t chat_room_client__notify_chat_group_user_state_changed__notification__get_packed_size
+ (const ChatRoomClientNotifyChatGroupUserStateChangedNotification *message)
+{
+ assert(message->descriptor == &chat_room_client__notify_chat_group_user_state_changed__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t chat_room_client__notify_chat_group_user_state_changed__notification__pack
+ (const ChatRoomClientNotifyChatGroupUserStateChangedNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &chat_room_client__notify_chat_group_user_state_changed__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t chat_room_client__notify_chat_group_user_state_changed__notification__pack_to_buffer
+ (const ChatRoomClientNotifyChatGroupUserStateChangedNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &chat_room_client__notify_chat_group_user_state_changed__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ChatRoomClientNotifyChatGroupUserStateChangedNotification *
+ chat_room_client__notify_chat_group_user_state_changed__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ChatRoomClientNotifyChatGroupUserStateChangedNotification *)
+ protobuf_c_message_unpack (&chat_room_client__notify_chat_group_user_state_changed__notification__descriptor,
+ allocator, len, data);
+}
+void chat_room_client__notify_chat_group_user_state_changed__notification__free_unpacked
+ (ChatRoomClientNotifyChatGroupUserStateChangedNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &chat_room_client__notify_chat_group_user_state_changed__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t chat_room_client__notify_chat_room_disconnect__notification__get_packed_size
+ (const ChatRoomClientNotifyChatRoomDisconnectNotification *message)
+{
+ assert(message->descriptor == &chat_room_client__notify_chat_room_disconnect__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t chat_room_client__notify_chat_room_disconnect__notification__pack
+ (const ChatRoomClientNotifyChatRoomDisconnectNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &chat_room_client__notify_chat_room_disconnect__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t chat_room_client__notify_chat_room_disconnect__notification__pack_to_buffer
+ (const ChatRoomClientNotifyChatRoomDisconnectNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &chat_room_client__notify_chat_room_disconnect__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ChatRoomClientNotifyChatRoomDisconnectNotification *
+ chat_room_client__notify_chat_room_disconnect__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ChatRoomClientNotifyChatRoomDisconnectNotification *)
+ protobuf_c_message_unpack (&chat_room_client__notify_chat_room_disconnect__notification__descriptor,
+ allocator, len, data);
+}
+void chat_room_client__notify_chat_room_disconnect__notification__free_unpacked
+ (ChatRoomClientNotifyChatRoomDisconnectNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &chat_room_client__notify_chat_room_disconnect__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room_member_list_view__get_packed_size
+ (const CChatRoomMemberListView *message)
+{
+ assert(message->descriptor == &cchat_room_member_list_view__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room_member_list_view__pack
+ (const CChatRoomMemberListView *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room_member_list_view__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room_member_list_view__pack_to_buffer
+ (const CChatRoomMemberListView *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room_member_list_view__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomMemberListView *
+ cchat_room_member_list_view__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomMemberListView *)
+ protobuf_c_message_unpack (&cchat_room_member_list_view__descriptor,
+ allocator, len, data);
+}
+void cchat_room_member_list_view__free_unpacked
+ (CChatRoomMemberListView *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room_member_list_view__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room_member_summary_counts__get_packed_size
+ (const CChatRoomMemberSummaryCounts *message)
+{
+ assert(message->descriptor == &cchat_room_member_summary_counts__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room_member_summary_counts__pack
+ (const CChatRoomMemberSummaryCounts *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room_member_summary_counts__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room_member_summary_counts__pack_to_buffer
+ (const CChatRoomMemberSummaryCounts *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room_member_summary_counts__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomMemberSummaryCounts *
+ cchat_room_member_summary_counts__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomMemberSummaryCounts *)
+ protobuf_c_message_unpack (&cchat_room_member_summary_counts__descriptor,
+ allocator, len, data);
+}
+void cchat_room_member_summary_counts__free_unpacked
+ (CChatRoomMemberSummaryCounts *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room_member_summary_counts__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room_client__member_list_view_updated__notification__get_packed_size
+ (const CChatRoomClientMemberListViewUpdatedNotification *message)
+{
+ assert(message->descriptor == &cchat_room_client__member_list_view_updated__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room_client__member_list_view_updated__notification__pack
+ (const CChatRoomClientMemberListViewUpdatedNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room_client__member_list_view_updated__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room_client__member_list_view_updated__notification__pack_to_buffer
+ (const CChatRoomClientMemberListViewUpdatedNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room_client__member_list_view_updated__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomClientMemberListViewUpdatedNotification *
+ cchat_room_client__member_list_view_updated__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomClientMemberListViewUpdatedNotification *)
+ protobuf_c_message_unpack (&cchat_room_client__member_list_view_updated__notification__descriptor,
+ allocator, len, data);
+}
+void cchat_room_client__member_list_view_updated__notification__free_unpacked
+ (CChatRoomClientMemberListViewUpdatedNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room_client__member_list_view_updated__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_room__message_reaction__notification__get_packed_size
+ (const CChatRoomMessageReactionNotification *message)
+{
+ assert(message->descriptor == &cchat_room__message_reaction__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_room__message_reaction__notification__pack
+ (const CChatRoomMessageReactionNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_room__message_reaction__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_room__message_reaction__notification__pack_to_buffer
+ (const CChatRoomMessageReactionNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_room__message_reaction__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatRoomMessageReactionNotification *
+ cchat_room__message_reaction__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatRoomMessageReactionNotification *)
+ protobuf_c_message_unpack (&cchat_room__message_reaction__notification__descriptor,
+ allocator, len, data);
+}
+void cchat_room__message_reaction__notification__free_unpacked
+ (CChatRoomMessageReactionNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_room__message_reaction__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_usability__client_usability_metrics__notification__get_packed_size
+ (const CChatUsabilityClientUsabilityMetricsNotification *message)
+{
+ assert(message->descriptor == &cchat_usability__client_usability_metrics__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_usability__client_usability_metrics__notification__pack
+ (const CChatUsabilityClientUsabilityMetricsNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_usability__client_usability_metrics__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_usability__client_usability_metrics__notification__pack_to_buffer
+ (const CChatUsabilityClientUsabilityMetricsNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_usability__client_usability_metrics__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatUsabilityClientUsabilityMetricsNotification *
+ cchat_usability__client_usability_metrics__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatUsabilityClientUsabilityMetricsNotification *)
+ protobuf_c_message_unpack (&cchat_usability__client_usability_metrics__notification__descriptor,
+ allocator, len, data);
+}
+void cchat_usability__client_usability_metrics__notification__free_unpacked
+ (CChatUsabilityClientUsabilityMetricsNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_usability__client_usability_metrics__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cchat_usability__request_client_usability_metrics__notification__get_packed_size
+ (const CChatUsabilityRequestClientUsabilityMetricsNotification *message)
+{
+ assert(message->descriptor == &cchat_usability__request_client_usability_metrics__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cchat_usability__request_client_usability_metrics__notification__pack
+ (const CChatUsabilityRequestClientUsabilityMetricsNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cchat_usability__request_client_usability_metrics__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cchat_usability__request_client_usability_metrics__notification__pack_to_buffer
+ (const CChatUsabilityRequestClientUsabilityMetricsNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cchat_usability__request_client_usability_metrics__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CChatUsabilityRequestClientUsabilityMetricsNotification *
+ cchat_usability__request_client_usability_metrics__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CChatUsabilityRequestClientUsabilityMetricsNotification *)
+ protobuf_c_message_unpack (&cchat_usability__request_client_usability_metrics__notification__descriptor,
+ allocator, len, data);
+}
+void cchat_usability__request_client_usability_metrics__notification__free_unpacked
+ (CChatUsabilityRequestClientUsabilityMetricsNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cchat_usability__request_client_usability_metrics__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+#define cchat__request_friend_persona_states__request__field_descriptors NULL
+#define cchat__request_friend_persona_states__request__field_indices_by_name NULL
+#define cchat__request_friend_persona_states__request__number_ranges NULL
+const ProtobufCMessageDescriptor cchat__request_friend_persona_states__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChat_RequestFriendPersonaStates_Request",
+ "CChatRequestFriendPersonaStatesRequest",
+ "CChatRequestFriendPersonaStatesRequest",
+ "",
+ sizeof(CChatRequestFriendPersonaStatesRequest),
+ 0,
+ cchat__request_friend_persona_states__request__field_descriptors,
+ cchat__request_friend_persona_states__request__field_indices_by_name,
+ 0, cchat__request_friend_persona_states__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat__request_friend_persona_states__response__field_descriptors NULL
+#define cchat__request_friend_persona_states__response__field_indices_by_name NULL
+#define cchat__request_friend_persona_states__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat__request_friend_persona_states__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChat_RequestFriendPersonaStates_Response",
+ "CChatRequestFriendPersonaStatesResponse",
+ "CChatRequestFriendPersonaStatesResponse",
+ "",
+ sizeof(CChatRequestFriendPersonaStatesResponse),
+ 0,
+ cchat__request_friend_persona_states__response__field_descriptors,
+ cchat__request_friend_persona_states__response__field_indices_by_name,
+ 0, cchat__request_friend_persona_states__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__create_chat_room_group__request__field_descriptors[6] =
+{
+ {
+ "steamid_partner",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomCreateChatRoomGroupRequest, has_steamid_partner),
+ offsetof(CChatRoomCreateChatRoomGroupRequest, steamid_partner),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid_invited",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomCreateChatRoomGroupRequest, has_steamid_invited),
+ offsetof(CChatRoomCreateChatRoomGroupRequest, steamid_invited),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "name",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomCreateChatRoomGroupRequest, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid_invitees",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomCreateChatRoomGroupRequest, n_steamid_invitees),
+ offsetof(CChatRoomCreateChatRoomGroupRequest, steamid_invitees),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "watching_broadcast_accountid",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomCreateChatRoomGroupRequest, has_watching_broadcast_accountid),
+ offsetof(CChatRoomCreateChatRoomGroupRequest, watching_broadcast_accountid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "watching_broadcast_channel_id",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomCreateChatRoomGroupRequest, has_watching_broadcast_channel_id),
+ offsetof(CChatRoomCreateChatRoomGroupRequest, watching_broadcast_channel_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__create_chat_room_group__request__field_indices_by_name[] = {
+ 2, /* field[2] = name */
+ 1, /* field[1] = steamid_invited */
+ 3, /* field[3] = steamid_invitees */
+ 0, /* field[0] = steamid_partner */
+ 4, /* field[4] = watching_broadcast_accountid */
+ 5, /* field[5] = watching_broadcast_channel_id */
+};
+static const ProtobufCIntRange cchat_room__create_chat_room_group__request__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 6, 4 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor cchat_room__create_chat_room_group__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_CreateChatRoomGroup_Request",
+ "CChatRoomCreateChatRoomGroupRequest",
+ "CChatRoomCreateChatRoomGroupRequest",
+ "",
+ sizeof(CChatRoomCreateChatRoomGroupRequest),
+ 6,
+ cchat_room__create_chat_room_group__request__field_descriptors,
+ cchat_room__create_chat_room_group__request__field_indices_by_name,
+ 2, cchat_room__create_chat_room_group__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_role__field_descriptors[3] =
+{
+ {
+ "role_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRole, has_role_id),
+ offsetof(CChatRole, role_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRole, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRole, has_ordinal),
+ offsetof(CChatRole, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_role__field_indices_by_name[] = {
+ 1, /* field[1] = name */
+ 2, /* field[2] = ordinal */
+ 0, /* field[0] = role_id */
+};
+static const ProtobufCIntRange cchat_role__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_role__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRole",
+ "CChatRole",
+ "CChatRole",
+ "",
+ sizeof(CChatRole),
+ 3,
+ cchat_role__field_descriptors,
+ cchat_role__field_indices_by_name,
+ 1, cchat_role__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_role_actions__field_descriptors[12] =
+{
+ {
+ "role_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoleActions, has_role_id),
+ offsetof(CChatRoleActions, role_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "can_create_rename_delete_channel",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoleActions, has_can_create_rename_delete_channel),
+ offsetof(CChatRoleActions, can_create_rename_delete_channel),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "can_kick",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoleActions, has_can_kick),
+ offsetof(CChatRoleActions, can_kick),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "can_ban",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoleActions, has_can_ban),
+ offsetof(CChatRoleActions, can_ban),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "can_invite",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoleActions, has_can_invite),
+ offsetof(CChatRoleActions, can_invite),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "can_change_tagline_avatar_name",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoleActions, has_can_change_tagline_avatar_name),
+ offsetof(CChatRoleActions, can_change_tagline_avatar_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "can_chat",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoleActions, has_can_chat),
+ offsetof(CChatRoleActions, can_chat),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "can_view_history",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoleActions, has_can_view_history),
+ offsetof(CChatRoleActions, can_view_history),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "can_change_group_roles",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoleActions, has_can_change_group_roles),
+ offsetof(CChatRoleActions, can_change_group_roles),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "can_change_user_roles",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoleActions, has_can_change_user_roles),
+ offsetof(CChatRoleActions, can_change_user_roles),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "can_mention_all",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoleActions, has_can_mention_all),
+ offsetof(CChatRoleActions, can_mention_all),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "can_set_watching_broadcast",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoleActions, has_can_set_watching_broadcast),
+ offsetof(CChatRoleActions, can_set_watching_broadcast),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_role_actions__field_indices_by_name[] = {
+ 3, /* field[3] = can_ban */
+ 8, /* field[8] = can_change_group_roles */
+ 5, /* field[5] = can_change_tagline_avatar_name */
+ 9, /* field[9] = can_change_user_roles */
+ 6, /* field[6] = can_chat */
+ 1, /* field[1] = can_create_rename_delete_channel */
+ 4, /* field[4] = can_invite */
+ 2, /* field[2] = can_kick */
+ 10, /* field[10] = can_mention_all */
+ 11, /* field[11] = can_set_watching_broadcast */
+ 7, /* field[7] = can_view_history */
+ 0, /* field[0] = role_id */
+};
+static const ProtobufCIntRange cchat_role_actions__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 12 }
+};
+const ProtobufCMessageDescriptor cchat_role_actions__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoleActions",
+ "CChatRoleActions",
+ "CChatRoleActions",
+ "",
+ sizeof(CChatRoleActions),
+ 12,
+ cchat_role_actions__field_descriptors,
+ cchat_role_actions__field_indices_by_name,
+ 1, cchat_role_actions__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_party_beacon__field_descriptors[4] =
+{
+ {
+ "app_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatPartyBeacon, has_app_id),
+ offsetof(CChatPartyBeacon, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid_owner",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatPartyBeacon, has_steamid_owner),
+ offsetof(CChatPartyBeacon, steamid_owner),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "beacon_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatPartyBeacon, has_beacon_id),
+ offsetof(CChatPartyBeacon, beacon_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_metadata",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatPartyBeacon, game_metadata),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_party_beacon__field_indices_by_name[] = {
+ 0, /* field[0] = app_id */
+ 2, /* field[2] = beacon_id */
+ 3, /* field[3] = game_metadata */
+ 1, /* field[1] = steamid_owner */
+};
+static const ProtobufCIntRange cchat_party_beacon__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cchat_party_beacon__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatPartyBeacon",
+ "CChatPartyBeacon",
+ "CChatPartyBeacon",
+ "",
+ sizeof(CChatPartyBeacon),
+ 4,
+ cchat_party_beacon__field_descriptors,
+ cchat_party_beacon__field_indices_by_name,
+ 1, cchat_party_beacon__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room_group_header_state__field_descriptors[16] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGroupHeaderState, has_chat_group_id),
+ offsetof(CChatRoomGroupHeaderState, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGroupHeaderState, chat_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "clanid",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGroupHeaderState, has_clanid),
+ offsetof(CChatRoomGroupHeaderState, clanid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "accountid_owner",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGroupHeaderState, has_accountid_owner),
+ offsetof(CChatRoomGroupHeaderState, accountid_owner),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "tagline",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGroupHeaderState, tagline),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "avatar_sha",
+ 16,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CChatRoomGroupHeaderState, has_avatar_sha),
+ offsetof(CChatRoomGroupHeaderState, avatar_sha),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "default_role_id",
+ 17,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGroupHeaderState, has_default_role_id),
+ offsetof(CChatRoomGroupHeaderState, default_role_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "roles",
+ 18,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGroupHeaderState, n_roles),
+ offsetof(CChatRoomGroupHeaderState, roles),
+ &cchat_role__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "role_actions",
+ 19,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGroupHeaderState, n_role_actions),
+ offsetof(CChatRoomGroupHeaderState, role_actions),
+ &cchat_role_actions__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "watching_broadcast_accountid",
+ 20,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGroupHeaderState, has_watching_broadcast_accountid),
+ offsetof(CChatRoomGroupHeaderState, watching_broadcast_accountid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "appid",
+ 21,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGroupHeaderState, has_appid),
+ offsetof(CChatRoomGroupHeaderState, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "party_beacons",
+ 22,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGroupHeaderState, n_party_beacons),
+ offsetof(CChatRoomGroupHeaderState, party_beacons),
+ &cchat_party_beacon__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "watching_broadcast_channel_id",
+ 23,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGroupHeaderState, has_watching_broadcast_channel_id),
+ offsetof(CChatRoomGroupHeaderState, watching_broadcast_channel_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "active_minigame_id",
+ 24,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGroupHeaderState, has_active_minigame_id),
+ offsetof(CChatRoomGroupHeaderState, active_minigame_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "avatar_ugc_url",
+ 25,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGroupHeaderState, avatar_ugc_url),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "disabled",
+ 26,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomGroupHeaderState, has_disabled),
+ offsetof(CChatRoomGroupHeaderState, disabled),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room_group_header_state__field_indices_by_name[] = {
+ 3, /* field[3] = accountid_owner */
+ 13, /* field[13] = active_minigame_id */
+ 10, /* field[10] = appid */
+ 5, /* field[5] = avatar_sha */
+ 14, /* field[14] = avatar_ugc_url */
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_name */
+ 2, /* field[2] = clanid */
+ 6, /* field[6] = default_role_id */
+ 15, /* field[15] = disabled */
+ 11, /* field[11] = party_beacons */
+ 8, /* field[8] = role_actions */
+ 7, /* field[7] = roles */
+ 4, /* field[4] = tagline */
+ 9, /* field[9] = watching_broadcast_accountid */
+ 12, /* field[12] = watching_broadcast_channel_id */
+};
+static const ProtobufCIntRange cchat_room_group_header_state__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 13, 2 },
+ { 0, 16 }
+};
+const ProtobufCMessageDescriptor cchat_room_group_header_state__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoomGroupHeaderState",
+ "CChatRoomGroupHeaderState",
+ "CChatRoomGroupHeaderState",
+ "",
+ sizeof(CChatRoomGroupHeaderState),
+ 16,
+ cchat_room_group_header_state__field_descriptors,
+ cchat_room_group_header_state__field_indices_by_name,
+ 2, cchat_room_group_header_state__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EChatRoomJoinState cchat_room_member__state__default_value = ECHAT_ROOM_JOIN_STATE__k_EChatRoomJoinState_Default;
+static const EChatRoomGroupRank cchat_room_member__rank__default_value = ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Default;
+static const ProtobufCFieldDescriptor cchat_room_member__field_descriptors[5] =
+{
+ {
+ "accountid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomMember, has_accountid),
+ offsetof(CChatRoomMember, accountid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "state",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CChatRoomMember, has_state),
+ offsetof(CChatRoomMember, state),
+ &echat_room_join_state__descriptor,
+ &cchat_room_member__state__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "rank",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CChatRoomMember, has_rank),
+ offsetof(CChatRoomMember, rank),
+ &echat_room_group_rank__descriptor,
+ &cchat_room_member__rank__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_kick_expire",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomMember, has_time_kick_expire),
+ offsetof(CChatRoomMember, time_kick_expire),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "role_ids",
+ 7,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomMember, n_role_ids),
+ offsetof(CChatRoomMember, role_ids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room_member__field_indices_by_name[] = {
+ 0, /* field[0] = accountid */
+ 2, /* field[2] = rank */
+ 4, /* field[4] = role_ids */
+ 1, /* field[1] = state */
+ 3, /* field[3] = time_kick_expire */
+};
+static const ProtobufCIntRange cchat_room_member__number_ranges[3 + 1] =
+{
+ { 1, 0 },
+ { 3, 1 },
+ { 6, 3 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cchat_room_member__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoomMember",
+ "CChatRoomMember",
+ "CChatRoomMember",
+ "",
+ sizeof(CChatRoomMember),
+ 5,
+ cchat_room_member__field_descriptors,
+ cchat_room_member__field_indices_by_name,
+ 3, cchat_room_member__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room_state__field_descriptors[8] =
+{
+ {
+ "chat_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomState, has_chat_id),
+ offsetof(CChatRoomState, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomState, chat_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "voice_allowed",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomState, has_voice_allowed),
+ offsetof(CChatRoomState, voice_allowed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "members_in_voice",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomState, n_members_in_voice),
+ offsetof(CChatRoomState, members_in_voice),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_last_message",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomState, has_time_last_message),
+ offsetof(CChatRoomState, time_last_message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sort_order",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomState, has_sort_order),
+ offsetof(CChatRoomState, sort_order),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_message",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomState, last_message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "accountid_last_message",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomState, has_accountid_last_message),
+ offsetof(CChatRoomState, accountid_last_message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room_state__field_indices_by_name[] = {
+ 7, /* field[7] = accountid_last_message */
+ 0, /* field[0] = chat_id */
+ 1, /* field[1] = chat_name */
+ 6, /* field[6] = last_message */
+ 3, /* field[3] = members_in_voice */
+ 5, /* field[5] = sort_order */
+ 4, /* field[4] = time_last_message */
+ 2, /* field[2] = voice_allowed */
+};
+static const ProtobufCIntRange cchat_room_state__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor cchat_room_state__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoomState",
+ "CChatRoomState",
+ "CChatRoomState",
+ "",
+ sizeof(CChatRoomState),
+ 8,
+ cchat_room_state__field_descriptors,
+ cchat_room_state__field_indices_by_name,
+ 1, cchat_room_state__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room_group_state__field_descriptors[5] =
+{
+ {
+ "header_state",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGroupState, header_state),
+ &cchat_room_group_header_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "members",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGroupState, n_members),
+ offsetof(CChatRoomGroupState, members),
+ &cchat_room_member__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "default_chat_id",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGroupState, has_default_chat_id),
+ offsetof(CChatRoomGroupState, default_chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_rooms",
+ 5,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGroupState, n_chat_rooms),
+ offsetof(CChatRoomGroupState, chat_rooms),
+ &cchat_room_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "kicked",
+ 7,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGroupState, n_kicked),
+ offsetof(CChatRoomGroupState, kicked),
+ &cchat_room_member__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room_group_state__field_indices_by_name[] = {
+ 3, /* field[3] = chat_rooms */
+ 2, /* field[2] = default_chat_id */
+ 0, /* field[0] = header_state */
+ 4, /* field[4] = kicked */
+ 1, /* field[1] = members */
+};
+static const ProtobufCIntRange cchat_room_group_state__number_ranges[3 + 1] =
+{
+ { 1, 0 },
+ { 4, 2 },
+ { 7, 4 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cchat_room_group_state__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoomGroupState",
+ "CChatRoomGroupState",
+ "CChatRoomGroupState",
+ "",
+ sizeof(CChatRoomGroupState),
+ 5,
+ cchat_room_group_state__field_descriptors,
+ cchat_room_group_state__field_indices_by_name,
+ 3, cchat_room_group_state__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EChatRoomNotificationLevel cuser_chat_room_state__desktop_notification_level__default_value = ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_Invalid;
+static const EChatRoomNotificationLevel cuser_chat_room_state__mobile_notification_level__default_value = ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_Invalid;
+static const protobuf_c_boolean cuser_chat_room_state__unread_indicator_muted__default_value = 0;
+static const ProtobufCFieldDescriptor cuser_chat_room_state__field_descriptors[8] =
+{
+ {
+ "chat_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CUserChatRoomState, has_chat_id),
+ offsetof(CUserChatRoomState, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_joined",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CUserChatRoomState, has_time_joined),
+ offsetof(CUserChatRoomState, time_joined),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_last_ack",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CUserChatRoomState, has_time_last_ack),
+ offsetof(CUserChatRoomState, time_last_ack),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "desktop_notification_level",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CUserChatRoomState, has_desktop_notification_level),
+ offsetof(CUserChatRoomState, desktop_notification_level),
+ &echat_room_notification_level__descriptor,
+ &cuser_chat_room_state__desktop_notification_level__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "mobile_notification_level",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CUserChatRoomState, has_mobile_notification_level),
+ offsetof(CUserChatRoomState, mobile_notification_level),
+ &echat_room_notification_level__descriptor,
+ &cuser_chat_room_state__mobile_notification_level__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_last_mention",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CUserChatRoomState, has_time_last_mention),
+ offsetof(CUserChatRoomState, time_last_mention),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "unread_indicator_muted",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CUserChatRoomState, has_unread_indicator_muted),
+ offsetof(CUserChatRoomState, unread_indicator_muted),
+ NULL,
+ &cuser_chat_room_state__unread_indicator_muted__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_first_unread",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CUserChatRoomState, has_time_first_unread),
+ offsetof(CUserChatRoomState, time_first_unread),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cuser_chat_room_state__field_indices_by_name[] = {
+ 0, /* field[0] = chat_id */
+ 3, /* field[3] = desktop_notification_level */
+ 4, /* field[4] = mobile_notification_level */
+ 7, /* field[7] = time_first_unread */
+ 1, /* field[1] = time_joined */
+ 2, /* field[2] = time_last_ack */
+ 5, /* field[5] = time_last_mention */
+ 6, /* field[6] = unread_indicator_muted */
+};
+static const ProtobufCIntRange cuser_chat_room_state__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor cuser_chat_room_state__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CUserChatRoomState",
+ "CUserChatRoomState",
+ "CUserChatRoomState",
+ "",
+ sizeof(CUserChatRoomState),
+ 8,
+ cuser_chat_room_state__field_descriptors,
+ cuser_chat_room_state__field_indices_by_name,
+ 1, cuser_chat_room_state__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EChatRoomNotificationLevel cuser_chat_room_group_state__desktop_notification_level__default_value = ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_Invalid;
+static const EChatRoomNotificationLevel cuser_chat_room_group_state__mobile_notification_level__default_value = ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_Invalid;
+static const protobuf_c_boolean cuser_chat_room_group_state__unread_indicator_muted__default_value = 0;
+static const ProtobufCFieldDescriptor cuser_chat_room_group_state__field_descriptors[7] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CUserChatRoomGroupState, has_chat_group_id),
+ offsetof(CUserChatRoomGroupState, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_joined",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CUserChatRoomGroupState, has_time_joined),
+ offsetof(CUserChatRoomGroupState, time_joined),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "user_chat_room_state",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CUserChatRoomGroupState, n_user_chat_room_state),
+ offsetof(CUserChatRoomGroupState, user_chat_room_state),
+ &cuser_chat_room_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "desktop_notification_level",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CUserChatRoomGroupState, has_desktop_notification_level),
+ offsetof(CUserChatRoomGroupState, desktop_notification_level),
+ &echat_room_notification_level__descriptor,
+ &cuser_chat_room_group_state__desktop_notification_level__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "mobile_notification_level",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CUserChatRoomGroupState, has_mobile_notification_level),
+ offsetof(CUserChatRoomGroupState, mobile_notification_level),
+ &echat_room_notification_level__descriptor,
+ &cuser_chat_room_group_state__mobile_notification_level__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_last_group_ack",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CUserChatRoomGroupState, has_time_last_group_ack),
+ offsetof(CUserChatRoomGroupState, time_last_group_ack),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "unread_indicator_muted",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CUserChatRoomGroupState, has_unread_indicator_muted),
+ offsetof(CUserChatRoomGroupState, unread_indicator_muted),
+ NULL,
+ &cuser_chat_room_group_state__unread_indicator_muted__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cuser_chat_room_group_state__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 3, /* field[3] = desktop_notification_level */
+ 4, /* field[4] = mobile_notification_level */
+ 1, /* field[1] = time_joined */
+ 5, /* field[5] = time_last_group_ack */
+ 6, /* field[6] = unread_indicator_muted */
+ 2, /* field[2] = user_chat_room_state */
+};
+static const ProtobufCIntRange cuser_chat_room_group_state__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cuser_chat_room_group_state__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CUserChatRoomGroupState",
+ "CUserChatRoomGroupState",
+ "CUserChatRoomGroupState",
+ "",
+ sizeof(CUserChatRoomGroupState),
+ 7,
+ cuser_chat_room_group_state__field_descriptors,
+ cuser_chat_room_group_state__field_indices_by_name,
+ 1, cuser_chat_room_group_state__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__create_chat_room_group__response__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomCreateChatRoomGroupResponse, has_chat_group_id),
+ offsetof(CChatRoomCreateChatRoomGroupResponse, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "state",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomCreateChatRoomGroupResponse, state),
+ &cchat_room_group_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "user_chat_state",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomCreateChatRoomGroupResponse, user_chat_state),
+ &cuser_chat_room_group_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__create_chat_room_group__response__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = state */
+ 2, /* field[2] = user_chat_state */
+};
+static const ProtobufCIntRange cchat_room__create_chat_room_group__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__create_chat_room_group__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_CreateChatRoomGroup_Response",
+ "CChatRoomCreateChatRoomGroupResponse",
+ "CChatRoomCreateChatRoomGroupResponse",
+ "",
+ sizeof(CChatRoomCreateChatRoomGroupResponse),
+ 3,
+ cchat_room__create_chat_room_group__response__field_descriptors,
+ cchat_room__create_chat_room_group__response__field_indices_by_name,
+ 1, cchat_room__create_chat_room_group__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__save_chat_room_group__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSaveChatRoomGroupRequest, has_chat_group_id),
+ offsetof(CChatRoomSaveChatRoomGroupRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomSaveChatRoomGroupRequest, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__save_chat_room_group__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = name */
+};
+static const ProtobufCIntRange cchat_room__save_chat_room_group__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__save_chat_room_group__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SaveChatRoomGroup_Request",
+ "CChatRoomSaveChatRoomGroupRequest",
+ "CChatRoomSaveChatRoomGroupRequest",
+ "",
+ sizeof(CChatRoomSaveChatRoomGroupRequest),
+ 2,
+ cchat_room__save_chat_room_group__request__field_descriptors,
+ cchat_room__save_chat_room_group__request__field_indices_by_name,
+ 1, cchat_room__save_chat_room_group__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__save_chat_room_group__response__field_descriptors NULL
+#define cchat_room__save_chat_room_group__response__field_indices_by_name NULL
+#define cchat_room__save_chat_room_group__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__save_chat_room_group__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SaveChatRoomGroup_Response",
+ "CChatRoomSaveChatRoomGroupResponse",
+ "CChatRoomSaveChatRoomGroupResponse",
+ "",
+ sizeof(CChatRoomSaveChatRoomGroupResponse),
+ 0,
+ cchat_room__save_chat_room_group__response__field_descriptors,
+ cchat_room__save_chat_room_group__response__field_indices_by_name,
+ 0, cchat_room__save_chat_room_group__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__rename_chat_room_group__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomRenameChatRoomGroupRequest, has_chat_group_id),
+ offsetof(CChatRoomRenameChatRoomGroupRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomRenameChatRoomGroupRequest, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__rename_chat_room_group__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = name */
+};
+static const ProtobufCIntRange cchat_room__rename_chat_room_group__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__rename_chat_room_group__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_RenameChatRoomGroup_Request",
+ "CChatRoomRenameChatRoomGroupRequest",
+ "CChatRoomRenameChatRoomGroupRequest",
+ "",
+ sizeof(CChatRoomRenameChatRoomGroupRequest),
+ 2,
+ cchat_room__rename_chat_room_group__request__field_descriptors,
+ cchat_room__rename_chat_room_group__request__field_indices_by_name,
+ 1, cchat_room__rename_chat_room_group__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__rename_chat_room_group__response__field_descriptors[1] =
+{
+ {
+ "name",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomRenameChatRoomGroupResponse, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__rename_chat_room_group__response__field_indices_by_name[] = {
+ 0, /* field[0] = name */
+};
+static const ProtobufCIntRange cchat_room__rename_chat_room_group__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__rename_chat_room_group__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_RenameChatRoomGroup_Response",
+ "CChatRoomRenameChatRoomGroupResponse",
+ "CChatRoomRenameChatRoomGroupResponse",
+ "",
+ sizeof(CChatRoomRenameChatRoomGroupResponse),
+ 1,
+ cchat_room__rename_chat_room_group__response__field_descriptors,
+ cchat_room__rename_chat_room_group__response__field_indices_by_name,
+ 1, cchat_room__rename_chat_room_group__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__set_chat_room_group_tagline__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSetChatRoomGroupTaglineRequest, has_chat_group_id),
+ offsetof(CChatRoomSetChatRoomGroupTaglineRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "tagline",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomSetChatRoomGroupTaglineRequest, tagline),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__set_chat_room_group_tagline__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = tagline */
+};
+static const ProtobufCIntRange cchat_room__set_chat_room_group_tagline__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__set_chat_room_group_tagline__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetChatRoomGroupTagline_Request",
+ "CChatRoomSetChatRoomGroupTaglineRequest",
+ "CChatRoomSetChatRoomGroupTaglineRequest",
+ "",
+ sizeof(CChatRoomSetChatRoomGroupTaglineRequest),
+ 2,
+ cchat_room__set_chat_room_group_tagline__request__field_descriptors,
+ cchat_room__set_chat_room_group_tagline__request__field_indices_by_name,
+ 1, cchat_room__set_chat_room_group_tagline__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__set_chat_room_group_tagline__response__field_descriptors NULL
+#define cchat_room__set_chat_room_group_tagline__response__field_indices_by_name NULL
+#define cchat_room__set_chat_room_group_tagline__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__set_chat_room_group_tagline__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetChatRoomGroupTagline_Response",
+ "CChatRoomSetChatRoomGroupTaglineResponse",
+ "CChatRoomSetChatRoomGroupTaglineResponse",
+ "",
+ sizeof(CChatRoomSetChatRoomGroupTaglineResponse),
+ 0,
+ cchat_room__set_chat_room_group_tagline__response__field_descriptors,
+ cchat_room__set_chat_room_group_tagline__response__field_indices_by_name,
+ 0, cchat_room__set_chat_room_group_tagline__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__set_chat_room_group_avatar__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSetChatRoomGroupAvatarRequest, has_chat_group_id),
+ offsetof(CChatRoomSetChatRoomGroupAvatarRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "avatar_sha",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CChatRoomSetChatRoomGroupAvatarRequest, has_avatar_sha),
+ offsetof(CChatRoomSetChatRoomGroupAvatarRequest, avatar_sha),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__set_chat_room_group_avatar__request__field_indices_by_name[] = {
+ 1, /* field[1] = avatar_sha */
+ 0, /* field[0] = chat_group_id */
+};
+static const ProtobufCIntRange cchat_room__set_chat_room_group_avatar__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__set_chat_room_group_avatar__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetChatRoomGroupAvatar_Request",
+ "CChatRoomSetChatRoomGroupAvatarRequest",
+ "CChatRoomSetChatRoomGroupAvatarRequest",
+ "",
+ sizeof(CChatRoomSetChatRoomGroupAvatarRequest),
+ 2,
+ cchat_room__set_chat_room_group_avatar__request__field_descriptors,
+ cchat_room__set_chat_room_group_avatar__request__field_indices_by_name,
+ 1, cchat_room__set_chat_room_group_avatar__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__set_chat_room_group_avatar__response__field_descriptors NULL
+#define cchat_room__set_chat_room_group_avatar__response__field_indices_by_name NULL
+#define cchat_room__set_chat_room_group_avatar__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__set_chat_room_group_avatar__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetChatRoomGroupAvatar_Response",
+ "CChatRoomSetChatRoomGroupAvatarResponse",
+ "CChatRoomSetChatRoomGroupAvatarResponse",
+ "",
+ sizeof(CChatRoomSetChatRoomGroupAvatarResponse),
+ 0,
+ cchat_room__set_chat_room_group_avatar__response__field_descriptors,
+ cchat_room__set_chat_room_group_avatar__response__field_indices_by_name,
+ 0, cchat_room__set_chat_room_group_avatar__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__set_chat_room_group_watching_broadcast__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSetChatRoomGroupWatchingBroadcastRequest, has_chat_group_id),
+ offsetof(CChatRoomSetChatRoomGroupWatchingBroadcastRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "watching_broadcast_accountid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomSetChatRoomGroupWatchingBroadcastRequest, has_watching_broadcast_accountid),
+ offsetof(CChatRoomSetChatRoomGroupWatchingBroadcastRequest, watching_broadcast_accountid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "watching_broadcast_channel_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSetChatRoomGroupWatchingBroadcastRequest, has_watching_broadcast_channel_id),
+ offsetof(CChatRoomSetChatRoomGroupWatchingBroadcastRequest, watching_broadcast_channel_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__set_chat_room_group_watching_broadcast__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = watching_broadcast_accountid */
+ 2, /* field[2] = watching_broadcast_channel_id */
+};
+static const ProtobufCIntRange cchat_room__set_chat_room_group_watching_broadcast__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__set_chat_room_group_watching_broadcast__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetChatRoomGroupWatchingBroadcast_Request",
+ "CChatRoomSetChatRoomGroupWatchingBroadcastRequest",
+ "CChatRoomSetChatRoomGroupWatchingBroadcastRequest",
+ "",
+ sizeof(CChatRoomSetChatRoomGroupWatchingBroadcastRequest),
+ 3,
+ cchat_room__set_chat_room_group_watching_broadcast__request__field_descriptors,
+ cchat_room__set_chat_room_group_watching_broadcast__request__field_indices_by_name,
+ 1, cchat_room__set_chat_room_group_watching_broadcast__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__set_chat_room_group_watching_broadcast__response__field_descriptors NULL
+#define cchat_room__set_chat_room_group_watching_broadcast__response__field_indices_by_name NULL
+#define cchat_room__set_chat_room_group_watching_broadcast__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__set_chat_room_group_watching_broadcast__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetChatRoomGroupWatchingBroadcast_Response",
+ "CChatRoomSetChatRoomGroupWatchingBroadcastResponse",
+ "CChatRoomSetChatRoomGroupWatchingBroadcastResponse",
+ "",
+ sizeof(CChatRoomSetChatRoomGroupWatchingBroadcastResponse),
+ 0,
+ cchat_room__set_chat_room_group_watching_broadcast__response__field_descriptors,
+ cchat_room__set_chat_room_group_watching_broadcast__response__field_indices_by_name,
+ 0, cchat_room__set_chat_room_group_watching_broadcast__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__join_mini_game_for_chat_room_group__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomJoinMiniGameForChatRoomGroupRequest, has_chat_group_id),
+ offsetof(CChatRoomJoinMiniGameForChatRoomGroupRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomJoinMiniGameForChatRoomGroupRequest, has_chat_id),
+ offsetof(CChatRoomJoinMiniGameForChatRoomGroupRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__join_mini_game_for_chat_room_group__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+};
+static const ProtobufCIntRange cchat_room__join_mini_game_for_chat_room_group__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__join_mini_game_for_chat_room_group__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_JoinMiniGameForChatRoomGroup_Request",
+ "CChatRoomJoinMiniGameForChatRoomGroupRequest",
+ "CChatRoomJoinMiniGameForChatRoomGroupRequest",
+ "",
+ sizeof(CChatRoomJoinMiniGameForChatRoomGroupRequest),
+ 2,
+ cchat_room__join_mini_game_for_chat_room_group__request__field_descriptors,
+ cchat_room__join_mini_game_for_chat_room_group__request__field_indices_by_name,
+ 1, cchat_room__join_mini_game_for_chat_room_group__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__join_mini_game_for_chat_room_group__response__field_descriptors[1] =
+{
+ {
+ "minigame_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomJoinMiniGameForChatRoomGroupResponse, has_minigame_id),
+ offsetof(CChatRoomJoinMiniGameForChatRoomGroupResponse, minigame_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__join_mini_game_for_chat_room_group__response__field_indices_by_name[] = {
+ 0, /* field[0] = minigame_id */
+};
+static const ProtobufCIntRange cchat_room__join_mini_game_for_chat_room_group__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__join_mini_game_for_chat_room_group__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_JoinMiniGameForChatRoomGroup_Response",
+ "CChatRoomJoinMiniGameForChatRoomGroupResponse",
+ "CChatRoomJoinMiniGameForChatRoomGroupResponse",
+ "",
+ sizeof(CChatRoomJoinMiniGameForChatRoomGroupResponse),
+ 1,
+ cchat_room__join_mini_game_for_chat_room_group__response__field_descriptors,
+ cchat_room__join_mini_game_for_chat_room_group__response__field_indices_by_name,
+ 1, cchat_room__join_mini_game_for_chat_room_group__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__end_mini_game_for_chat_room_group__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomEndMiniGameForChatRoomGroupRequest, has_chat_group_id),
+ offsetof(CChatRoomEndMiniGameForChatRoomGroupRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomEndMiniGameForChatRoomGroupRequest, has_chat_id),
+ offsetof(CChatRoomEndMiniGameForChatRoomGroupRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "minigame_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomEndMiniGameForChatRoomGroupRequest, has_minigame_id),
+ offsetof(CChatRoomEndMiniGameForChatRoomGroupRequest, minigame_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__end_mini_game_for_chat_room_group__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+ 2, /* field[2] = minigame_id */
+};
+static const ProtobufCIntRange cchat_room__end_mini_game_for_chat_room_group__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__end_mini_game_for_chat_room_group__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_EndMiniGameForChatRoomGroup_Request",
+ "CChatRoomEndMiniGameForChatRoomGroupRequest",
+ "CChatRoomEndMiniGameForChatRoomGroupRequest",
+ "",
+ sizeof(CChatRoomEndMiniGameForChatRoomGroupRequest),
+ 3,
+ cchat_room__end_mini_game_for_chat_room_group__request__field_descriptors,
+ cchat_room__end_mini_game_for_chat_room_group__request__field_indices_by_name,
+ 1, cchat_room__end_mini_game_for_chat_room_group__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__end_mini_game_for_chat_room_group__response__field_descriptors NULL
+#define cchat_room__end_mini_game_for_chat_room_group__response__field_indices_by_name NULL
+#define cchat_room__end_mini_game_for_chat_room_group__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__end_mini_game_for_chat_room_group__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_EndMiniGameForChatRoomGroup_Response",
+ "CChatRoomEndMiniGameForChatRoomGroupResponse",
+ "CChatRoomEndMiniGameForChatRoomGroupResponse",
+ "",
+ sizeof(CChatRoomEndMiniGameForChatRoomGroupResponse),
+ 0,
+ cchat_room__end_mini_game_for_chat_room_group__response__field_descriptors,
+ cchat_room__end_mini_game_for_chat_room_group__response__field_indices_by_name,
+ 0, cchat_room__end_mini_game_for_chat_room_group__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__mute_user__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomMuteUserRequest, has_chat_group_id),
+ offsetof(CChatRoomMuteUserRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomMuteUserRequest, has_steamid),
+ offsetof(CChatRoomMuteUserRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "expiration",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomMuteUserRequest, has_expiration),
+ offsetof(CChatRoomMuteUserRequest, expiration),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__mute_user__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 2, /* field[2] = expiration */
+ 1, /* field[1] = steamid */
+};
+static const ProtobufCIntRange cchat_room__mute_user__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__mute_user__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_MuteUser_Request",
+ "CChatRoomMuteUserRequest",
+ "CChatRoomMuteUserRequest",
+ "",
+ sizeof(CChatRoomMuteUserRequest),
+ 3,
+ cchat_room__mute_user__request__field_descriptors,
+ cchat_room__mute_user__request__field_indices_by_name,
+ 1, cchat_room__mute_user__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__mute_user__response__field_descriptors NULL
+#define cchat_room__mute_user__response__field_indices_by_name NULL
+#define cchat_room__mute_user__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__mute_user__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_MuteUser_Response",
+ "CChatRoomMuteUserResponse",
+ "CChatRoomMuteUserResponse",
+ "",
+ sizeof(CChatRoomMuteUserResponse),
+ 0,
+ cchat_room__mute_user__response__field_descriptors,
+ cchat_room__mute_user__response__field_indices_by_name,
+ 0, cchat_room__mute_user__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__kick_user__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomKickUserRequest, has_chat_group_id),
+ offsetof(CChatRoomKickUserRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomKickUserRequest, has_steamid),
+ offsetof(CChatRoomKickUserRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "expiration",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomKickUserRequest, has_expiration),
+ offsetof(CChatRoomKickUserRequest, expiration),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__kick_user__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 2, /* field[2] = expiration */
+ 1, /* field[1] = steamid */
+};
+static const ProtobufCIntRange cchat_room__kick_user__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__kick_user__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_KickUser_Request",
+ "CChatRoomKickUserRequest",
+ "CChatRoomKickUserRequest",
+ "",
+ sizeof(CChatRoomKickUserRequest),
+ 3,
+ cchat_room__kick_user__request__field_descriptors,
+ cchat_room__kick_user__request__field_indices_by_name,
+ 1, cchat_room__kick_user__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__kick_user__response__field_descriptors NULL
+#define cchat_room__kick_user__response__field_indices_by_name NULL
+#define cchat_room__kick_user__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__kick_user__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_KickUser_Response",
+ "CChatRoomKickUserResponse",
+ "CChatRoomKickUserResponse",
+ "",
+ sizeof(CChatRoomKickUserResponse),
+ 0,
+ cchat_room__kick_user__response__field_descriptors,
+ cchat_room__kick_user__response__field_indices_by_name,
+ 0, cchat_room__kick_user__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__set_user_ban_state__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSetUserBanStateRequest, has_chat_group_id),
+ offsetof(CChatRoomSetUserBanStateRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomSetUserBanStateRequest, has_steamid),
+ offsetof(CChatRoomSetUserBanStateRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ban_state",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomSetUserBanStateRequest, has_ban_state),
+ offsetof(CChatRoomSetUserBanStateRequest, ban_state),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__set_user_ban_state__request__field_indices_by_name[] = {
+ 2, /* field[2] = ban_state */
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = steamid */
+};
+static const ProtobufCIntRange cchat_room__set_user_ban_state__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__set_user_ban_state__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetUserBanState_Request",
+ "CChatRoomSetUserBanStateRequest",
+ "CChatRoomSetUserBanStateRequest",
+ "",
+ sizeof(CChatRoomSetUserBanStateRequest),
+ 3,
+ cchat_room__set_user_ban_state__request__field_descriptors,
+ cchat_room__set_user_ban_state__request__field_indices_by_name,
+ 1, cchat_room__set_user_ban_state__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__set_user_ban_state__response__field_descriptors NULL
+#define cchat_room__set_user_ban_state__response__field_indices_by_name NULL
+#define cchat_room__set_user_ban_state__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__set_user_ban_state__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetUserBanState_Response",
+ "CChatRoomSetUserBanStateResponse",
+ "CChatRoomSetUserBanStateResponse",
+ "",
+ sizeof(CChatRoomSetUserBanStateResponse),
+ 0,
+ cchat_room__set_user_ban_state__response__field_descriptors,
+ cchat_room__set_user_ban_state__response__field_indices_by_name,
+ 0, cchat_room__set_user_ban_state__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__revoke_invite__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomRevokeInviteRequest, has_chat_group_id),
+ offsetof(CChatRoomRevokeInviteRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomRevokeInviteRequest, has_steamid),
+ offsetof(CChatRoomRevokeInviteRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__revoke_invite__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = steamid */
+};
+static const ProtobufCIntRange cchat_room__revoke_invite__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__revoke_invite__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_RevokeInvite_Request",
+ "CChatRoomRevokeInviteRequest",
+ "CChatRoomRevokeInviteRequest",
+ "",
+ sizeof(CChatRoomRevokeInviteRequest),
+ 2,
+ cchat_room__revoke_invite__request__field_descriptors,
+ cchat_room__revoke_invite__request__field_indices_by_name,
+ 1, cchat_room__revoke_invite__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__revoke_invite__response__field_descriptors NULL
+#define cchat_room__revoke_invite__response__field_indices_by_name NULL
+#define cchat_room__revoke_invite__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__revoke_invite__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_RevokeInvite_Response",
+ "CChatRoomRevokeInviteResponse",
+ "CChatRoomRevokeInviteResponse",
+ "",
+ sizeof(CChatRoomRevokeInviteResponse),
+ 0,
+ cchat_room__revoke_invite__response__field_descriptors,
+ cchat_room__revoke_invite__response__field_indices_by_name,
+ 0, cchat_room__revoke_invite__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__create_role__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomCreateRoleRequest, has_chat_group_id),
+ offsetof(CChatRoomCreateRoleRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomCreateRoleRequest, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__create_role__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = name */
+};
+static const ProtobufCIntRange cchat_room__create_role__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__create_role__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_CreateRole_Request",
+ "CChatRoomCreateRoleRequest",
+ "CChatRoomCreateRoleRequest",
+ "",
+ sizeof(CChatRoomCreateRoleRequest),
+ 2,
+ cchat_room__create_role__request__field_descriptors,
+ cchat_room__create_role__request__field_indices_by_name,
+ 1, cchat_room__create_role__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__create_role__response__field_descriptors[1] =
+{
+ {
+ "actions",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomCreateRoleResponse, actions),
+ &cchat_role_actions__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__create_role__response__field_indices_by_name[] = {
+ 0, /* field[0] = actions */
+};
+static const ProtobufCIntRange cchat_room__create_role__response__number_ranges[1 + 1] =
+{
+ { 2, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__create_role__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_CreateRole_Response",
+ "CChatRoomCreateRoleResponse",
+ "CChatRoomCreateRoleResponse",
+ "",
+ sizeof(CChatRoomCreateRoleResponse),
+ 1,
+ cchat_room__create_role__response__field_descriptors,
+ cchat_room__create_role__response__field_indices_by_name,
+ 1, cchat_room__create_role__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_roles__request__field_descriptors[1] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetRolesRequest, has_chat_group_id),
+ offsetof(CChatRoomGetRolesRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_roles__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+};
+static const ProtobufCIntRange cchat_room__get_roles__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_roles__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetRoles_Request",
+ "CChatRoomGetRolesRequest",
+ "CChatRoomGetRolesRequest",
+ "",
+ sizeof(CChatRoomGetRolesRequest),
+ 1,
+ cchat_room__get_roles__request__field_descriptors,
+ cchat_room__get_roles__request__field_indices_by_name,
+ 1, cchat_room__get_roles__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_roles__response__field_descriptors[1] =
+{
+ {
+ "roles",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGetRolesResponse, n_roles),
+ offsetof(CChatRoomGetRolesResponse, roles),
+ &cchat_role__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_roles__response__field_indices_by_name[] = {
+ 0, /* field[0] = roles */
+};
+static const ProtobufCIntRange cchat_room__get_roles__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_roles__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetRoles_Response",
+ "CChatRoomGetRolesResponse",
+ "CChatRoomGetRolesResponse",
+ "",
+ sizeof(CChatRoomGetRolesResponse),
+ 1,
+ cchat_room__get_roles__response__field_descriptors,
+ cchat_room__get_roles__response__field_indices_by_name,
+ 1, cchat_room__get_roles__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__rename_role__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomRenameRoleRequest, has_chat_group_id),
+ offsetof(CChatRoomRenameRoleRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "role_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomRenameRoleRequest, has_role_id),
+ offsetof(CChatRoomRenameRoleRequest, role_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "name",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomRenameRoleRequest, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__rename_role__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 2, /* field[2] = name */
+ 1, /* field[1] = role_id */
+};
+static const ProtobufCIntRange cchat_room__rename_role__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__rename_role__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_RenameRole_Request",
+ "CChatRoomRenameRoleRequest",
+ "CChatRoomRenameRoleRequest",
+ "",
+ sizeof(CChatRoomRenameRoleRequest),
+ 3,
+ cchat_room__rename_role__request__field_descriptors,
+ cchat_room__rename_role__request__field_indices_by_name,
+ 1, cchat_room__rename_role__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__rename_role__response__field_descriptors NULL
+#define cchat_room__rename_role__response__field_indices_by_name NULL
+#define cchat_room__rename_role__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__rename_role__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_RenameRole_Response",
+ "CChatRoomRenameRoleResponse",
+ "CChatRoomRenameRoleResponse",
+ "",
+ sizeof(CChatRoomRenameRoleResponse),
+ 0,
+ cchat_room__rename_role__response__field_descriptors,
+ cchat_room__rename_role__response__field_indices_by_name,
+ 0, cchat_room__rename_role__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__reorder_role__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomReorderRoleRequest, has_chat_group_id),
+ offsetof(CChatRoomReorderRoleRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "role_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomReorderRoleRequest, has_role_id),
+ offsetof(CChatRoomReorderRoleRequest, role_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomReorderRoleRequest, has_ordinal),
+ offsetof(CChatRoomReorderRoleRequest, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__reorder_role__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 2, /* field[2] = ordinal */
+ 1, /* field[1] = role_id */
+};
+static const ProtobufCIntRange cchat_room__reorder_role__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__reorder_role__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_ReorderRole_Request",
+ "CChatRoomReorderRoleRequest",
+ "CChatRoomReorderRoleRequest",
+ "",
+ sizeof(CChatRoomReorderRoleRequest),
+ 3,
+ cchat_room__reorder_role__request__field_descriptors,
+ cchat_room__reorder_role__request__field_indices_by_name,
+ 1, cchat_room__reorder_role__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__reorder_role__response__field_descriptors NULL
+#define cchat_room__reorder_role__response__field_indices_by_name NULL
+#define cchat_room__reorder_role__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__reorder_role__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_ReorderRole_Response",
+ "CChatRoomReorderRoleResponse",
+ "CChatRoomReorderRoleResponse",
+ "",
+ sizeof(CChatRoomReorderRoleResponse),
+ 0,
+ cchat_room__reorder_role__response__field_descriptors,
+ cchat_room__reorder_role__response__field_indices_by_name,
+ 0, cchat_room__reorder_role__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__delete_role__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomDeleteRoleRequest, has_chat_group_id),
+ offsetof(CChatRoomDeleteRoleRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "role_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomDeleteRoleRequest, has_role_id),
+ offsetof(CChatRoomDeleteRoleRequest, role_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__delete_role__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = role_id */
+};
+static const ProtobufCIntRange cchat_room__delete_role__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__delete_role__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_DeleteRole_Request",
+ "CChatRoomDeleteRoleRequest",
+ "CChatRoomDeleteRoleRequest",
+ "",
+ sizeof(CChatRoomDeleteRoleRequest),
+ 2,
+ cchat_room__delete_role__request__field_descriptors,
+ cchat_room__delete_role__request__field_indices_by_name,
+ 1, cchat_room__delete_role__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__delete_role__response__field_descriptors NULL
+#define cchat_room__delete_role__response__field_indices_by_name NULL
+#define cchat_room__delete_role__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__delete_role__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_DeleteRole_Response",
+ "CChatRoomDeleteRoleResponse",
+ "CChatRoomDeleteRoleResponse",
+ "",
+ sizeof(CChatRoomDeleteRoleResponse),
+ 0,
+ cchat_room__delete_role__response__field_descriptors,
+ cchat_room__delete_role__response__field_indices_by_name,
+ 0, cchat_room__delete_role__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_role_actions__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetRoleActionsRequest, has_chat_group_id),
+ offsetof(CChatRoomGetRoleActionsRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "role_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetRoleActionsRequest, has_role_id),
+ offsetof(CChatRoomGetRoleActionsRequest, role_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_role_actions__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = role_id */
+};
+static const ProtobufCIntRange cchat_room__get_role_actions__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_role_actions__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetRoleActions_Request",
+ "CChatRoomGetRoleActionsRequest",
+ "CChatRoomGetRoleActionsRequest",
+ "",
+ sizeof(CChatRoomGetRoleActionsRequest),
+ 2,
+ cchat_room__get_role_actions__request__field_descriptors,
+ cchat_room__get_role_actions__request__field_indices_by_name,
+ 1, cchat_room__get_role_actions__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_role_actions__response__field_descriptors[1] =
+{
+ {
+ "actions",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGetRoleActionsResponse, n_actions),
+ offsetof(CChatRoomGetRoleActionsResponse, actions),
+ &cchat_role_actions__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_role_actions__response__field_indices_by_name[] = {
+ 0, /* field[0] = actions */
+};
+static const ProtobufCIntRange cchat_room__get_role_actions__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_role_actions__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetRoleActions_Response",
+ "CChatRoomGetRoleActionsResponse",
+ "CChatRoomGetRoleActionsResponse",
+ "",
+ sizeof(CChatRoomGetRoleActionsResponse),
+ 1,
+ cchat_room__get_role_actions__response__field_descriptors,
+ cchat_room__get_role_actions__response__field_indices_by_name,
+ 1, cchat_room__get_role_actions__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__replace_role_actions__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomReplaceRoleActionsRequest, has_chat_group_id),
+ offsetof(CChatRoomReplaceRoleActionsRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "role_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomReplaceRoleActionsRequest, has_role_id),
+ offsetof(CChatRoomReplaceRoleActionsRequest, role_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "actions",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomReplaceRoleActionsRequest, actions),
+ &cchat_role_actions__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__replace_role_actions__request__field_indices_by_name[] = {
+ 2, /* field[2] = actions */
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = role_id */
+};
+static const ProtobufCIntRange cchat_room__replace_role_actions__request__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 4, 2 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__replace_role_actions__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_ReplaceRoleActions_Request",
+ "CChatRoomReplaceRoleActionsRequest",
+ "CChatRoomReplaceRoleActionsRequest",
+ "",
+ sizeof(CChatRoomReplaceRoleActionsRequest),
+ 3,
+ cchat_room__replace_role_actions__request__field_descriptors,
+ cchat_room__replace_role_actions__request__field_indices_by_name,
+ 2, cchat_room__replace_role_actions__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__replace_role_actions__response__field_descriptors NULL
+#define cchat_room__replace_role_actions__response__field_indices_by_name NULL
+#define cchat_room__replace_role_actions__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__replace_role_actions__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_ReplaceRoleActions_Response",
+ "CChatRoomReplaceRoleActionsResponse",
+ "CChatRoomReplaceRoleActionsResponse",
+ "",
+ sizeof(CChatRoomReplaceRoleActionsResponse),
+ 0,
+ cchat_room__replace_role_actions__response__field_descriptors,
+ cchat_room__replace_role_actions__response__field_indices_by_name,
+ 0, cchat_room__replace_role_actions__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__add_role_to_user__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomAddRoleToUserRequest, has_chat_group_id),
+ offsetof(CChatRoomAddRoleToUserRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "role_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomAddRoleToUserRequest, has_role_id),
+ offsetof(CChatRoomAddRoleToUserRequest, role_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomAddRoleToUserRequest, has_steamid),
+ offsetof(CChatRoomAddRoleToUserRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__add_role_to_user__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = role_id */
+ 2, /* field[2] = steamid */
+};
+static const ProtobufCIntRange cchat_room__add_role_to_user__request__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 3, 1 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__add_role_to_user__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_AddRoleToUser_Request",
+ "CChatRoomAddRoleToUserRequest",
+ "CChatRoomAddRoleToUserRequest",
+ "",
+ sizeof(CChatRoomAddRoleToUserRequest),
+ 3,
+ cchat_room__add_role_to_user__request__field_descriptors,
+ cchat_room__add_role_to_user__request__field_indices_by_name,
+ 2, cchat_room__add_role_to_user__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__add_role_to_user__response__field_descriptors NULL
+#define cchat_room__add_role_to_user__response__field_indices_by_name NULL
+#define cchat_room__add_role_to_user__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__add_role_to_user__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_AddRoleToUser_Response",
+ "CChatRoomAddRoleToUserResponse",
+ "CChatRoomAddRoleToUserResponse",
+ "",
+ sizeof(CChatRoomAddRoleToUserResponse),
+ 0,
+ cchat_room__add_role_to_user__response__field_descriptors,
+ cchat_room__add_role_to_user__response__field_indices_by_name,
+ 0, cchat_room__add_role_to_user__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_roles_for_user__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetRolesForUserRequest, has_chat_group_id),
+ offsetof(CChatRoomGetRolesForUserRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomGetRolesForUserRequest, has_steamid),
+ offsetof(CChatRoomGetRolesForUserRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_roles_for_user__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = steamid */
+};
+static const ProtobufCIntRange cchat_room__get_roles_for_user__request__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 3, 1 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_roles_for_user__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetRolesForUser_Request",
+ "CChatRoomGetRolesForUserRequest",
+ "CChatRoomGetRolesForUserRequest",
+ "",
+ sizeof(CChatRoomGetRolesForUserRequest),
+ 2,
+ cchat_room__get_roles_for_user__request__field_descriptors,
+ cchat_room__get_roles_for_user__request__field_indices_by_name,
+ 2, cchat_room__get_roles_for_user__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_roles_for_user__response__field_descriptors[1] =
+{
+ {
+ "role_ids",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetRolesForUserResponse, n_role_ids),
+ offsetof(CChatRoomGetRolesForUserResponse, role_ids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_roles_for_user__response__field_indices_by_name[] = {
+ 0, /* field[0] = role_ids */
+};
+static const ProtobufCIntRange cchat_room__get_roles_for_user__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_roles_for_user__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetRolesForUser_Response",
+ "CChatRoomGetRolesForUserResponse",
+ "CChatRoomGetRolesForUserResponse",
+ "",
+ sizeof(CChatRoomGetRolesForUserResponse),
+ 1,
+ cchat_room__get_roles_for_user__response__field_descriptors,
+ cchat_room__get_roles_for_user__response__field_indices_by_name,
+ 1, cchat_room__get_roles_for_user__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__delete_role_from_user__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomDeleteRoleFromUserRequest, has_chat_group_id),
+ offsetof(CChatRoomDeleteRoleFromUserRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "role_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomDeleteRoleFromUserRequest, has_role_id),
+ offsetof(CChatRoomDeleteRoleFromUserRequest, role_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomDeleteRoleFromUserRequest, has_steamid),
+ offsetof(CChatRoomDeleteRoleFromUserRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__delete_role_from_user__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = role_id */
+ 2, /* field[2] = steamid */
+};
+static const ProtobufCIntRange cchat_room__delete_role_from_user__request__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 3, 1 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__delete_role_from_user__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_DeleteRoleFromUser_Request",
+ "CChatRoomDeleteRoleFromUserRequest",
+ "CChatRoomDeleteRoleFromUserRequest",
+ "",
+ sizeof(CChatRoomDeleteRoleFromUserRequest),
+ 3,
+ cchat_room__delete_role_from_user__request__field_descriptors,
+ cchat_room__delete_role_from_user__request__field_indices_by_name,
+ 2, cchat_room__delete_role_from_user__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__delete_role_from_user__response__field_descriptors NULL
+#define cchat_room__delete_role_from_user__response__field_indices_by_name NULL
+#define cchat_room__delete_role_from_user__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__delete_role_from_user__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_DeleteRoleFromUser_Response",
+ "CChatRoomDeleteRoleFromUserResponse",
+ "CChatRoomDeleteRoleFromUserResponse",
+ "",
+ sizeof(CChatRoomDeleteRoleFromUserResponse),
+ 0,
+ cchat_room__delete_role_from_user__response__field_descriptors,
+ cchat_room__delete_role_from_user__response__field_indices_by_name,
+ 0, cchat_room__delete_role_from_user__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__join_chat_room_group__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomJoinChatRoomGroupRequest, has_chat_group_id),
+ offsetof(CChatRoomJoinChatRoomGroupRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "invite_code",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomJoinChatRoomGroupRequest, invite_code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomJoinChatRoomGroupRequest, has_chat_id),
+ offsetof(CChatRoomJoinChatRoomGroupRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__join_chat_room_group__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 2, /* field[2] = chat_id */
+ 1, /* field[1] = invite_code */
+};
+static const ProtobufCIntRange cchat_room__join_chat_room_group__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__join_chat_room_group__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_JoinChatRoomGroup_Request",
+ "CChatRoomJoinChatRoomGroupRequest",
+ "CChatRoomJoinChatRoomGroupRequest",
+ "",
+ sizeof(CChatRoomJoinChatRoomGroupRequest),
+ 3,
+ cchat_room__join_chat_room_group__request__field_descriptors,
+ cchat_room__join_chat_room_group__request__field_indices_by_name,
+ 1, cchat_room__join_chat_room_group__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__join_chat_room_group__response__field_descriptors[4] =
+{
+ {
+ "state",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomJoinChatRoomGroupResponse, state),
+ &cchat_room_group_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "user_chat_state",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomJoinChatRoomGroupResponse, user_chat_state),
+ &cuser_chat_room_group_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "join_chat_id",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomJoinChatRoomGroupResponse, has_join_chat_id),
+ offsetof(CChatRoomJoinChatRoomGroupResponse, join_chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_expire",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomJoinChatRoomGroupResponse, has_time_expire),
+ offsetof(CChatRoomJoinChatRoomGroupResponse, time_expire),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__join_chat_room_group__response__field_indices_by_name[] = {
+ 2, /* field[2] = join_chat_id */
+ 0, /* field[0] = state */
+ 3, /* field[3] = time_expire */
+ 1, /* field[1] = user_chat_state */
+};
+static const ProtobufCIntRange cchat_room__join_chat_room_group__response__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 3, 1 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cchat_room__join_chat_room_group__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_JoinChatRoomGroup_Response",
+ "CChatRoomJoinChatRoomGroupResponse",
+ "CChatRoomJoinChatRoomGroupResponse",
+ "",
+ sizeof(CChatRoomJoinChatRoomGroupResponse),
+ 4,
+ cchat_room__join_chat_room_group__response__field_descriptors,
+ cchat_room__join_chat_room_group__response__field_indices_by_name,
+ 2, cchat_room__join_chat_room_group__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__invite_friend_to_chat_room_group__request__field_descriptors[4] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomInviteFriendToChatRoomGroupRequest, has_chat_group_id),
+ offsetof(CChatRoomInviteFriendToChatRoomGroupRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomInviteFriendToChatRoomGroupRequest, has_steamid),
+ offsetof(CChatRoomInviteFriendToChatRoomGroupRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomInviteFriendToChatRoomGroupRequest, has_chat_id),
+ offsetof(CChatRoomInviteFriendToChatRoomGroupRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "skip_friendsui_check",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomInviteFriendToChatRoomGroupRequest, has_skip_friendsui_check),
+ offsetof(CChatRoomInviteFriendToChatRoomGroupRequest, skip_friendsui_check),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__invite_friend_to_chat_room_group__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 2, /* field[2] = chat_id */
+ 3, /* field[3] = skip_friendsui_check */
+ 1, /* field[1] = steamid */
+};
+static const ProtobufCIntRange cchat_room__invite_friend_to_chat_room_group__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cchat_room__invite_friend_to_chat_room_group__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_InviteFriendToChatRoomGroup_Request",
+ "CChatRoomInviteFriendToChatRoomGroupRequest",
+ "CChatRoomInviteFriendToChatRoomGroupRequest",
+ "",
+ sizeof(CChatRoomInviteFriendToChatRoomGroupRequest),
+ 4,
+ cchat_room__invite_friend_to_chat_room_group__request__field_descriptors,
+ cchat_room__invite_friend_to_chat_room_group__request__field_indices_by_name,
+ 1, cchat_room__invite_friend_to_chat_room_group__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__invite_friend_to_chat_room_group__response__field_descriptors NULL
+#define cchat_room__invite_friend_to_chat_room_group__response__field_indices_by_name NULL
+#define cchat_room__invite_friend_to_chat_room_group__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__invite_friend_to_chat_room_group__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_InviteFriendToChatRoomGroup_Response",
+ "CChatRoomInviteFriendToChatRoomGroupResponse",
+ "CChatRoomInviteFriendToChatRoomGroupResponse",
+ "",
+ sizeof(CChatRoomInviteFriendToChatRoomGroupResponse),
+ 0,
+ cchat_room__invite_friend_to_chat_room_group__response__field_descriptors,
+ cchat_room__invite_friend_to_chat_room_group__response__field_indices_by_name,
+ 0, cchat_room__invite_friend_to_chat_room_group__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__leave_chat_room_group__request__field_descriptors[1] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomLeaveChatRoomGroupRequest, has_chat_group_id),
+ offsetof(CChatRoomLeaveChatRoomGroupRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__leave_chat_room_group__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+};
+static const ProtobufCIntRange cchat_room__leave_chat_room_group__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__leave_chat_room_group__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_LeaveChatRoomGroup_Request",
+ "CChatRoomLeaveChatRoomGroupRequest",
+ "CChatRoomLeaveChatRoomGroupRequest",
+ "",
+ sizeof(CChatRoomLeaveChatRoomGroupRequest),
+ 1,
+ cchat_room__leave_chat_room_group__request__field_descriptors,
+ cchat_room__leave_chat_room_group__request__field_indices_by_name,
+ 1, cchat_room__leave_chat_room_group__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__leave_chat_room_group__response__field_descriptors NULL
+#define cchat_room__leave_chat_room_group__response__field_indices_by_name NULL
+#define cchat_room__leave_chat_room_group__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__leave_chat_room_group__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_LeaveChatRoomGroup_Response",
+ "CChatRoomLeaveChatRoomGroupResponse",
+ "CChatRoomLeaveChatRoomGroupResponse",
+ "",
+ sizeof(CChatRoomLeaveChatRoomGroupResponse),
+ 0,
+ cchat_room__leave_chat_room_group__response__field_descriptors,
+ cchat_room__leave_chat_room_group__response__field_indices_by_name,
+ 0, cchat_room__leave_chat_room_group__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__create_chat_room__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomCreateChatRoomRequest, has_chat_group_id),
+ offsetof(CChatRoomCreateChatRoomRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomCreateChatRoomRequest, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "allow_voice",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomCreateChatRoomRequest, has_allow_voice),
+ offsetof(CChatRoomCreateChatRoomRequest, allow_voice),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__create_chat_room__request__field_indices_by_name[] = {
+ 2, /* field[2] = allow_voice */
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = name */
+};
+static const ProtobufCIntRange cchat_room__create_chat_room__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__create_chat_room__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_CreateChatRoom_Request",
+ "CChatRoomCreateChatRoomRequest",
+ "CChatRoomCreateChatRoomRequest",
+ "",
+ sizeof(CChatRoomCreateChatRoomRequest),
+ 3,
+ cchat_room__create_chat_room__request__field_descriptors,
+ cchat_room__create_chat_room__request__field_indices_by_name,
+ 1, cchat_room__create_chat_room__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__create_chat_room__response__field_descriptors[1] =
+{
+ {
+ "chat_room",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomCreateChatRoomResponse, chat_room),
+ &cchat_room_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__create_chat_room__response__field_indices_by_name[] = {
+ 0, /* field[0] = chat_room */
+};
+static const ProtobufCIntRange cchat_room__create_chat_room__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__create_chat_room__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_CreateChatRoom_Response",
+ "CChatRoomCreateChatRoomResponse",
+ "CChatRoomCreateChatRoomResponse",
+ "",
+ sizeof(CChatRoomCreateChatRoomResponse),
+ 1,
+ cchat_room__create_chat_room__response__field_descriptors,
+ cchat_room__create_chat_room__response__field_indices_by_name,
+ 1, cchat_room__create_chat_room__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__delete_chat_room__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomDeleteChatRoomRequest, has_chat_group_id),
+ offsetof(CChatRoomDeleteChatRoomRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomDeleteChatRoomRequest, has_chat_id),
+ offsetof(CChatRoomDeleteChatRoomRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__delete_chat_room__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+};
+static const ProtobufCIntRange cchat_room__delete_chat_room__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__delete_chat_room__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_DeleteChatRoom_Request",
+ "CChatRoomDeleteChatRoomRequest",
+ "CChatRoomDeleteChatRoomRequest",
+ "",
+ sizeof(CChatRoomDeleteChatRoomRequest),
+ 2,
+ cchat_room__delete_chat_room__request__field_descriptors,
+ cchat_room__delete_chat_room__request__field_indices_by_name,
+ 1, cchat_room__delete_chat_room__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__delete_chat_room__response__field_descriptors NULL
+#define cchat_room__delete_chat_room__response__field_indices_by_name NULL
+#define cchat_room__delete_chat_room__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__delete_chat_room__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_DeleteChatRoom_Response",
+ "CChatRoomDeleteChatRoomResponse",
+ "CChatRoomDeleteChatRoomResponse",
+ "",
+ sizeof(CChatRoomDeleteChatRoomResponse),
+ 0,
+ cchat_room__delete_chat_room__response__field_descriptors,
+ cchat_room__delete_chat_room__response__field_indices_by_name,
+ 0, cchat_room__delete_chat_room__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__rename_chat_room__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomRenameChatRoomRequest, has_chat_group_id),
+ offsetof(CChatRoomRenameChatRoomRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomRenameChatRoomRequest, has_chat_id),
+ offsetof(CChatRoomRenameChatRoomRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "name",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomRenameChatRoomRequest, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__rename_chat_room__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+ 2, /* field[2] = name */
+};
+static const ProtobufCIntRange cchat_room__rename_chat_room__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__rename_chat_room__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_RenameChatRoom_Request",
+ "CChatRoomRenameChatRoomRequest",
+ "CChatRoomRenameChatRoomRequest",
+ "",
+ sizeof(CChatRoomRenameChatRoomRequest),
+ 3,
+ cchat_room__rename_chat_room__request__field_descriptors,
+ cchat_room__rename_chat_room__request__field_indices_by_name,
+ 1, cchat_room__rename_chat_room__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__rename_chat_room__response__field_descriptors NULL
+#define cchat_room__rename_chat_room__response__field_indices_by_name NULL
+#define cchat_room__rename_chat_room__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__rename_chat_room__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_RenameChatRoom_Response",
+ "CChatRoomRenameChatRoomResponse",
+ "CChatRoomRenameChatRoomResponse",
+ "",
+ sizeof(CChatRoomRenameChatRoomResponse),
+ 0,
+ cchat_room__rename_chat_room__response__field_descriptors,
+ cchat_room__rename_chat_room__response__field_indices_by_name,
+ 0, cchat_room__rename_chat_room__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__reorder_chat_room__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomReorderChatRoomRequest, has_chat_group_id),
+ offsetof(CChatRoomReorderChatRoomRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomReorderChatRoomRequest, has_chat_id),
+ offsetof(CChatRoomReorderChatRoomRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "move_after_chat_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomReorderChatRoomRequest, has_move_after_chat_id),
+ offsetof(CChatRoomReorderChatRoomRequest, move_after_chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__reorder_chat_room__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+ 2, /* field[2] = move_after_chat_id */
+};
+static const ProtobufCIntRange cchat_room__reorder_chat_room__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__reorder_chat_room__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_ReorderChatRoom_Request",
+ "CChatRoomReorderChatRoomRequest",
+ "CChatRoomReorderChatRoomRequest",
+ "",
+ sizeof(CChatRoomReorderChatRoomRequest),
+ 3,
+ cchat_room__reorder_chat_room__request__field_descriptors,
+ cchat_room__reorder_chat_room__request__field_indices_by_name,
+ 1, cchat_room__reorder_chat_room__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__reorder_chat_room__response__field_descriptors NULL
+#define cchat_room__reorder_chat_room__response__field_indices_by_name NULL
+#define cchat_room__reorder_chat_room__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__reorder_chat_room__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_ReorderChatRoom_Response",
+ "CChatRoomReorderChatRoomResponse",
+ "CChatRoomReorderChatRoomResponse",
+ "",
+ sizeof(CChatRoomReorderChatRoomResponse),
+ 0,
+ cchat_room__reorder_chat_room__response__field_descriptors,
+ cchat_room__reorder_chat_room__response__field_indices_by_name,
+ 0, cchat_room__reorder_chat_room__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__send_chat_message__request__field_descriptors[4] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSendChatMessageRequest, has_chat_group_id),
+ offsetof(CChatRoomSendChatMessageRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSendChatMessageRequest, has_chat_id),
+ offsetof(CChatRoomSendChatMessageRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomSendChatMessageRequest, message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "echo_to_sender",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomSendChatMessageRequest, has_echo_to_sender),
+ offsetof(CChatRoomSendChatMessageRequest, echo_to_sender),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__send_chat_message__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+ 3, /* field[3] = echo_to_sender */
+ 2, /* field[2] = message */
+};
+static const ProtobufCIntRange cchat_room__send_chat_message__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cchat_room__send_chat_message__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SendChatMessage_Request",
+ "CChatRoomSendChatMessageRequest",
+ "CChatRoomSendChatMessageRequest",
+ "",
+ sizeof(CChatRoomSendChatMessageRequest),
+ 4,
+ cchat_room__send_chat_message__request__field_descriptors,
+ cchat_room__send_chat_message__request__field_indices_by_name,
+ 1, cchat_room__send_chat_message__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__send_chat_message__response__field_descriptors[4] =
+{
+ {
+ "modified_message",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomSendChatMessageResponse, modified_message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "server_timestamp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomSendChatMessageResponse, has_server_timestamp),
+ offsetof(CChatRoomSendChatMessageResponse, server_timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomSendChatMessageResponse, has_ordinal),
+ offsetof(CChatRoomSendChatMessageResponse, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message_without_bb_code",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomSendChatMessageResponse, message_without_bb_code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__send_chat_message__response__field_indices_by_name[] = {
+ 3, /* field[3] = message_without_bb_code */
+ 0, /* field[0] = modified_message */
+ 2, /* field[2] = ordinal */
+ 1, /* field[1] = server_timestamp */
+};
+static const ProtobufCIntRange cchat_room__send_chat_message__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cchat_room__send_chat_message__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SendChatMessage_Response",
+ "CChatRoomSendChatMessageResponse",
+ "CChatRoomSendChatMessageResponse",
+ "",
+ sizeof(CChatRoomSendChatMessageResponse),
+ 4,
+ cchat_room__send_chat_message__response__field_descriptors,
+ cchat_room__send_chat_message__response__field_indices_by_name,
+ 1, cchat_room__send_chat_message__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__join_voice_chat__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomJoinVoiceChatRequest, has_chat_group_id),
+ offsetof(CChatRoomJoinVoiceChatRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomJoinVoiceChatRequest, has_chat_id),
+ offsetof(CChatRoomJoinVoiceChatRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__join_voice_chat__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+};
+static const ProtobufCIntRange cchat_room__join_voice_chat__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__join_voice_chat__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_JoinVoiceChat_Request",
+ "CChatRoomJoinVoiceChatRequest",
+ "CChatRoomJoinVoiceChatRequest",
+ "",
+ sizeof(CChatRoomJoinVoiceChatRequest),
+ 2,
+ cchat_room__join_voice_chat__request__field_descriptors,
+ cchat_room__join_voice_chat__request__field_indices_by_name,
+ 1, cchat_room__join_voice_chat__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__join_voice_chat__response__field_descriptors[1] =
+{
+ {
+ "voice_chatid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomJoinVoiceChatResponse, has_voice_chatid),
+ offsetof(CChatRoomJoinVoiceChatResponse, voice_chatid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__join_voice_chat__response__field_indices_by_name[] = {
+ 0, /* field[0] = voice_chatid */
+};
+static const ProtobufCIntRange cchat_room__join_voice_chat__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__join_voice_chat__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_JoinVoiceChat_Response",
+ "CChatRoomJoinVoiceChatResponse",
+ "CChatRoomJoinVoiceChatResponse",
+ "",
+ sizeof(CChatRoomJoinVoiceChatResponse),
+ 1,
+ cchat_room__join_voice_chat__response__field_descriptors,
+ cchat_room__join_voice_chat__response__field_indices_by_name,
+ 1, cchat_room__join_voice_chat__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__leave_voice_chat__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomLeaveVoiceChatRequest, has_chat_group_id),
+ offsetof(CChatRoomLeaveVoiceChatRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomLeaveVoiceChatRequest, has_chat_id),
+ offsetof(CChatRoomLeaveVoiceChatRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__leave_voice_chat__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+};
+static const ProtobufCIntRange cchat_room__leave_voice_chat__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__leave_voice_chat__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_LeaveVoiceChat_Request",
+ "CChatRoomLeaveVoiceChatRequest",
+ "CChatRoomLeaveVoiceChatRequest",
+ "",
+ sizeof(CChatRoomLeaveVoiceChatRequest),
+ 2,
+ cchat_room__leave_voice_chat__request__field_descriptors,
+ cchat_room__leave_voice_chat__request__field_indices_by_name,
+ 1, cchat_room__leave_voice_chat__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__leave_voice_chat__response__field_descriptors NULL
+#define cchat_room__leave_voice_chat__response__field_indices_by_name NULL
+#define cchat_room__leave_voice_chat__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__leave_voice_chat__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_LeaveVoiceChat_Response",
+ "CChatRoomLeaveVoiceChatResponse",
+ "CChatRoomLeaveVoiceChatResponse",
+ "",
+ sizeof(CChatRoomLeaveVoiceChatResponse),
+ 0,
+ cchat_room__leave_voice_chat__response__field_descriptors,
+ cchat_room__leave_voice_chat__response__field_indices_by_name,
+ 0, cchat_room__leave_voice_chat__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_message_history__request__field_descriptors[7] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetMessageHistoryRequest, has_chat_group_id),
+ offsetof(CChatRoomGetMessageHistoryRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetMessageHistoryRequest, has_chat_id),
+ offsetof(CChatRoomGetMessageHistoryRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_time",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetMessageHistoryRequest, has_last_time),
+ offsetof(CChatRoomGetMessageHistoryRequest, last_time),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_ordinal",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetMessageHistoryRequest, has_last_ordinal),
+ offsetof(CChatRoomGetMessageHistoryRequest, last_ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "start_time",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetMessageHistoryRequest, has_start_time),
+ offsetof(CChatRoomGetMessageHistoryRequest, start_time),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "start_ordinal",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetMessageHistoryRequest, has_start_ordinal),
+ offsetof(CChatRoomGetMessageHistoryRequest, start_ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "max_count",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetMessageHistoryRequest, has_max_count),
+ offsetof(CChatRoomGetMessageHistoryRequest, max_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_message_history__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+ 3, /* field[3] = last_ordinal */
+ 2, /* field[2] = last_time */
+ 6, /* field[6] = max_count */
+ 5, /* field[5] = start_ordinal */
+ 4, /* field[4] = start_time */
+};
+static const ProtobufCIntRange cchat_room__get_message_history__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_message_history__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetMessageHistory_Request",
+ "CChatRoomGetMessageHistoryRequest",
+ "CChatRoomGetMessageHistoryRequest",
+ "",
+ sizeof(CChatRoomGetMessageHistoryRequest),
+ 7,
+ cchat_room__get_message_history__request__field_descriptors,
+ cchat_room__get_message_history__request__field_indices_by_name,
+ 1, cchat_room__get_message_history__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EChatRoomServerMessage server_message__message__default_value = ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_Invalid;
+static const ProtobufCFieldDescriptor server_message__field_descriptors[3] =
+{
+ {
+ "message",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(ServerMessage, has_message),
+ offsetof(ServerMessage, message),
+ &echat_room_server_message__descriptor,
+ &server_message__message__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "string_param",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(ServerMessage, string_param),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "accountid_param",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(ServerMessage, has_accountid_param),
+ offsetof(ServerMessage, accountid_param),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned server_message__field_indices_by_name[] = {
+ 2, /* field[2] = accountid_param */
+ 0, /* field[0] = message */
+ 1, /* field[1] = string_param */
+};
+static const ProtobufCIntRange server_message__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor server_message__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ServerMessage",
+ "ServerMessage",
+ "ServerMessage",
+ "",
+ sizeof(ServerMessage),
+ 3,
+ server_message__field_descriptors,
+ server_message__field_indices_by_name,
+ 1, server_message__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EChatRoomMessageReactionType cchat_room__get_message_history__response__chat_message__message_reaction__reaction_type__default_value = ECHAT_ROOM_MESSAGE_REACTION_TYPE__k_EChatRoomMessageReactionType_Invalid;
+static const ProtobufCFieldDescriptor cchat_room__get_message_history__response__chat_message__message_reaction__field_descriptors[4] =
+{
+ {
+ "reaction_type",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction, has_reaction_type),
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction, reaction_type),
+ &echat_room_message_reaction_type__descriptor,
+ &cchat_room__get_message_history__response__chat_message__message_reaction__reaction_type__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reaction",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction, reaction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "num_reactors",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction, has_num_reactors),
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction, num_reactors),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "has_user_reacted",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction, has_has_user_reacted),
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction, has_user_reacted),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_message_history__response__chat_message__message_reaction__field_indices_by_name[] = {
+ 3, /* field[3] = has_user_reacted */
+ 2, /* field[2] = num_reactors */
+ 1, /* field[1] = reaction */
+ 0, /* field[0] = reaction_type */
+};
+static const ProtobufCIntRange cchat_room__get_message_history__response__chat_message__message_reaction__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_message_history__response__chat_message__message_reaction__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetMessageHistory_Response.ChatMessage.MessageReaction",
+ "MessageReaction",
+ "CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction",
+ "",
+ sizeof(CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction),
+ 4,
+ cchat_room__get_message_history__response__chat_message__message_reaction__field_descriptors,
+ cchat_room__get_message_history__response__chat_message__message_reaction__field_indices_by_name,
+ 1, cchat_room__get_message_history__response__chat_message__message_reaction__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_message_history__response__chat_message__field_descriptors[7] =
+{
+ {
+ "sender",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage, has_sender),
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage, sender),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "server_timestamp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage, has_server_timestamp),
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage, server_timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage, message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage, has_ordinal),
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "server_message",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage, server_message),
+ &server_message__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "deleted",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage, has_deleted),
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage, deleted),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reactions",
+ 7,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage, n_reactions),
+ offsetof(CChatRoomGetMessageHistoryResponse__ChatMessage, reactions),
+ &cchat_room__get_message_history__response__chat_message__message_reaction__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_message_history__response__chat_message__field_indices_by_name[] = {
+ 5, /* field[5] = deleted */
+ 2, /* field[2] = message */
+ 3, /* field[3] = ordinal */
+ 6, /* field[6] = reactions */
+ 0, /* field[0] = sender */
+ 4, /* field[4] = server_message */
+ 1, /* field[1] = server_timestamp */
+};
+static const ProtobufCIntRange cchat_room__get_message_history__response__chat_message__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_message_history__response__chat_message__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetMessageHistory_Response.ChatMessage",
+ "ChatMessage",
+ "CChatRoomGetMessageHistoryResponse__ChatMessage",
+ "",
+ sizeof(CChatRoomGetMessageHistoryResponse__ChatMessage),
+ 7,
+ cchat_room__get_message_history__response__chat_message__field_descriptors,
+ cchat_room__get_message_history__response__chat_message__field_indices_by_name,
+ 1, cchat_room__get_message_history__response__chat_message__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_message_history__response__field_descriptors[2] =
+{
+ {
+ "messages",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGetMessageHistoryResponse, n_messages),
+ offsetof(CChatRoomGetMessageHistoryResponse, messages),
+ &cchat_room__get_message_history__response__chat_message__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "more_available",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomGetMessageHistoryResponse, has_more_available),
+ offsetof(CChatRoomGetMessageHistoryResponse, more_available),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_message_history__response__field_indices_by_name[] = {
+ 0, /* field[0] = messages */
+ 1, /* field[1] = more_available */
+};
+static const ProtobufCIntRange cchat_room__get_message_history__response__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 4, 1 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_message_history__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetMessageHistory_Response",
+ "CChatRoomGetMessageHistoryResponse",
+ "CChatRoomGetMessageHistoryResponse",
+ "",
+ sizeof(CChatRoomGetMessageHistoryResponse),
+ 2,
+ cchat_room__get_message_history__response__field_descriptors,
+ cchat_room__get_message_history__response__field_indices_by_name,
+ 2, cchat_room__get_message_history__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__get_my_chat_room_groups__request__field_descriptors NULL
+#define cchat_room__get_my_chat_room_groups__request__field_indices_by_name NULL
+#define cchat_room__get_my_chat_room_groups__request__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__get_my_chat_room_groups__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetMyChatRoomGroups_Request",
+ "CChatRoomGetMyChatRoomGroupsRequest",
+ "CChatRoomGetMyChatRoomGroupsRequest",
+ "",
+ sizeof(CChatRoomGetMyChatRoomGroupsRequest),
+ 0,
+ cchat_room__get_my_chat_room_groups__request__field_descriptors,
+ cchat_room__get_my_chat_room_groups__request__field_indices_by_name,
+ 0, cchat_room__get_my_chat_room_groups__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EChatRoomGroupRank cchat_room__get_chat_room_group_summary__response__rank__default_value = ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Default;
+static const ProtobufCFieldDescriptor cchat_room__get_chat_room_group_summary__response__field_descriptors[22] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, has_chat_group_id),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_group_name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, chat_group_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "active_member_count",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, has_active_member_count),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, active_member_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "active_voice_member_count",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, has_active_voice_member_count),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, active_voice_member_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "default_chat_id",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, has_default_chat_id),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, default_chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_rooms",
+ 6,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, n_chat_rooms),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, chat_rooms),
+ &cchat_room_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "clanid",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, has_clanid),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, clanid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_group_tagline",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, chat_group_tagline),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "accountid_owner",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, has_accountid_owner),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, accountid_owner),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "top_members",
+ 10,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, n_top_members),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, top_members),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_group_avatar_sha",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, has_chat_group_avatar_sha),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, chat_group_avatar_sha),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "rank",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, has_rank),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, rank),
+ &echat_room_group_rank__descriptor,
+ &cchat_room__get_chat_room_group_summary__response__rank__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "default_role_id",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, has_default_role_id),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, default_role_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "role_ids",
+ 14,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, n_role_ids),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, role_ids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "role_actions",
+ 15,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, n_role_actions),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, role_actions),
+ &cchat_role_actions__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "watching_broadcast_accountid",
+ 16,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, has_watching_broadcast_accountid),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, watching_broadcast_accountid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "appid",
+ 17,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, has_appid),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "party_beacons",
+ 18,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, n_party_beacons),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, party_beacons),
+ &cchat_party_beacon__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "watching_broadcast_channel_id",
+ 19,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, has_watching_broadcast_channel_id),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, watching_broadcast_channel_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "active_minigame_id",
+ 20,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, has_active_minigame_id),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, active_minigame_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "avatar_ugc_url",
+ 21,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, avatar_ugc_url),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "disabled",
+ 22,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, has_disabled),
+ offsetof(CChatRoomGetChatRoomGroupSummaryResponse, disabled),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_chat_room_group_summary__response__field_indices_by_name[] = {
+ 8, /* field[8] = accountid_owner */
+ 2, /* field[2] = active_member_count */
+ 19, /* field[19] = active_minigame_id */
+ 3, /* field[3] = active_voice_member_count */
+ 16, /* field[16] = appid */
+ 20, /* field[20] = avatar_ugc_url */
+ 10, /* field[10] = chat_group_avatar_sha */
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_group_name */
+ 7, /* field[7] = chat_group_tagline */
+ 5, /* field[5] = chat_rooms */
+ 6, /* field[6] = clanid */
+ 4, /* field[4] = default_chat_id */
+ 12, /* field[12] = default_role_id */
+ 21, /* field[21] = disabled */
+ 17, /* field[17] = party_beacons */
+ 11, /* field[11] = rank */
+ 14, /* field[14] = role_actions */
+ 13, /* field[13] = role_ids */
+ 9, /* field[9] = top_members */
+ 15, /* field[15] = watching_broadcast_accountid */
+ 18, /* field[18] = watching_broadcast_channel_id */
+};
+static const ProtobufCIntRange cchat_room__get_chat_room_group_summary__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 22 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_chat_room_group_summary__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetChatRoomGroupSummary_Response",
+ "CChatRoomGetChatRoomGroupSummaryResponse",
+ "CChatRoomGetChatRoomGroupSummaryResponse",
+ "",
+ sizeof(CChatRoomGetChatRoomGroupSummaryResponse),
+ 22,
+ cchat_room__get_chat_room_group_summary__response__field_descriptors,
+ cchat_room__get_chat_room_group_summary__response__field_indices_by_name,
+ 1, cchat_room__get_chat_room_group_summary__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room_summary_pair__field_descriptors[2] =
+{
+ {
+ "user_chat_group_state",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomSummaryPair, user_chat_group_state),
+ &cuser_chat_room_group_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "group_summary",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomSummaryPair, group_summary),
+ &cchat_room__get_chat_room_group_summary__response__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room_summary_pair__field_indices_by_name[] = {
+ 1, /* field[1] = group_summary */
+ 0, /* field[0] = user_chat_group_state */
+};
+static const ProtobufCIntRange cchat_room_summary_pair__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room_summary_pair__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoomSummaryPair",
+ "CChatRoomSummaryPair",
+ "CChatRoomSummaryPair",
+ "",
+ sizeof(CChatRoomSummaryPair),
+ 2,
+ cchat_room_summary_pair__field_descriptors,
+ cchat_room_summary_pair__field_indices_by_name,
+ 1, cchat_room_summary_pair__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_my_chat_room_groups__response__field_descriptors[1] =
+{
+ {
+ "chat_room_groups",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGetMyChatRoomGroupsResponse, n_chat_room_groups),
+ offsetof(CChatRoomGetMyChatRoomGroupsResponse, chat_room_groups),
+ &cchat_room_summary_pair__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_my_chat_room_groups__response__field_indices_by_name[] = {
+ 0, /* field[0] = chat_room_groups */
+};
+static const ProtobufCIntRange cchat_room__get_my_chat_room_groups__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_my_chat_room_groups__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetMyChatRoomGroups_Response",
+ "CChatRoomGetMyChatRoomGroupsResponse",
+ "CChatRoomGetMyChatRoomGroupsResponse",
+ "",
+ sizeof(CChatRoomGetMyChatRoomGroupsResponse),
+ 1,
+ cchat_room__get_my_chat_room_groups__response__field_descriptors,
+ cchat_room__get_my_chat_room_groups__response__field_indices_by_name,
+ 1, cchat_room__get_my_chat_room_groups__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_chat_room_group_state__request__field_descriptors[1] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetChatRoomGroupStateRequest, has_chat_group_id),
+ offsetof(CChatRoomGetChatRoomGroupStateRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_chat_room_group_state__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+};
+static const ProtobufCIntRange cchat_room__get_chat_room_group_state__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_chat_room_group_state__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetChatRoomGroupState_Request",
+ "CChatRoomGetChatRoomGroupStateRequest",
+ "CChatRoomGetChatRoomGroupStateRequest",
+ "",
+ sizeof(CChatRoomGetChatRoomGroupStateRequest),
+ 1,
+ cchat_room__get_chat_room_group_state__request__field_descriptors,
+ cchat_room__get_chat_room_group_state__request__field_indices_by_name,
+ 1, cchat_room__get_chat_room_group_state__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_chat_room_group_state__response__field_descriptors[1] =
+{
+ {
+ "state",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetChatRoomGroupStateResponse, state),
+ &cchat_room_group_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_chat_room_group_state__response__field_indices_by_name[] = {
+ 0, /* field[0] = state */
+};
+static const ProtobufCIntRange cchat_room__get_chat_room_group_state__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_chat_room_group_state__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetChatRoomGroupState_Response",
+ "CChatRoomGetChatRoomGroupStateResponse",
+ "CChatRoomGetChatRoomGroupStateResponse",
+ "",
+ sizeof(CChatRoomGetChatRoomGroupStateResponse),
+ 1,
+ cchat_room__get_chat_room_group_state__response__field_descriptors,
+ cchat_room__get_chat_room_group_state__response__field_indices_by_name,
+ 1, cchat_room__get_chat_room_group_state__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_chat_room_group_summary__request__field_descriptors[1] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetChatRoomGroupSummaryRequest, has_chat_group_id),
+ offsetof(CChatRoomGetChatRoomGroupSummaryRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_chat_room_group_summary__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+};
+static const ProtobufCIntRange cchat_room__get_chat_room_group_summary__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_chat_room_group_summary__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetChatRoomGroupSummary_Request",
+ "CChatRoomGetChatRoomGroupSummaryRequest",
+ "CChatRoomGetChatRoomGroupSummaryRequest",
+ "",
+ sizeof(CChatRoomGetChatRoomGroupSummaryRequest),
+ 1,
+ cchat_room__get_chat_room_group_summary__request__field_descriptors,
+ cchat_room__get_chat_room_group_summary__request__field_indices_by_name,
+ 1, cchat_room__get_chat_room_group_summary__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__set_app_chat_room_group_force_active__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSetAppChatRoomGroupForceActiveRequest, has_chat_group_id),
+ offsetof(CChatRoomSetAppChatRoomGroupForceActiveRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "requesting_app_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomSetAppChatRoomGroupForceActiveRequest, has_requesting_app_id),
+ offsetof(CChatRoomSetAppChatRoomGroupForceActiveRequest, requesting_app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__set_app_chat_room_group_force_active__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = requesting_app_id */
+};
+static const ProtobufCIntRange cchat_room__set_app_chat_room_group_force_active__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__set_app_chat_room_group_force_active__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetAppChatRoomGroupForceActive_Request",
+ "CChatRoomSetAppChatRoomGroupForceActiveRequest",
+ "CChatRoomSetAppChatRoomGroupForceActiveRequest",
+ "",
+ sizeof(CChatRoomSetAppChatRoomGroupForceActiveRequest),
+ 2,
+ cchat_room__set_app_chat_room_group_force_active__request__field_descriptors,
+ cchat_room__set_app_chat_room_group_force_active__request__field_indices_by_name,
+ 1, cchat_room__set_app_chat_room_group_force_active__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__set_app_chat_room_group_force_active__response__field_descriptors[2] =
+{
+ {
+ "result",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomSetAppChatRoomGroupForceActiveResponse, has_result),
+ offsetof(CChatRoomSetAppChatRoomGroupForceActiveResponse, result),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "accounts_in_channel",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomSetAppChatRoomGroupForceActiveResponse, n_accounts_in_channel),
+ offsetof(CChatRoomSetAppChatRoomGroupForceActiveResponse, accounts_in_channel),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__set_app_chat_room_group_force_active__response__field_indices_by_name[] = {
+ 1, /* field[1] = accounts_in_channel */
+ 0, /* field[0] = result */
+};
+static const ProtobufCIntRange cchat_room__set_app_chat_room_group_force_active__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__set_app_chat_room_group_force_active__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetAppChatRoomGroupForceActive_Response",
+ "CChatRoomSetAppChatRoomGroupForceActiveResponse",
+ "CChatRoomSetAppChatRoomGroupForceActiveResponse",
+ "",
+ sizeof(CChatRoomSetAppChatRoomGroupForceActiveResponse),
+ 2,
+ cchat_room__set_app_chat_room_group_force_active__response__field_descriptors,
+ cchat_room__set_app_chat_room_group_force_active__response__field_indices_by_name,
+ 1, cchat_room__set_app_chat_room_group_force_active__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__set_app_chat_room_group_stop_force_active__notification__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSetAppChatRoomGroupStopForceActiveNotification, has_chat_group_id),
+ offsetof(CChatRoomSetAppChatRoomGroupStopForceActiveNotification, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "requesting_app_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomSetAppChatRoomGroupStopForceActiveNotification, has_requesting_app_id),
+ offsetof(CChatRoomSetAppChatRoomGroupStopForceActiveNotification, requesting_app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__set_app_chat_room_group_stop_force_active__notification__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = requesting_app_id */
+};
+static const ProtobufCIntRange cchat_room__set_app_chat_room_group_stop_force_active__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__set_app_chat_room_group_stop_force_active__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetAppChatRoomGroupStopForceActive_Notification",
+ "CChatRoomSetAppChatRoomGroupStopForceActiveNotification",
+ "CChatRoomSetAppChatRoomGroupStopForceActiveNotification",
+ "",
+ sizeof(CChatRoomSetAppChatRoomGroupStopForceActiveNotification),
+ 2,
+ cchat_room__set_app_chat_room_group_stop_force_active__notification__field_descriptors,
+ cchat_room__set_app_chat_room_group_stop_force_active__notification__field_indices_by_name,
+ 1, cchat_room__set_app_chat_room_group_stop_force_active__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__ack_chat_message__notification__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomAckChatMessageNotification, has_chat_group_id),
+ offsetof(CChatRoomAckChatMessageNotification, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomAckChatMessageNotification, has_chat_id),
+ offsetof(CChatRoomAckChatMessageNotification, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "timestamp",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomAckChatMessageNotification, has_timestamp),
+ offsetof(CChatRoomAckChatMessageNotification, timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__ack_chat_message__notification__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+ 2, /* field[2] = timestamp */
+};
+static const ProtobufCIntRange cchat_room__ack_chat_message__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__ack_chat_message__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_AckChatMessage_Notification",
+ "CChatRoomAckChatMessageNotification",
+ "CChatRoomAckChatMessageNotification",
+ "",
+ sizeof(CChatRoomAckChatMessageNotification),
+ 3,
+ cchat_room__ack_chat_message__notification__field_descriptors,
+ cchat_room__ack_chat_message__notification__field_indices_by_name,
+ 1, cchat_room__ack_chat_message__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__create_invite_link__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomCreateInviteLinkRequest, has_chat_group_id),
+ offsetof(CChatRoomCreateInviteLinkRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "seconds_valid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomCreateInviteLinkRequest, has_seconds_valid),
+ offsetof(CChatRoomCreateInviteLinkRequest, seconds_valid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomCreateInviteLinkRequest, has_chat_id),
+ offsetof(CChatRoomCreateInviteLinkRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__create_invite_link__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 2, /* field[2] = chat_id */
+ 1, /* field[1] = seconds_valid */
+};
+static const ProtobufCIntRange cchat_room__create_invite_link__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__create_invite_link__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_CreateInviteLink_Request",
+ "CChatRoomCreateInviteLinkRequest",
+ "CChatRoomCreateInviteLinkRequest",
+ "",
+ sizeof(CChatRoomCreateInviteLinkRequest),
+ 3,
+ cchat_room__create_invite_link__request__field_descriptors,
+ cchat_room__create_invite_link__request__field_indices_by_name,
+ 1, cchat_room__create_invite_link__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__create_invite_link__response__field_descriptors[2] =
+{
+ {
+ "invite_code",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomCreateInviteLinkResponse, invite_code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "seconds_valid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomCreateInviteLinkResponse, has_seconds_valid),
+ offsetof(CChatRoomCreateInviteLinkResponse, seconds_valid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__create_invite_link__response__field_indices_by_name[] = {
+ 0, /* field[0] = invite_code */
+ 1, /* field[1] = seconds_valid */
+};
+static const ProtobufCIntRange cchat_room__create_invite_link__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__create_invite_link__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_CreateInviteLink_Response",
+ "CChatRoomCreateInviteLinkResponse",
+ "CChatRoomCreateInviteLinkResponse",
+ "",
+ sizeof(CChatRoomCreateInviteLinkResponse),
+ 2,
+ cchat_room__create_invite_link__response__field_descriptors,
+ cchat_room__create_invite_link__response__field_indices_by_name,
+ 1, cchat_room__create_invite_link__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_invite_link_info__request__field_descriptors[1] =
+{
+ {
+ "invite_code",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetInviteLinkInfoRequest, invite_code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_invite_link_info__request__field_indices_by_name[] = {
+ 0, /* field[0] = invite_code */
+};
+static const ProtobufCIntRange cchat_room__get_invite_link_info__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_invite_link_info__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetInviteLinkInfo_Request",
+ "CChatRoomGetInviteLinkInfoRequest",
+ "CChatRoomGetInviteLinkInfoRequest",
+ "",
+ sizeof(CChatRoomGetInviteLinkInfoRequest),
+ 1,
+ cchat_room__get_invite_link_info__request__field_descriptors,
+ cchat_room__get_invite_link_info__request__field_indices_by_name,
+ 1, cchat_room__get_invite_link_info__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_invite_link_info__response__field_descriptors[7] =
+{
+ {
+ "steamid_sender",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomGetInviteLinkInfoResponse, has_steamid_sender),
+ offsetof(CChatRoomGetInviteLinkInfoResponse, steamid_sender),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_expires",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetInviteLinkInfoResponse, has_time_expires),
+ offsetof(CChatRoomGetInviteLinkInfoResponse, time_expires),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetInviteLinkInfoResponse, has_chat_id),
+ offsetof(CChatRoomGetInviteLinkInfoResponse, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "group_summary",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetInviteLinkInfoResponse, group_summary),
+ &cchat_room__get_chat_room_group_summary__response__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "user_chat_group_state",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetInviteLinkInfoResponse, user_chat_group_state),
+ &cuser_chat_room_group_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_kick_expire",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetInviteLinkInfoResponse, has_time_kick_expire),
+ offsetof(CChatRoomGetInviteLinkInfoResponse, time_kick_expire),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "banned",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomGetInviteLinkInfoResponse, has_banned),
+ offsetof(CChatRoomGetInviteLinkInfoResponse, banned),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_invite_link_info__response__field_indices_by_name[] = {
+ 6, /* field[6] = banned */
+ 2, /* field[2] = chat_id */
+ 3, /* field[3] = group_summary */
+ 0, /* field[0] = steamid_sender */
+ 1, /* field[1] = time_expires */
+ 5, /* field[5] = time_kick_expire */
+ 4, /* field[4] = user_chat_group_state */
+};
+static const ProtobufCIntRange cchat_room__get_invite_link_info__response__number_ranges[3 + 1] =
+{
+ { 3, 0 },
+ { 6, 2 },
+ { 8, 3 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_invite_link_info__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetInviteLinkInfo_Response",
+ "CChatRoomGetInviteLinkInfoResponse",
+ "CChatRoomGetInviteLinkInfoResponse",
+ "",
+ sizeof(CChatRoomGetInviteLinkInfoResponse),
+ 7,
+ cchat_room__get_invite_link_info__response__field_descriptors,
+ cchat_room__get_invite_link_info__response__field_indices_by_name,
+ 3, cchat_room__get_invite_link_info__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_invite_info__request__field_descriptors[4] =
+{
+ {
+ "steamid_invitee",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomGetInviteInfoRequest, has_steamid_invitee),
+ offsetof(CChatRoomGetInviteInfoRequest, steamid_invitee),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_group_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetInviteInfoRequest, has_chat_group_id),
+ offsetof(CChatRoomGetInviteInfoRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetInviteInfoRequest, has_chat_id),
+ offsetof(CChatRoomGetInviteInfoRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "invite_code",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetInviteInfoRequest, invite_code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_invite_info__request__field_indices_by_name[] = {
+ 1, /* field[1] = chat_group_id */
+ 2, /* field[2] = chat_id */
+ 3, /* field[3] = invite_code */
+ 0, /* field[0] = steamid_invitee */
+};
+static const ProtobufCIntRange cchat_room__get_invite_info__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_invite_info__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetInviteInfo_Request",
+ "CChatRoomGetInviteInfoRequest",
+ "CChatRoomGetInviteInfoRequest",
+ "",
+ sizeof(CChatRoomGetInviteInfoRequest),
+ 4,
+ cchat_room__get_invite_info__request__field_descriptors,
+ cchat_room__get_invite_info__request__field_indices_by_name,
+ 1, cchat_room__get_invite_info__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_invite_info__response__field_descriptors[3] =
+{
+ {
+ "group_summary",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetInviteInfoResponse, group_summary),
+ &cchat_room__get_chat_room_group_summary__response__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_kick_expire",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetInviteInfoResponse, has_time_kick_expire),
+ offsetof(CChatRoomGetInviteInfoResponse, time_kick_expire),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "banned",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomGetInviteInfoResponse, has_banned),
+ offsetof(CChatRoomGetInviteInfoResponse, banned),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_invite_info__response__field_indices_by_name[] = {
+ 2, /* field[2] = banned */
+ 0, /* field[0] = group_summary */
+ 1, /* field[1] = time_kick_expire */
+};
+static const ProtobufCIntRange cchat_room__get_invite_info__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_invite_info__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetInviteInfo_Response",
+ "CChatRoomGetInviteInfoResponse",
+ "CChatRoomGetInviteInfoResponse",
+ "",
+ sizeof(CChatRoomGetInviteInfoResponse),
+ 3,
+ cchat_room__get_invite_info__response__field_descriptors,
+ cchat_room__get_invite_info__response__field_indices_by_name,
+ 1, cchat_room__get_invite_info__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_invite_links_for_group__request__field_descriptors[1] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetInviteLinksForGroupRequest, has_chat_group_id),
+ offsetof(CChatRoomGetInviteLinksForGroupRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_invite_links_for_group__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+};
+static const ProtobufCIntRange cchat_room__get_invite_links_for_group__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_invite_links_for_group__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetInviteLinksForGroup_Request",
+ "CChatRoomGetInviteLinksForGroupRequest",
+ "CChatRoomGetInviteLinksForGroupRequest",
+ "",
+ sizeof(CChatRoomGetInviteLinksForGroupRequest),
+ 1,
+ cchat_room__get_invite_links_for_group__request__field_descriptors,
+ cchat_room__get_invite_links_for_group__request__field_indices_by_name,
+ 1, cchat_room__get_invite_links_for_group__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_invite_links_for_group__response__link_info__field_descriptors[4] =
+{
+ {
+ "invite_code",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetInviteLinksForGroupResponse__LinkInfo, invite_code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid_creator",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomGetInviteLinksForGroupResponse__LinkInfo, has_steamid_creator),
+ offsetof(CChatRoomGetInviteLinksForGroupResponse__LinkInfo, steamid_creator),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_expires",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetInviteLinksForGroupResponse__LinkInfo, has_time_expires),
+ offsetof(CChatRoomGetInviteLinksForGroupResponse__LinkInfo, time_expires),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetInviteLinksForGroupResponse__LinkInfo, has_chat_id),
+ offsetof(CChatRoomGetInviteLinksForGroupResponse__LinkInfo, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_invite_links_for_group__response__link_info__field_indices_by_name[] = {
+ 3, /* field[3] = chat_id */
+ 0, /* field[0] = invite_code */
+ 1, /* field[1] = steamid_creator */
+ 2, /* field[2] = time_expires */
+};
+static const ProtobufCIntRange cchat_room__get_invite_links_for_group__response__link_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_invite_links_for_group__response__link_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetInviteLinksForGroup_Response.LinkInfo",
+ "LinkInfo",
+ "CChatRoomGetInviteLinksForGroupResponse__LinkInfo",
+ "",
+ sizeof(CChatRoomGetInviteLinksForGroupResponse__LinkInfo),
+ 4,
+ cchat_room__get_invite_links_for_group__response__link_info__field_descriptors,
+ cchat_room__get_invite_links_for_group__response__link_info__field_indices_by_name,
+ 1, cchat_room__get_invite_links_for_group__response__link_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_invite_links_for_group__response__field_descriptors[1] =
+{
+ {
+ "invite_links",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGetInviteLinksForGroupResponse, n_invite_links),
+ offsetof(CChatRoomGetInviteLinksForGroupResponse, invite_links),
+ &cchat_room__get_invite_links_for_group__response__link_info__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_invite_links_for_group__response__field_indices_by_name[] = {
+ 0, /* field[0] = invite_links */
+};
+static const ProtobufCIntRange cchat_room__get_invite_links_for_group__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_invite_links_for_group__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetInviteLinksForGroup_Response",
+ "CChatRoomGetInviteLinksForGroupResponse",
+ "CChatRoomGetInviteLinksForGroupResponse",
+ "",
+ sizeof(CChatRoomGetInviteLinksForGroupResponse),
+ 1,
+ cchat_room__get_invite_links_for_group__response__field_descriptors,
+ cchat_room__get_invite_links_for_group__response__field_indices_by_name,
+ 1, cchat_room__get_invite_links_for_group__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_ban_list__request__field_descriptors[1] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetBanListRequest, has_chat_group_id),
+ offsetof(CChatRoomGetBanListRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_ban_list__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+};
+static const ProtobufCIntRange cchat_room__get_ban_list__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_ban_list__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetBanList_Request",
+ "CChatRoomGetBanListRequest",
+ "CChatRoomGetBanListRequest",
+ "",
+ sizeof(CChatRoomGetBanListRequest),
+ 1,
+ cchat_room__get_ban_list__request__field_descriptors,
+ cchat_room__get_ban_list__request__field_indices_by_name,
+ 1, cchat_room__get_ban_list__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_ban_list__response__ban_info__field_descriptors[4] =
+{
+ {
+ "accountid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetBanListResponse__BanInfo, has_accountid),
+ offsetof(CChatRoomGetBanListResponse__BanInfo, accountid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "accountid_actor",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetBanListResponse__BanInfo, has_accountid_actor),
+ offsetof(CChatRoomGetBanListResponse__BanInfo, accountid_actor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_banned",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetBanListResponse__BanInfo, has_time_banned),
+ offsetof(CChatRoomGetBanListResponse__BanInfo, time_banned),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ban_reason",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetBanListResponse__BanInfo, ban_reason),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_ban_list__response__ban_info__field_indices_by_name[] = {
+ 0, /* field[0] = accountid */
+ 1, /* field[1] = accountid_actor */
+ 3, /* field[3] = ban_reason */
+ 2, /* field[2] = time_banned */
+};
+static const ProtobufCIntRange cchat_room__get_ban_list__response__ban_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_ban_list__response__ban_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetBanList_Response.BanInfo",
+ "BanInfo",
+ "CChatRoomGetBanListResponse__BanInfo",
+ "",
+ sizeof(CChatRoomGetBanListResponse__BanInfo),
+ 4,
+ cchat_room__get_ban_list__response__ban_info__field_descriptors,
+ cchat_room__get_ban_list__response__ban_info__field_indices_by_name,
+ 1, cchat_room__get_ban_list__response__ban_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_ban_list__response__field_descriptors[1] =
+{
+ {
+ "bans",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGetBanListResponse, n_bans),
+ offsetof(CChatRoomGetBanListResponse, bans),
+ &cchat_room__get_ban_list__response__ban_info__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_ban_list__response__field_indices_by_name[] = {
+ 0, /* field[0] = bans */
+};
+static const ProtobufCIntRange cchat_room__get_ban_list__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_ban_list__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetBanList_Response",
+ "CChatRoomGetBanListResponse",
+ "CChatRoomGetBanListResponse",
+ "",
+ sizeof(CChatRoomGetBanListResponse),
+ 1,
+ cchat_room__get_ban_list__response__field_descriptors,
+ cchat_room__get_ban_list__response__field_indices_by_name,
+ 1, cchat_room__get_ban_list__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_invite_list__request__field_descriptors[1] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetInviteListRequest, has_chat_group_id),
+ offsetof(CChatRoomGetInviteListRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_invite_list__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+};
+static const ProtobufCIntRange cchat_room__get_invite_list__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_invite_list__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetInviteList_Request",
+ "CChatRoomGetInviteListRequest",
+ "CChatRoomGetInviteListRequest",
+ "",
+ sizeof(CChatRoomGetInviteListRequest),
+ 1,
+ cchat_room__get_invite_list__request__field_descriptors,
+ cchat_room__get_invite_list__request__field_indices_by_name,
+ 1, cchat_room__get_invite_list__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room_group_invite__field_descriptors[3] =
+{
+ {
+ "accountid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGroupInvite, has_accountid),
+ offsetof(CChatRoomGroupInvite, accountid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "accountid_actor",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGroupInvite, has_accountid_actor),
+ offsetof(CChatRoomGroupInvite, accountid_actor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_invited",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGroupInvite, has_time_invited),
+ offsetof(CChatRoomGroupInvite, time_invited),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room_group_invite__field_indices_by_name[] = {
+ 0, /* field[0] = accountid */
+ 1, /* field[1] = accountid_actor */
+ 2, /* field[2] = time_invited */
+};
+static const ProtobufCIntRange cchat_room_group_invite__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room_group_invite__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoomGroupInvite",
+ "CChatRoomGroupInvite",
+ "CChatRoomGroupInvite",
+ "",
+ sizeof(CChatRoomGroupInvite),
+ 3,
+ cchat_room_group_invite__field_descriptors,
+ cchat_room_group_invite__field_indices_by_name,
+ 1, cchat_room_group_invite__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_invite_list__response__field_descriptors[1] =
+{
+ {
+ "invites",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomGetInviteListResponse, n_invites),
+ offsetof(CChatRoomGetInviteListResponse, invites),
+ &cchat_room_group_invite__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_invite_list__response__field_indices_by_name[] = {
+ 0, /* field[0] = invites */
+};
+static const ProtobufCIntRange cchat_room__get_invite_list__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_invite_list__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetInviteList_Response",
+ "CChatRoomGetInviteListResponse",
+ "CChatRoomGetInviteListResponse",
+ "",
+ sizeof(CChatRoomGetInviteListResponse),
+ 1,
+ cchat_room__get_invite_list__response__field_descriptors,
+ cchat_room__get_invite_list__response__field_indices_by_name,
+ 1, cchat_room__get_invite_list__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__delete_invite_link__request__field_descriptors[2] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomDeleteInviteLinkRequest, has_chat_group_id),
+ offsetof(CChatRoomDeleteInviteLinkRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "invite_code",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomDeleteInviteLinkRequest, invite_code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__delete_invite_link__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = invite_code */
+};
+static const ProtobufCIntRange cchat_room__delete_invite_link__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__delete_invite_link__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_DeleteInviteLink_Request",
+ "CChatRoomDeleteInviteLinkRequest",
+ "CChatRoomDeleteInviteLinkRequest",
+ "",
+ sizeof(CChatRoomDeleteInviteLinkRequest),
+ 2,
+ cchat_room__delete_invite_link__request__field_descriptors,
+ cchat_room__delete_invite_link__request__field_indices_by_name,
+ 1, cchat_room__delete_invite_link__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__delete_invite_link__response__field_descriptors NULL
+#define cchat_room__delete_invite_link__response__field_indices_by_name NULL
+#define cchat_room__delete_invite_link__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__delete_invite_link__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_DeleteInviteLink_Response",
+ "CChatRoomDeleteInviteLinkResponse",
+ "CChatRoomDeleteInviteLinkResponse",
+ "",
+ sizeof(CChatRoomDeleteInviteLinkResponse),
+ 0,
+ cchat_room__delete_invite_link__response__field_descriptors,
+ cchat_room__delete_invite_link__response__field_indices_by_name,
+ 0, cchat_room__delete_invite_link__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__set_session_active_chat_room_groups__request__field_descriptors[3] =
+{
+ {
+ "chat_group_ids",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSetSessionActiveChatRoomGroupsRequest, n_chat_group_ids),
+ offsetof(CChatRoomSetSessionActiveChatRoomGroupsRequest, chat_group_ids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_groups_data_requested",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSetSessionActiveChatRoomGroupsRequest, n_chat_groups_data_requested),
+ offsetof(CChatRoomSetSessionActiveChatRoomGroupsRequest, chat_groups_data_requested),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "virtualize_members_threshold",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomSetSessionActiveChatRoomGroupsRequest, has_virtualize_members_threshold),
+ offsetof(CChatRoomSetSessionActiveChatRoomGroupsRequest, virtualize_members_threshold),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__set_session_active_chat_room_groups__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_ids */
+ 1, /* field[1] = chat_groups_data_requested */
+ 2, /* field[2] = virtualize_members_threshold */
+};
+static const ProtobufCIntRange cchat_room__set_session_active_chat_room_groups__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__set_session_active_chat_room_groups__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetSessionActiveChatRoomGroups_Request",
+ "CChatRoomSetSessionActiveChatRoomGroupsRequest",
+ "CChatRoomSetSessionActiveChatRoomGroupsRequest",
+ "",
+ sizeof(CChatRoomSetSessionActiveChatRoomGroupsRequest),
+ 3,
+ cchat_room__set_session_active_chat_room_groups__request__field_descriptors,
+ cchat_room__set_session_active_chat_room_groups__request__field_indices_by_name,
+ 1, cchat_room__set_session_active_chat_room_groups__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__set_session_active_chat_room_groups__response__field_descriptors[2] =
+{
+ {
+ "chat_states",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomSetSessionActiveChatRoomGroupsResponse, n_chat_states),
+ offsetof(CChatRoomSetSessionActiveChatRoomGroupsResponse, chat_states),
+ &cchat_room_group_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "virtualize_members_chat_group_ids",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSetSessionActiveChatRoomGroupsResponse, n_virtualize_members_chat_group_ids),
+ offsetof(CChatRoomSetSessionActiveChatRoomGroupsResponse, virtualize_members_chat_group_ids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__set_session_active_chat_room_groups__response__field_indices_by_name[] = {
+ 0, /* field[0] = chat_states */
+ 1, /* field[1] = virtualize_members_chat_group_ids */
+};
+static const ProtobufCIntRange cchat_room__set_session_active_chat_room_groups__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__set_session_active_chat_room_groups__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetSessionActiveChatRoomGroups_Response",
+ "CChatRoomSetSessionActiveChatRoomGroupsResponse",
+ "CChatRoomSetSessionActiveChatRoomGroupsResponse",
+ "",
+ sizeof(CChatRoomSetSessionActiveChatRoomGroupsResponse),
+ 2,
+ cchat_room__set_session_active_chat_room_groups__response__field_descriptors,
+ cchat_room__set_session_active_chat_room_groups__response__field_indices_by_name,
+ 1, cchat_room__set_session_active_chat_room_groups__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EChatRoomNotificationLevel cchat_room__set_user_chat_group_preferences__request__chat_group_preferences__desktop_notification_level__default_value = ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_Invalid;
+static const EChatRoomNotificationLevel cchat_room__set_user_chat_group_preferences__request__chat_group_preferences__mobile_notification_level__default_value = ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_Invalid;
+static const ProtobufCFieldDescriptor cchat_room__set_user_chat_group_preferences__request__chat_group_preferences__field_descriptors[3] =
+{
+ {
+ "desktop_notification_level",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest__ChatGroupPreferences, has_desktop_notification_level),
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest__ChatGroupPreferences, desktop_notification_level),
+ &echat_room_notification_level__descriptor,
+ &cchat_room__set_user_chat_group_preferences__request__chat_group_preferences__desktop_notification_level__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "mobile_notification_level",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest__ChatGroupPreferences, has_mobile_notification_level),
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest__ChatGroupPreferences, mobile_notification_level),
+ &echat_room_notification_level__descriptor,
+ &cchat_room__set_user_chat_group_preferences__request__chat_group_preferences__mobile_notification_level__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "unread_indicator_muted",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest__ChatGroupPreferences, has_unread_indicator_muted),
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest__ChatGroupPreferences, unread_indicator_muted),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__set_user_chat_group_preferences__request__chat_group_preferences__field_indices_by_name[] = {
+ 0, /* field[0] = desktop_notification_level */
+ 1, /* field[1] = mobile_notification_level */
+ 2, /* field[2] = unread_indicator_muted */
+};
+static const ProtobufCIntRange cchat_room__set_user_chat_group_preferences__request__chat_group_preferences__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__set_user_chat_group_preferences__request__chat_group_preferences__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetUserChatGroupPreferences_Request.ChatGroupPreferences",
+ "ChatGroupPreferences",
+ "CChatRoomSetUserChatGroupPreferencesRequest__ChatGroupPreferences",
+ "",
+ sizeof(CChatRoomSetUserChatGroupPreferencesRequest__ChatGroupPreferences),
+ 3,
+ cchat_room__set_user_chat_group_preferences__request__chat_group_preferences__field_descriptors,
+ cchat_room__set_user_chat_group_preferences__request__chat_group_preferences__field_indices_by_name,
+ 1, cchat_room__set_user_chat_group_preferences__request__chat_group_preferences__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EChatRoomNotificationLevel cchat_room__set_user_chat_group_preferences__request__chat_room_preferences__desktop_notification_level__default_value = ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_Invalid;
+static const EChatRoomNotificationLevel cchat_room__set_user_chat_group_preferences__request__chat_room_preferences__mobile_notification_level__default_value = ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_Invalid;
+static const ProtobufCFieldDescriptor cchat_room__set_user_chat_group_preferences__request__chat_room_preferences__field_descriptors[4] =
+{
+ {
+ "chat_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences, has_chat_id),
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "desktop_notification_level",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences, has_desktop_notification_level),
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences, desktop_notification_level),
+ &echat_room_notification_level__descriptor,
+ &cchat_room__set_user_chat_group_preferences__request__chat_room_preferences__desktop_notification_level__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "mobile_notification_level",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences, has_mobile_notification_level),
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences, mobile_notification_level),
+ &echat_room_notification_level__descriptor,
+ &cchat_room__set_user_chat_group_preferences__request__chat_room_preferences__mobile_notification_level__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "unread_indicator_muted",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences, has_unread_indicator_muted),
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences, unread_indicator_muted),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__set_user_chat_group_preferences__request__chat_room_preferences__field_indices_by_name[] = {
+ 0, /* field[0] = chat_id */
+ 1, /* field[1] = desktop_notification_level */
+ 2, /* field[2] = mobile_notification_level */
+ 3, /* field[3] = unread_indicator_muted */
+};
+static const ProtobufCIntRange cchat_room__set_user_chat_group_preferences__request__chat_room_preferences__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cchat_room__set_user_chat_group_preferences__request__chat_room_preferences__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetUserChatGroupPreferences_Request.ChatRoomPreferences",
+ "ChatRoomPreferences",
+ "CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences",
+ "",
+ sizeof(CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences),
+ 4,
+ cchat_room__set_user_chat_group_preferences__request__chat_room_preferences__field_descriptors,
+ cchat_room__set_user_chat_group_preferences__request__chat_room_preferences__field_indices_by_name,
+ 1, cchat_room__set_user_chat_group_preferences__request__chat_room_preferences__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__set_user_chat_group_preferences__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest, has_chat_group_id),
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_group_preferences",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest, chat_group_preferences),
+ &cchat_room__set_user_chat_group_preferences__request__chat_group_preferences__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_room_preferences",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest, n_chat_room_preferences),
+ offsetof(CChatRoomSetUserChatGroupPreferencesRequest, chat_room_preferences),
+ &cchat_room__set_user_chat_group_preferences__request__chat_room_preferences__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__set_user_chat_group_preferences__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_group_preferences */
+ 2, /* field[2] = chat_room_preferences */
+};
+static const ProtobufCIntRange cchat_room__set_user_chat_group_preferences__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__set_user_chat_group_preferences__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetUserChatGroupPreferences_Request",
+ "CChatRoomSetUserChatGroupPreferencesRequest",
+ "CChatRoomSetUserChatGroupPreferencesRequest",
+ "",
+ sizeof(CChatRoomSetUserChatGroupPreferencesRequest),
+ 3,
+ cchat_room__set_user_chat_group_preferences__request__field_descriptors,
+ cchat_room__set_user_chat_group_preferences__request__field_indices_by_name,
+ 1, cchat_room__set_user_chat_group_preferences__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__set_user_chat_group_preferences__response__field_descriptors NULL
+#define cchat_room__set_user_chat_group_preferences__response__field_indices_by_name NULL
+#define cchat_room__set_user_chat_group_preferences__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__set_user_chat_group_preferences__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SetUserChatGroupPreferences_Response",
+ "CChatRoomSetUserChatGroupPreferencesResponse",
+ "CChatRoomSetUserChatGroupPreferencesResponse",
+ "",
+ sizeof(CChatRoomSetUserChatGroupPreferencesResponse),
+ 0,
+ cchat_room__set_user_chat_group_preferences__response__field_descriptors,
+ cchat_room__set_user_chat_group_preferences__response__field_indices_by_name,
+ 0, cchat_room__set_user_chat_group_preferences__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__delete_chat_messages__request__message__field_descriptors[2] =
+{
+ {
+ "server_timestamp",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomDeleteChatMessagesRequest__Message, has_server_timestamp),
+ offsetof(CChatRoomDeleteChatMessagesRequest__Message, server_timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomDeleteChatMessagesRequest__Message, has_ordinal),
+ offsetof(CChatRoomDeleteChatMessagesRequest__Message, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__delete_chat_messages__request__message__field_indices_by_name[] = {
+ 1, /* field[1] = ordinal */
+ 0, /* field[0] = server_timestamp */
+};
+static const ProtobufCIntRange cchat_room__delete_chat_messages__request__message__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__delete_chat_messages__request__message__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_DeleteChatMessages_Request.Message",
+ "Message",
+ "CChatRoomDeleteChatMessagesRequest__Message",
+ "",
+ sizeof(CChatRoomDeleteChatMessagesRequest__Message),
+ 2,
+ cchat_room__delete_chat_messages__request__message__field_descriptors,
+ cchat_room__delete_chat_messages__request__message__field_indices_by_name,
+ 1, cchat_room__delete_chat_messages__request__message__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__delete_chat_messages__request__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomDeleteChatMessagesRequest, has_chat_group_id),
+ offsetof(CChatRoomDeleteChatMessagesRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomDeleteChatMessagesRequest, has_chat_id),
+ offsetof(CChatRoomDeleteChatMessagesRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "messages",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomDeleteChatMessagesRequest, n_messages),
+ offsetof(CChatRoomDeleteChatMessagesRequest, messages),
+ &cchat_room__delete_chat_messages__request__message__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__delete_chat_messages__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+ 2, /* field[2] = messages */
+};
+static const ProtobufCIntRange cchat_room__delete_chat_messages__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__delete_chat_messages__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_DeleteChatMessages_Request",
+ "CChatRoomDeleteChatMessagesRequest",
+ "CChatRoomDeleteChatMessagesRequest",
+ "",
+ sizeof(CChatRoomDeleteChatMessagesRequest),
+ 3,
+ cchat_room__delete_chat_messages__request__field_descriptors,
+ cchat_room__delete_chat_messages__request__field_indices_by_name,
+ 1, cchat_room__delete_chat_messages__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cchat_room__delete_chat_messages__response__field_descriptors NULL
+#define cchat_room__delete_chat_messages__response__field_indices_by_name NULL
+#define cchat_room__delete_chat_messages__response__number_ranges NULL
+const ProtobufCMessageDescriptor cchat_room__delete_chat_messages__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_DeleteChatMessages_Response",
+ "CChatRoomDeleteChatMessagesResponse",
+ "CChatRoomDeleteChatMessagesResponse",
+ "",
+ sizeof(CChatRoomDeleteChatMessagesResponse),
+ 0,
+ cchat_room__delete_chat_messages__response__field_descriptors,
+ cchat_room__delete_chat_messages__response__field_indices_by_name,
+ 0, cchat_room__delete_chat_messages__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__update_member_list_view__notification__field_descriptors[8] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomUpdateMemberListViewNotification, has_chat_group_id),
+ offsetof(CChatRoomUpdateMemberListViewNotification, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "view_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomUpdateMemberListViewNotification, has_view_id),
+ offsetof(CChatRoomUpdateMemberListViewNotification, view_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "start",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomUpdateMemberListViewNotification, has_start),
+ offsetof(CChatRoomUpdateMemberListViewNotification, start),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "end",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomUpdateMemberListViewNotification, has_end),
+ offsetof(CChatRoomUpdateMemberListViewNotification, end),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "client_changenumber",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomUpdateMemberListViewNotification, has_client_changenumber),
+ offsetof(CChatRoomUpdateMemberListViewNotification, client_changenumber),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "delete_view",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomUpdateMemberListViewNotification, has_delete_view),
+ offsetof(CChatRoomUpdateMemberListViewNotification, delete_view),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "persona_subscribe_accountids",
+ 7,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomUpdateMemberListViewNotification, n_persona_subscribe_accountids),
+ offsetof(CChatRoomUpdateMemberListViewNotification, persona_subscribe_accountids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "persona_unsubscribe_accountids",
+ 8,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomUpdateMemberListViewNotification, n_persona_unsubscribe_accountids),
+ offsetof(CChatRoomUpdateMemberListViewNotification, persona_unsubscribe_accountids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__update_member_list_view__notification__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 4, /* field[4] = client_changenumber */
+ 5, /* field[5] = delete_view */
+ 3, /* field[3] = end */
+ 6, /* field[6] = persona_subscribe_accountids */
+ 7, /* field[7] = persona_unsubscribe_accountids */
+ 2, /* field[2] = start */
+ 1, /* field[1] = view_id */
+};
+static const ProtobufCIntRange cchat_room__update_member_list_view__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor cchat_room__update_member_list_view__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_UpdateMemberListView_Notification",
+ "CChatRoomUpdateMemberListViewNotification",
+ "CChatRoomUpdateMemberListViewNotification",
+ "",
+ sizeof(CChatRoomUpdateMemberListViewNotification),
+ 8,
+ cchat_room__update_member_list_view__notification__field_descriptors,
+ cchat_room__update_member_list_view__notification__field_indices_by_name,
+ 1, cchat_room__update_member_list_view__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__search_members__request__field_descriptors[4] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSearchMembersRequest, has_chat_group_id),
+ offsetof(CChatRoomSearchMembersRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "search_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomSearchMembersRequest, has_search_id),
+ offsetof(CChatRoomSearchMembersRequest, search_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "search_text",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomSearchMembersRequest, search_text),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "max_results",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomSearchMembersRequest, has_max_results),
+ offsetof(CChatRoomSearchMembersRequest, max_results),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__search_members__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 3, /* field[3] = max_results */
+ 1, /* field[1] = search_id */
+ 2, /* field[2] = search_text */
+};
+static const ProtobufCIntRange cchat_room__search_members__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cchat_room__search_members__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SearchMembers_Request",
+ "CChatRoomSearchMembersRequest",
+ "CChatRoomSearchMembersRequest",
+ "",
+ sizeof(CChatRoomSearchMembersRequest),
+ 4,
+ cchat_room__search_members__request__field_descriptors,
+ cchat_room__search_members__request__field_indices_by_name,
+ 1, cchat_room__search_members__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__search_members__response__member_match__field_descriptors[2] =
+{
+ {
+ "accountid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomSearchMembersResponse__MemberMatch, has_accountid),
+ offsetof(CChatRoomSearchMembersResponse__MemberMatch, accountid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "persona",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomSearchMembersResponse__MemberMatch, persona),
+ &cmsg_client_persona_state__friend__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__search_members__response__member_match__field_indices_by_name[] = {
+ 0, /* field[0] = accountid */
+ 1, /* field[1] = persona */
+};
+static const ProtobufCIntRange cchat_room__search_members__response__member_match__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__search_members__response__member_match__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SearchMembers_Response.MemberMatch",
+ "MemberMatch",
+ "CChatRoomSearchMembersResponse__MemberMatch",
+ "",
+ sizeof(CChatRoomSearchMembersResponse__MemberMatch),
+ 2,
+ cchat_room__search_members__response__member_match__field_descriptors,
+ cchat_room__search_members__response__member_match__field_indices_by_name,
+ 1, cchat_room__search_members__response__member_match__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__search_members__response__field_descriptors[2] =
+{
+ {
+ "matching_members",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomSearchMembersResponse, n_matching_members),
+ offsetof(CChatRoomSearchMembersResponse, matching_members),
+ &cchat_room__search_members__response__member_match__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "status_flags",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomSearchMembersResponse, has_status_flags),
+ offsetof(CChatRoomSearchMembersResponse, status_flags),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__search_members__response__field_indices_by_name[] = {
+ 0, /* field[0] = matching_members */
+ 1, /* field[1] = status_flags */
+};
+static const ProtobufCIntRange cchat_room__search_members__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__search_members__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_SearchMembers_Response",
+ "CChatRoomSearchMembersResponse",
+ "CChatRoomSearchMembersResponse",
+ "",
+ sizeof(CChatRoomSearchMembersResponse),
+ 2,
+ cchat_room__search_members__response__field_descriptors,
+ cchat_room__search_members__response__field_indices_by_name,
+ 1, cchat_room__search_members__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EChatRoomMessageReactionType cchat_room__update_message_reaction__request__reaction_type__default_value = ECHAT_ROOM_MESSAGE_REACTION_TYPE__k_EChatRoomMessageReactionType_Invalid;
+static const ProtobufCFieldDescriptor cchat_room__update_message_reaction__request__field_descriptors[7] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomUpdateMessageReactionRequest, has_chat_group_id),
+ offsetof(CChatRoomUpdateMessageReactionRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomUpdateMessageReactionRequest, has_chat_id),
+ offsetof(CChatRoomUpdateMessageReactionRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "server_timestamp",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomUpdateMessageReactionRequest, has_server_timestamp),
+ offsetof(CChatRoomUpdateMessageReactionRequest, server_timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomUpdateMessageReactionRequest, has_ordinal),
+ offsetof(CChatRoomUpdateMessageReactionRequest, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reaction_type",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CChatRoomUpdateMessageReactionRequest, has_reaction_type),
+ offsetof(CChatRoomUpdateMessageReactionRequest, reaction_type),
+ &echat_room_message_reaction_type__descriptor,
+ &cchat_room__update_message_reaction__request__reaction_type__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reaction",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomUpdateMessageReactionRequest, reaction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_add",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomUpdateMessageReactionRequest, has_is_add),
+ offsetof(CChatRoomUpdateMessageReactionRequest, is_add),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__update_message_reaction__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+ 6, /* field[6] = is_add */
+ 3, /* field[3] = ordinal */
+ 5, /* field[5] = reaction */
+ 4, /* field[4] = reaction_type */
+ 2, /* field[2] = server_timestamp */
+};
+static const ProtobufCIntRange cchat_room__update_message_reaction__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cchat_room__update_message_reaction__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_UpdateMessageReaction_Request",
+ "CChatRoomUpdateMessageReactionRequest",
+ "CChatRoomUpdateMessageReactionRequest",
+ "",
+ sizeof(CChatRoomUpdateMessageReactionRequest),
+ 7,
+ cchat_room__update_message_reaction__request__field_descriptors,
+ cchat_room__update_message_reaction__request__field_indices_by_name,
+ 1, cchat_room__update_message_reaction__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__update_message_reaction__response__field_descriptors[1] =
+{
+ {
+ "num_reactors",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomUpdateMessageReactionResponse, has_num_reactors),
+ offsetof(CChatRoomUpdateMessageReactionResponse, num_reactors),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__update_message_reaction__response__field_indices_by_name[] = {
+ 0, /* field[0] = num_reactors */
+};
+static const ProtobufCIntRange cchat_room__update_message_reaction__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__update_message_reaction__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_UpdateMessageReaction_Response",
+ "CChatRoomUpdateMessageReactionResponse",
+ "CChatRoomUpdateMessageReactionResponse",
+ "",
+ sizeof(CChatRoomUpdateMessageReactionResponse),
+ 1,
+ cchat_room__update_message_reaction__response__field_descriptors,
+ cchat_room__update_message_reaction__response__field_indices_by_name,
+ 1, cchat_room__update_message_reaction__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EChatRoomMessageReactionType cchat_room__get_message_reaction_reactors__request__reaction_type__default_value = ECHAT_ROOM_MESSAGE_REACTION_TYPE__k_EChatRoomMessageReactionType_Invalid;
+static const ProtobufCFieldDescriptor cchat_room__get_message_reaction_reactors__request__field_descriptors[7] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetMessageReactionReactorsRequest, has_chat_group_id),
+ offsetof(CChatRoomGetMessageReactionReactorsRequest, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomGetMessageReactionReactorsRequest, has_chat_id),
+ offsetof(CChatRoomGetMessageReactionReactorsRequest, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "server_timestamp",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetMessageReactionReactorsRequest, has_server_timestamp),
+ offsetof(CChatRoomGetMessageReactionReactorsRequest, server_timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetMessageReactionReactorsRequest, has_ordinal),
+ offsetof(CChatRoomGetMessageReactionReactorsRequest, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reaction_type",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CChatRoomGetMessageReactionReactorsRequest, has_reaction_type),
+ offsetof(CChatRoomGetMessageReactionReactorsRequest, reaction_type),
+ &echat_room_message_reaction_type__descriptor,
+ &cchat_room__get_message_reaction_reactors__request__reaction_type__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reaction",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomGetMessageReactionReactorsRequest, reaction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "limit",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetMessageReactionReactorsRequest, has_limit),
+ offsetof(CChatRoomGetMessageReactionReactorsRequest, limit),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_message_reaction_reactors__request__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+ 6, /* field[6] = limit */
+ 3, /* field[3] = ordinal */
+ 5, /* field[5] = reaction */
+ 4, /* field[4] = reaction_type */
+ 2, /* field[2] = server_timestamp */
+};
+static const ProtobufCIntRange cchat_room__get_message_reaction_reactors__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_message_reaction_reactors__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetMessageReactionReactors_Request",
+ "CChatRoomGetMessageReactionReactorsRequest",
+ "CChatRoomGetMessageReactionReactorsRequest",
+ "",
+ sizeof(CChatRoomGetMessageReactionReactorsRequest),
+ 7,
+ cchat_room__get_message_reaction_reactors__request__field_descriptors,
+ cchat_room__get_message_reaction_reactors__request__field_indices_by_name,
+ 1, cchat_room__get_message_reaction_reactors__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__get_message_reaction_reactors__response__field_descriptors[1] =
+{
+ {
+ "reactors",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomGetMessageReactionReactorsResponse, n_reactors),
+ offsetof(CChatRoomGetMessageReactionReactorsResponse, reactors),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__get_message_reaction_reactors__response__field_indices_by_name[] = {
+ 0, /* field[0] = reactors */
+};
+static const ProtobufCIntRange cchat_room__get_message_reaction_reactors__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__get_message_reaction_reactors__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_GetMessageReactionReactors_Response",
+ "CChatRoomGetMessageReactionReactorsResponse",
+ "CChatRoomGetMessageReactionReactorsResponse",
+ "",
+ sizeof(CChatRoomGetMessageReactionReactorsResponse),
+ 1,
+ cchat_room__get_message_reaction_reactors__response__field_descriptors,
+ cchat_room__get_message_reaction_reactors__response__field_indices_by_name,
+ 1, cchat_room__get_message_reaction_reactors__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const protobuf_c_boolean cclan_chat_rooms__get_clan_chat_room_info__request__autocreate__default_value = 1;
+static const ProtobufCFieldDescriptor cclan_chat_rooms__get_clan_chat_room_info__request__field_descriptors[2] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CClanChatRoomsGetClanChatRoomInfoRequest, has_steamid),
+ offsetof(CClanChatRoomsGetClanChatRoomInfoRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "autocreate",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CClanChatRoomsGetClanChatRoomInfoRequest, has_autocreate),
+ offsetof(CClanChatRoomsGetClanChatRoomInfoRequest, autocreate),
+ NULL,
+ &cclan_chat_rooms__get_clan_chat_room_info__request__autocreate__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cclan_chat_rooms__get_clan_chat_room_info__request__field_indices_by_name[] = {
+ 1, /* field[1] = autocreate */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cclan_chat_rooms__get_clan_chat_room_info__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cclan_chat_rooms__get_clan_chat_room_info__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CClanChatRooms_GetClanChatRoomInfo_Request",
+ "CClanChatRoomsGetClanChatRoomInfoRequest",
+ "CClanChatRoomsGetClanChatRoomInfoRequest",
+ "",
+ sizeof(CClanChatRoomsGetClanChatRoomInfoRequest),
+ 2,
+ cclan_chat_rooms__get_clan_chat_room_info__request__field_descriptors,
+ cclan_chat_rooms__get_clan_chat_room_info__request__field_indices_by_name,
+ 1, cclan_chat_rooms__get_clan_chat_room_info__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cclan_chat_rooms__get_clan_chat_room_info__response__field_descriptors[1] =
+{
+ {
+ "chat_group_summary",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CClanChatRoomsGetClanChatRoomInfoResponse, chat_group_summary),
+ &cchat_room__get_chat_room_group_summary__response__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cclan_chat_rooms__get_clan_chat_room_info__response__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_summary */
+};
+static const ProtobufCIntRange cclan_chat_rooms__get_clan_chat_room_info__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cclan_chat_rooms__get_clan_chat_room_info__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CClanChatRooms_GetClanChatRoomInfo_Response",
+ "CClanChatRoomsGetClanChatRoomInfoResponse",
+ "CClanChatRoomsGetClanChatRoomInfoResponse",
+ "",
+ sizeof(CClanChatRoomsGetClanChatRoomInfoResponse),
+ 1,
+ cclan_chat_rooms__get_clan_chat_room_info__response__field_descriptors,
+ cclan_chat_rooms__get_clan_chat_room_info__response__field_indices_by_name,
+ 1, cclan_chat_rooms__get_clan_chat_room_info__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cclan_chat_rooms__set_clan_chat_room_private__request__field_descriptors[2] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CClanChatRoomsSetClanChatRoomPrivateRequest, has_steamid),
+ offsetof(CClanChatRoomsSetClanChatRoomPrivateRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_room_private",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CClanChatRoomsSetClanChatRoomPrivateRequest, has_chat_room_private),
+ offsetof(CClanChatRoomsSetClanChatRoomPrivateRequest, chat_room_private),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cclan_chat_rooms__set_clan_chat_room_private__request__field_indices_by_name[] = {
+ 1, /* field[1] = chat_room_private */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cclan_chat_rooms__set_clan_chat_room_private__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cclan_chat_rooms__set_clan_chat_room_private__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CClanChatRooms_SetClanChatRoomPrivate_Request",
+ "CClanChatRoomsSetClanChatRoomPrivateRequest",
+ "CClanChatRoomsSetClanChatRoomPrivateRequest",
+ "",
+ sizeof(CClanChatRoomsSetClanChatRoomPrivateRequest),
+ 2,
+ cclan_chat_rooms__set_clan_chat_room_private__request__field_descriptors,
+ cclan_chat_rooms__set_clan_chat_room_private__request__field_indices_by_name,
+ 1, cclan_chat_rooms__set_clan_chat_room_private__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cclan_chat_rooms__set_clan_chat_room_private__response__field_descriptors[1] =
+{
+ {
+ "chat_room_private",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CClanChatRoomsSetClanChatRoomPrivateResponse, has_chat_room_private),
+ offsetof(CClanChatRoomsSetClanChatRoomPrivateResponse, chat_room_private),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cclan_chat_rooms__set_clan_chat_room_private__response__field_indices_by_name[] = {
+ 0, /* field[0] = chat_room_private */
+};
+static const ProtobufCIntRange cclan_chat_rooms__set_clan_chat_room_private__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cclan_chat_rooms__set_clan_chat_room_private__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CClanChatRooms_SetClanChatRoomPrivate_Response",
+ "CClanChatRoomsSetClanChatRoomPrivateResponse",
+ "CClanChatRoomsSetClanChatRoomPrivateResponse",
+ "",
+ sizeof(CClanChatRoomsSetClanChatRoomPrivateResponse),
+ 1,
+ cclan_chat_rooms__set_clan_chat_room_private__response__field_descriptors,
+ cclan_chat_rooms__set_clan_chat_room_private__response__field_indices_by_name,
+ 1, cclan_chat_rooms__set_clan_chat_room_private__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_mentions__field_descriptors[3] =
+{
+ {
+ "mention_all",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatMentions, has_mention_all),
+ offsetof(CChatMentions, mention_all),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "mention_here",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatMentions, has_mention_here),
+ offsetof(CChatMentions, mention_here),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "mention_accountids",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatMentions, n_mention_accountids),
+ offsetof(CChatMentions, mention_accountids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_mentions__field_indices_by_name[] = {
+ 2, /* field[2] = mention_accountids */
+ 0, /* field[0] = mention_all */
+ 1, /* field[1] = mention_here */
+};
+static const ProtobufCIntRange cchat_mentions__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_mentions__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatMentions",
+ "CChatMentions",
+ "CChatMentions",
+ "",
+ sizeof(CChatMentions),
+ 3,
+ cchat_mentions__field_descriptors,
+ cchat_mentions__field_indices_by_name,
+ 1, cchat_mentions__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__incoming_chat_message__notification__field_descriptors[10] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomIncomingChatMessageNotification, has_chat_group_id),
+ offsetof(CChatRoomIncomingChatMessageNotification, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomIncomingChatMessageNotification, has_chat_id),
+ offsetof(CChatRoomIncomingChatMessageNotification, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid_sender",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomIncomingChatMessageNotification, has_steamid_sender),
+ offsetof(CChatRoomIncomingChatMessageNotification, steamid_sender),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomIncomingChatMessageNotification, message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "timestamp",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomIncomingChatMessageNotification, has_timestamp),
+ offsetof(CChatRoomIncomingChatMessageNotification, timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "mentions",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomIncomingChatMessageNotification, mentions),
+ &cchat_mentions__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomIncomingChatMessageNotification, has_ordinal),
+ offsetof(CChatRoomIncomingChatMessageNotification, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "server_message",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomIncomingChatMessageNotification, server_message),
+ &server_message__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message_no_bbcode",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomIncomingChatMessageNotification, message_no_bbcode),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_name",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomIncomingChatMessageNotification, chat_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__incoming_chat_message__notification__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+ 9, /* field[9] = chat_name */
+ 5, /* field[5] = mentions */
+ 3, /* field[3] = message */
+ 8, /* field[8] = message_no_bbcode */
+ 6, /* field[6] = ordinal */
+ 7, /* field[7] = server_message */
+ 2, /* field[2] = steamid_sender */
+ 4, /* field[4] = timestamp */
+};
+static const ProtobufCIntRange cchat_room__incoming_chat_message__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 10 }
+};
+const ProtobufCMessageDescriptor cchat_room__incoming_chat_message__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_IncomingChatMessage_Notification",
+ "CChatRoomIncomingChatMessageNotification",
+ "CChatRoomIncomingChatMessageNotification",
+ "",
+ sizeof(CChatRoomIncomingChatMessageNotification),
+ 10,
+ cchat_room__incoming_chat_message__notification__field_descriptors,
+ cchat_room__incoming_chat_message__notification__field_indices_by_name,
+ 1, cchat_room__incoming_chat_message__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__chat_message_modified__notification__chat_message__field_descriptors[3] =
+{
+ {
+ "server_timestamp",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomChatMessageModifiedNotification__ChatMessage, has_server_timestamp),
+ offsetof(CChatRoomChatMessageModifiedNotification__ChatMessage, server_timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomChatMessageModifiedNotification__ChatMessage, has_ordinal),
+ offsetof(CChatRoomChatMessageModifiedNotification__ChatMessage, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "deleted",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomChatMessageModifiedNotification__ChatMessage, has_deleted),
+ offsetof(CChatRoomChatMessageModifiedNotification__ChatMessage, deleted),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__chat_message_modified__notification__chat_message__field_indices_by_name[] = {
+ 2, /* field[2] = deleted */
+ 1, /* field[1] = ordinal */
+ 0, /* field[0] = server_timestamp */
+};
+static const ProtobufCIntRange cchat_room__chat_message_modified__notification__chat_message__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__chat_message_modified__notification__chat_message__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_ChatMessageModified_Notification.ChatMessage",
+ "ChatMessage",
+ "CChatRoomChatMessageModifiedNotification__ChatMessage",
+ "",
+ sizeof(CChatRoomChatMessageModifiedNotification__ChatMessage),
+ 3,
+ cchat_room__chat_message_modified__notification__chat_message__field_descriptors,
+ cchat_room__chat_message_modified__notification__chat_message__field_indices_by_name,
+ 1, cchat_room__chat_message_modified__notification__chat_message__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__chat_message_modified__notification__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomChatMessageModifiedNotification, has_chat_group_id),
+ offsetof(CChatRoomChatMessageModifiedNotification, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomChatMessageModifiedNotification, has_chat_id),
+ offsetof(CChatRoomChatMessageModifiedNotification, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "messages",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomChatMessageModifiedNotification, n_messages),
+ offsetof(CChatRoomChatMessageModifiedNotification, messages),
+ &cchat_room__chat_message_modified__notification__chat_message__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__chat_message_modified__notification__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+ 2, /* field[2] = messages */
+};
+static const ProtobufCIntRange cchat_room__chat_message_modified__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__chat_message_modified__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_ChatMessageModified_Notification",
+ "CChatRoomChatMessageModifiedNotification",
+ "CChatRoomChatMessageModifiedNotification",
+ "",
+ sizeof(CChatRoomChatMessageModifiedNotification),
+ 3,
+ cchat_room__chat_message_modified__notification__field_descriptors,
+ cchat_room__chat_message_modified__notification__field_indices_by_name,
+ 1, cchat_room__chat_message_modified__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EChatRoomMemberStateChange cchat_room__member_state_change__notification__change__default_value = ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Invalid;
+static const ProtobufCFieldDescriptor cchat_room__member_state_change__notification__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomMemberStateChangeNotification, has_chat_group_id),
+ offsetof(CChatRoomMemberStateChangeNotification, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "member",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomMemberStateChangeNotification, member),
+ &cchat_room_member__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "change",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CChatRoomMemberStateChangeNotification, has_change),
+ offsetof(CChatRoomMemberStateChangeNotification, change),
+ &echat_room_member_state_change__descriptor,
+ &cchat_room__member_state_change__notification__change__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__member_state_change__notification__field_indices_by_name[] = {
+ 2, /* field[2] = change */
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = member */
+};
+static const ProtobufCIntRange cchat_room__member_state_change__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__member_state_change__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_MemberStateChange_Notification",
+ "CChatRoomMemberStateChangeNotification",
+ "CChatRoomMemberStateChangeNotification",
+ "",
+ sizeof(CChatRoomMemberStateChangeNotification),
+ 3,
+ cchat_room__member_state_change__notification__field_descriptors,
+ cchat_room__member_state_change__notification__field_indices_by_name,
+ 1, cchat_room__member_state_change__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__chat_room_header_state__notification__field_descriptors[1] =
+{
+ {
+ "header_state",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomChatRoomHeaderStateNotification, header_state),
+ &cchat_room_group_header_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__chat_room_header_state__notification__field_indices_by_name[] = {
+ 0, /* field[0] = header_state */
+};
+static const ProtobufCIntRange cchat_room__chat_room_header_state__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_room__chat_room_header_state__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_ChatRoomHeaderState_Notification",
+ "CChatRoomChatRoomHeaderStateNotification",
+ "CChatRoomChatRoomHeaderStateNotification",
+ "",
+ sizeof(CChatRoomChatRoomHeaderStateNotification),
+ 1,
+ cchat_room__chat_room_header_state__notification__field_descriptors,
+ cchat_room__chat_room_header_state__notification__field_indices_by_name,
+ 1, cchat_room__chat_room_header_state__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__chat_room_group_rooms_change__notification__field_descriptors[3] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomChatRoomGroupRoomsChangeNotification, has_chat_group_id),
+ offsetof(CChatRoomChatRoomGroupRoomsChangeNotification, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "default_chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomChatRoomGroupRoomsChangeNotification, has_default_chat_id),
+ offsetof(CChatRoomChatRoomGroupRoomsChangeNotification, default_chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_rooms",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomChatRoomGroupRoomsChangeNotification, n_chat_rooms),
+ offsetof(CChatRoomChatRoomGroupRoomsChangeNotification, chat_rooms),
+ &cchat_room_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__chat_room_group_rooms_change__notification__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 2, /* field[2] = chat_rooms */
+ 1, /* field[1] = default_chat_id */
+};
+static const ProtobufCIntRange cchat_room__chat_room_group_rooms_change__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room__chat_room_group_rooms_change__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_ChatRoomGroupRoomsChange_Notification",
+ "CChatRoomChatRoomGroupRoomsChangeNotification",
+ "CChatRoomChatRoomGroupRoomsChangeNotification",
+ "",
+ sizeof(CChatRoomChatRoomGroupRoomsChangeNotification),
+ 3,
+ cchat_room__chat_room_group_rooms_change__notification__field_descriptors,
+ cchat_room__chat_room_group_rooms_change__notification__field_indices_by_name,
+ 1, cchat_room__chat_room_group_rooms_change__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__field_descriptors[2] =
+{
+ {
+ "chat_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification, has_chat_id),
+ offsetof(CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_group_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification, has_chat_group_id),
+ offsetof(CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__field_indices_by_name[] = {
+ 1, /* field[1] = chat_group_id */
+ 0, /* field[0] = chat_id */
+};
+static const ProtobufCIntRange cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification",
+ "CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification",
+ "CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification",
+ "",
+ sizeof(CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification),
+ 2,
+ cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__field_descriptors,
+ cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__field_indices_by_name,
+ 1, cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EChatRoomMemberStateChange chat_room_client__notify_chat_group_user_state_changed__notification__user_action__default_value = ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Invalid;
+static const ProtobufCFieldDescriptor chat_room_client__notify_chat_group_user_state_changed__notification__field_descriptors[4] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(ChatRoomClientNotifyChatGroupUserStateChangedNotification, has_chat_group_id),
+ offsetof(ChatRoomClientNotifyChatGroupUserStateChangedNotification, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "user_chat_group_state",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(ChatRoomClientNotifyChatGroupUserStateChangedNotification, user_chat_group_state),
+ &cuser_chat_room_group_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "group_summary",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(ChatRoomClientNotifyChatGroupUserStateChangedNotification, group_summary),
+ &cchat_room__get_chat_room_group_summary__response__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "user_action",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(ChatRoomClientNotifyChatGroupUserStateChangedNotification, has_user_action),
+ offsetof(ChatRoomClientNotifyChatGroupUserStateChangedNotification, user_action),
+ &echat_room_member_state_change__descriptor,
+ &chat_room_client__notify_chat_group_user_state_changed__notification__user_action__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned chat_room_client__notify_chat_group_user_state_changed__notification__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 2, /* field[2] = group_summary */
+ 3, /* field[3] = user_action */
+ 1, /* field[1] = user_chat_group_state */
+};
+static const ProtobufCIntRange chat_room_client__notify_chat_group_user_state_changed__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor chat_room_client__notify_chat_group_user_state_changed__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ChatRoomClient_NotifyChatGroupUserStateChanged_Notification",
+ "ChatRoomClientNotifyChatGroupUserStateChangedNotification",
+ "ChatRoomClientNotifyChatGroupUserStateChangedNotification",
+ "",
+ sizeof(ChatRoomClientNotifyChatGroupUserStateChangedNotification),
+ 4,
+ chat_room_client__notify_chat_group_user_state_changed__notification__field_descriptors,
+ chat_room_client__notify_chat_group_user_state_changed__notification__field_indices_by_name,
+ 1, chat_room_client__notify_chat_group_user_state_changed__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor chat_room_client__notify_chat_room_disconnect__notification__field_descriptors[1] =
+{
+ {
+ "chat_group_ids",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(ChatRoomClientNotifyChatRoomDisconnectNotification, n_chat_group_ids),
+ offsetof(ChatRoomClientNotifyChatRoomDisconnectNotification, chat_group_ids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned chat_room_client__notify_chat_room_disconnect__notification__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_ids */
+};
+static const ProtobufCIntRange chat_room_client__notify_chat_room_disconnect__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor chat_room_client__notify_chat_room_disconnect__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ChatRoomClient_NotifyChatRoomDisconnect_Notification",
+ "ChatRoomClientNotifyChatRoomDisconnectNotification",
+ "ChatRoomClientNotifyChatRoomDisconnectNotification",
+ "",
+ sizeof(ChatRoomClientNotifyChatRoomDisconnectNotification),
+ 1,
+ chat_room_client__notify_chat_room_disconnect__notification__field_descriptors,
+ chat_room_client__notify_chat_room_disconnect__notification__field_indices_by_name,
+ 1, chat_room_client__notify_chat_room_disconnect__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room_member_list_view__field_descriptors[5] =
+{
+ {
+ "start",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomMemberListView, has_start),
+ offsetof(CChatRoomMemberListView, start),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "end",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomMemberListView, has_end),
+ offsetof(CChatRoomMemberListView, end),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "total_count",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomMemberListView, has_total_count),
+ offsetof(CChatRoomMemberListView, total_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "client_changenumber",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomMemberListView, has_client_changenumber),
+ offsetof(CChatRoomMemberListView, client_changenumber),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "server_changenumber",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomMemberListView, has_server_changenumber),
+ offsetof(CChatRoomMemberListView, server_changenumber),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room_member_list_view__field_indices_by_name[] = {
+ 3, /* field[3] = client_changenumber */
+ 1, /* field[1] = end */
+ 4, /* field[4] = server_changenumber */
+ 0, /* field[0] = start */
+ 2, /* field[2] = total_count */
+};
+static const ProtobufCIntRange cchat_room_member_list_view__number_ranges[1 + 1] =
+{
+ { 3, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cchat_room_member_list_view__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoomMemberListView",
+ "CChatRoomMemberListView",
+ "CChatRoomMemberListView",
+ "",
+ sizeof(CChatRoomMemberListView),
+ 5,
+ cchat_room_member_list_view__field_descriptors,
+ cchat_room_member_list_view__field_indices_by_name,
+ 1, cchat_room_member_list_view__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room_member_summary_counts__field_descriptors[3] =
+{
+ {
+ "ingame",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomMemberSummaryCounts, has_ingame),
+ offsetof(CChatRoomMemberSummaryCounts, ingame),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "online",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomMemberSummaryCounts, has_online),
+ offsetof(CChatRoomMemberSummaryCounts, online),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "offline",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomMemberSummaryCounts, has_offline),
+ offsetof(CChatRoomMemberSummaryCounts, offline),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room_member_summary_counts__field_indices_by_name[] = {
+ 0, /* field[0] = ingame */
+ 2, /* field[2] = offline */
+ 1, /* field[1] = online */
+};
+static const ProtobufCIntRange cchat_room_member_summary_counts__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room_member_summary_counts__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoomMemberSummaryCounts",
+ "CChatRoomMemberSummaryCounts",
+ "CChatRoomMemberSummaryCounts",
+ "",
+ sizeof(CChatRoomMemberSummaryCounts),
+ 3,
+ cchat_room_member_summary_counts__field_descriptors,
+ cchat_room_member_summary_counts__field_indices_by_name,
+ 1, cchat_room_member_summary_counts__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room_client__member_list_view_updated__notification__member_list_view_entry__field_descriptors[3] =
+{
+ {
+ "rank",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification__MemberListViewEntry, has_rank),
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification__MemberListViewEntry, rank),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "accountid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification__MemberListViewEntry, has_accountid),
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification__MemberListViewEntry, accountid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "persona",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification__MemberListViewEntry, persona),
+ &cmsg_client_persona_state__friend__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room_client__member_list_view_updated__notification__member_list_view_entry__field_indices_by_name[] = {
+ 1, /* field[1] = accountid */
+ 2, /* field[2] = persona */
+ 0, /* field[0] = rank */
+};
+static const ProtobufCIntRange cchat_room_client__member_list_view_updated__notification__member_list_view_entry__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cchat_room_client__member_list_view_updated__notification__member_list_view_entry__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoomClient_MemberListViewUpdated_Notification.MemberListViewEntry",
+ "MemberListViewEntry",
+ "CChatRoomClientMemberListViewUpdatedNotification__MemberListViewEntry",
+ "",
+ sizeof(CChatRoomClientMemberListViewUpdatedNotification__MemberListViewEntry),
+ 3,
+ cchat_room_client__member_list_view_updated__notification__member_list_view_entry__field_descriptors,
+ cchat_room_client__member_list_view_updated__notification__member_list_view_entry__field_indices_by_name,
+ 1, cchat_room_client__member_list_view_updated__notification__member_list_view_entry__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_room_client__member_list_view_updated__notification__field_descriptors[7] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification, has_chat_group_id),
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "view_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification, has_view_id),
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification, view_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "view",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification, view),
+ &cchat_room_member_list_view__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "members",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification, n_members),
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification, members),
+ &cchat_room_client__member_list_view_updated__notification__member_list_view_entry__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "status_flags",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification, has_status_flags),
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification, status_flags),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "member_summary",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification, member_summary),
+ &cchat_room_member_summary_counts__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "subscribed_personas",
+ 7,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification, n_subscribed_personas),
+ offsetof(CChatRoomClientMemberListViewUpdatedNotification, subscribed_personas),
+ &cmsg_client_persona_state__friend__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room_client__member_list_view_updated__notification__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 5, /* field[5] = member_summary */
+ 3, /* field[3] = members */
+ 4, /* field[4] = status_flags */
+ 6, /* field[6] = subscribed_personas */
+ 2, /* field[2] = view */
+ 1, /* field[1] = view_id */
+};
+static const ProtobufCIntRange cchat_room_client__member_list_view_updated__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cchat_room_client__member_list_view_updated__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoomClient_MemberListViewUpdated_Notification",
+ "CChatRoomClientMemberListViewUpdatedNotification",
+ "CChatRoomClientMemberListViewUpdatedNotification",
+ "",
+ sizeof(CChatRoomClientMemberListViewUpdatedNotification),
+ 7,
+ cchat_room_client__member_list_view_updated__notification__field_descriptors,
+ cchat_room_client__member_list_view_updated__notification__field_indices_by_name,
+ 1, cchat_room_client__member_list_view_updated__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EChatRoomMessageReactionType cchat_room__message_reaction__notification__reaction_type__default_value = ECHAT_ROOM_MESSAGE_REACTION_TYPE__k_EChatRoomMessageReactionType_Invalid;
+static const ProtobufCFieldDescriptor cchat_room__message_reaction__notification__field_descriptors[8] =
+{
+ {
+ "chat_group_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomMessageReactionNotification, has_chat_group_id),
+ offsetof(CChatRoomMessageReactionNotification, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CChatRoomMessageReactionNotification, has_chat_id),
+ offsetof(CChatRoomMessageReactionNotification, chat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "server_timestamp",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomMessageReactionNotification, has_server_timestamp),
+ offsetof(CChatRoomMessageReactionNotification, server_timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatRoomMessageReactionNotification, has_ordinal),
+ offsetof(CChatRoomMessageReactionNotification, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reactor",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CChatRoomMessageReactionNotification, has_reactor),
+ offsetof(CChatRoomMessageReactionNotification, reactor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reaction_type",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CChatRoomMessageReactionNotification, has_reaction_type),
+ offsetof(CChatRoomMessageReactionNotification, reaction_type),
+ &echat_room_message_reaction_type__descriptor,
+ &cchat_room__message_reaction__notification__reaction_type__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reaction",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CChatRoomMessageReactionNotification, reaction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_add",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatRoomMessageReactionNotification, has_is_add),
+ offsetof(CChatRoomMessageReactionNotification, is_add),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_room__message_reaction__notification__field_indices_by_name[] = {
+ 0, /* field[0] = chat_group_id */
+ 1, /* field[1] = chat_id */
+ 7, /* field[7] = is_add */
+ 3, /* field[3] = ordinal */
+ 6, /* field[6] = reaction */
+ 5, /* field[5] = reaction_type */
+ 4, /* field[4] = reactor */
+ 2, /* field[2] = server_timestamp */
+};
+static const ProtobufCIntRange cchat_room__message_reaction__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor cchat_room__message_reaction__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatRoom_MessageReaction_Notification",
+ "CChatRoomMessageReactionNotification",
+ "CChatRoomMessageReactionNotification",
+ "",
+ sizeof(CChatRoomMessageReactionNotification),
+ 8,
+ cchat_room__message_reaction__notification__field_descriptors,
+ cchat_room__message_reaction__notification__field_indices_by_name,
+ 1, cchat_room__message_reaction__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_usability__client_usability_metrics__notification__settings__field_descriptors[25] =
+{
+ {
+ "notifications_show_ingame",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_notifications_show_ingame),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, notifications_show_ingame),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "notifications_show_online",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_notifications_show_online),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, notifications_show_online),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "notifications_show_message",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_notifications_show_message),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, notifications_show_message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "notifications_events_and_announcements",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_notifications_events_and_announcements),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, notifications_events_and_announcements),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sounds_play_ingame",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_sounds_play_ingame),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, sounds_play_ingame),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sounds_play_online",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_sounds_play_online),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, sounds_play_online),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sounds_play_message",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_sounds_play_message),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, sounds_play_message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sounds_events_and_announcements",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_sounds_events_and_announcements),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, sounds_events_and_announcements),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "always_new_chat_window",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_always_new_chat_window),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, always_new_chat_window),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "force_alphabetic_friend_sorting",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_force_alphabetic_friend_sorting),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, force_alphabetic_friend_sorting),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_flash_mode",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_chat_flash_mode),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, chat_flash_mode),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "remember_open_chats",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_remember_open_chats),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, remember_open_chats),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "compact_quick_access",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_compact_quick_access),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, compact_quick_access),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "compact_friends_list",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_compact_friends_list),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, compact_friends_list),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "notifications_show_chat_room_notification",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_notifications_show_chat_room_notification),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, notifications_show_chat_room_notification),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sounds_play_chat_room_notification",
+ 16,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_sounds_play_chat_room_notification),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, sounds_play_chat_room_notification),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "hide_offline_friends_in_tag_groups",
+ 17,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_hide_offline_friends_in_tag_groups),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, hide_offline_friends_in_tag_groups),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "hide_categorized_friends",
+ 18,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_hide_categorized_friends),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, hide_categorized_friends),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "categorize_in_game_friends_by_game",
+ 19,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_categorize_in_game_friends_by_game),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, categorize_in_game_friends_by_game),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_font_size",
+ 20,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_chat_font_size),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, chat_font_size),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "use24hour_clock",
+ 21,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_use24hour_clock),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, use24hour_clock),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "do_not_disturb_mode",
+ 22,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_do_not_disturb_mode),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, do_not_disturb_mode),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "disable_embed_inlining",
+ 23,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_disable_embed_inlining),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, disable_embed_inlining),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sign_into_friends",
+ 24,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_sign_into_friends),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, sign_into_friends),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "animated_avatars",
+ 25,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, has_animated_avatars),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Settings, animated_avatars),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_usability__client_usability_metrics__notification__settings__field_indices_by_name[] = {
+ 8, /* field[8] = always_new_chat_window */
+ 24, /* field[24] = animated_avatars */
+ 18, /* field[18] = categorize_in_game_friends_by_game */
+ 10, /* field[10] = chat_flash_mode */
+ 19, /* field[19] = chat_font_size */
+ 13, /* field[13] = compact_friends_list */
+ 12, /* field[12] = compact_quick_access */
+ 22, /* field[22] = disable_embed_inlining */
+ 21, /* field[21] = do_not_disturb_mode */
+ 9, /* field[9] = force_alphabetic_friend_sorting */
+ 17, /* field[17] = hide_categorized_friends */
+ 16, /* field[16] = hide_offline_friends_in_tag_groups */
+ 3, /* field[3] = notifications_events_and_announcements */
+ 14, /* field[14] = notifications_show_chat_room_notification */
+ 0, /* field[0] = notifications_show_ingame */
+ 2, /* field[2] = notifications_show_message */
+ 1, /* field[1] = notifications_show_online */
+ 11, /* field[11] = remember_open_chats */
+ 23, /* field[23] = sign_into_friends */
+ 7, /* field[7] = sounds_events_and_announcements */
+ 15, /* field[15] = sounds_play_chat_room_notification */
+ 4, /* field[4] = sounds_play_ingame */
+ 6, /* field[6] = sounds_play_message */
+ 5, /* field[5] = sounds_play_online */
+ 20, /* field[20] = use24hour_clock */
+};
+static const ProtobufCIntRange cchat_usability__client_usability_metrics__notification__settings__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 25 }
+};
+const ProtobufCMessageDescriptor cchat_usability__client_usability_metrics__notification__settings__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatUsability_ClientUsabilityMetrics_Notification.Settings",
+ "Settings",
+ "CChatUsabilityClientUsabilityMetricsNotification__Settings",
+ "",
+ sizeof(CChatUsabilityClientUsabilityMetricsNotification__Settings),
+ 25,
+ cchat_usability__client_usability_metrics__notification__settings__field_descriptors,
+ cchat_usability__client_usability_metrics__notification__settings__field_indices_by_name,
+ 1, cchat_usability__client_usability_metrics__notification__settings__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_usability__client_usability_metrics__notification__voice_settings__field_descriptors[11] =
+{
+ {
+ "voice_input_gain",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FLOAT,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, has_voice_input_gain),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, voice_input_gain),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "voice_output_gain",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FLOAT,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, has_voice_output_gain),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, voice_output_gain),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "noise_gate_level",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, has_noise_gate_level),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, noise_gate_level),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "voice_use_echo_cancellation",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, has_voice_use_echo_cancellation),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, voice_use_echo_cancellation),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "voice_use_noise_cancellation",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, has_voice_use_noise_cancellation),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, voice_use_noise_cancellation),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "voice_use_auto_gain_control",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, has_voice_use_auto_gain_control),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, voice_use_auto_gain_control),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "selected_non_default_mic",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, has_selected_non_default_mic),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, selected_non_default_mic),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "selected_non_default_output",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, has_selected_non_default_output),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, selected_non_default_output),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "push_to_talk_enabled",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, has_push_to_talk_enabled),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, push_to_talk_enabled),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "push_to_mute_enabled",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, has_push_to_mute_enabled),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, push_to_mute_enabled),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "play_ptt_sounds",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, has_play_ptt_sounds),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings, play_ptt_sounds),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_usability__client_usability_metrics__notification__voice_settings__field_indices_by_name[] = {
+ 2, /* field[2] = noise_gate_level */
+ 10, /* field[10] = play_ptt_sounds */
+ 9, /* field[9] = push_to_mute_enabled */
+ 8, /* field[8] = push_to_talk_enabled */
+ 6, /* field[6] = selected_non_default_mic */
+ 7, /* field[7] = selected_non_default_output */
+ 0, /* field[0] = voice_input_gain */
+ 1, /* field[1] = voice_output_gain */
+ 5, /* field[5] = voice_use_auto_gain_control */
+ 3, /* field[3] = voice_use_echo_cancellation */
+ 4, /* field[4] = voice_use_noise_cancellation */
+};
+static const ProtobufCIntRange cchat_usability__client_usability_metrics__notification__voice_settings__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 11 }
+};
+const ProtobufCMessageDescriptor cchat_usability__client_usability_metrics__notification__voice_settings__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings",
+ "VoiceSettings",
+ "CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings",
+ "",
+ sizeof(CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings),
+ 11,
+ cchat_usability__client_usability_metrics__notification__voice_settings__field_descriptors,
+ cchat_usability__client_usability_metrics__notification__voice_settings__field_indices_by_name,
+ 1, cchat_usability__client_usability_metrics__notification__voice_settings__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_usability__client_usability_metrics__notification__uistate__category_collapse_state__field_descriptors[5] =
+{
+ {
+ "in_game_collapsed",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState, has_in_game_collapsed),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState, in_game_collapsed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "online_collapsed",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState, has_online_collapsed),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState, online_collapsed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "offline_collapsed",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState, has_offline_collapsed),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState, offline_collapsed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_groups_collapsed",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState, has_game_groups_collapsed),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState, game_groups_collapsed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "categories_collapsed",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState, has_categories_collapsed),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState, categories_collapsed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_usability__client_usability_metrics__notification__uistate__category_collapse_state__field_indices_by_name[] = {
+ 4, /* field[4] = categories_collapsed */
+ 3, /* field[3] = game_groups_collapsed */
+ 0, /* field[0] = in_game_collapsed */
+ 2, /* field[2] = offline_collapsed */
+ 1, /* field[1] = online_collapsed */
+};
+static const ProtobufCIntRange cchat_usability__client_usability_metrics__notification__uistate__category_collapse_state__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cchat_usability__client_usability_metrics__notification__uistate__category_collapse_state__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatUsability_ClientUsabilityMetrics_Notification.UIState.CategoryCollapseState",
+ "CategoryCollapseState",
+ "CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState",
+ "",
+ sizeof(CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState),
+ 5,
+ cchat_usability__client_usability_metrics__notification__uistate__category_collapse_state__field_descriptors,
+ cchat_usability__client_usability_metrics__notification__uistate__category_collapse_state__field_indices_by_name,
+ 1, cchat_usability__client_usability_metrics__notification__uistate__category_collapse_state__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_usability__client_usability_metrics__notification__uistate__field_descriptors[16] =
+{
+ {
+ "friends_list_height",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_friends_list_height),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, friends_list_height),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends_list_width",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_friends_list_width),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, friends_list_width),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends_list_docked",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_friends_list_docked),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, friends_list_docked),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends_list_collapsed",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_friends_list_collapsed),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, friends_list_collapsed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends_list_group_chats_height",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_friends_list_group_chats_height),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, friends_list_group_chats_height),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends_list_visible",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_friends_list_visible),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, friends_list_visible),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_popups_opened",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_chat_popups_opened),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, chat_popups_opened),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "group_chat_tabs_opened",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_group_chat_tabs_opened),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, group_chat_tabs_opened),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friend_chat_tabs_opened",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_friend_chat_tabs_opened),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, friend_chat_tabs_opened),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_window_width",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_chat_window_width),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, chat_window_width),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_window_height",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_chat_window_height),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, chat_window_height),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "category_collapse",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, category_collapse),
+ &cchat_usability__client_usability_metrics__notification__uistate__category_collapse_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "group_chat_left_col_collapsed",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_group_chat_left_col_collapsed),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, group_chat_left_col_collapsed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "group_chat_right_col_collapsed",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_group_chat_right_col_collapsed),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, group_chat_right_col_collapsed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "in_one_on_one_voice_chat",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_in_one_on_one_voice_chat),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, in_one_on_one_voice_chat),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "in_group_voice_chat",
+ 16,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, has_in_group_voice_chat),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__UIState, in_group_voice_chat),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_usability__client_usability_metrics__notification__uistate__field_indices_by_name[] = {
+ 11, /* field[11] = category_collapse */
+ 6, /* field[6] = chat_popups_opened */
+ 10, /* field[10] = chat_window_height */
+ 9, /* field[9] = chat_window_width */
+ 8, /* field[8] = friend_chat_tabs_opened */
+ 3, /* field[3] = friends_list_collapsed */
+ 2, /* field[2] = friends_list_docked */
+ 4, /* field[4] = friends_list_group_chats_height */
+ 0, /* field[0] = friends_list_height */
+ 5, /* field[5] = friends_list_visible */
+ 1, /* field[1] = friends_list_width */
+ 12, /* field[12] = group_chat_left_col_collapsed */
+ 13, /* field[13] = group_chat_right_col_collapsed */
+ 7, /* field[7] = group_chat_tabs_opened */
+ 15, /* field[15] = in_group_voice_chat */
+ 14, /* field[14] = in_one_on_one_voice_chat */
+};
+static const ProtobufCIntRange cchat_usability__client_usability_metrics__notification__uistate__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 16 }
+};
+const ProtobufCMessageDescriptor cchat_usability__client_usability_metrics__notification__uistate__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatUsability_ClientUsabilityMetrics_Notification.UIState",
+ "UIState",
+ "CChatUsabilityClientUsabilityMetricsNotification__UIState",
+ "",
+ sizeof(CChatUsabilityClientUsabilityMetricsNotification__UIState),
+ 16,
+ cchat_usability__client_usability_metrics__notification__uistate__field_descriptors,
+ cchat_usability__client_usability_metrics__notification__uistate__field_indices_by_name,
+ 1, cchat_usability__client_usability_metrics__notification__uistate__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_usability__client_usability_metrics__notification__metrics__field_descriptors[10] =
+{
+ {
+ "friends_count",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, has_friends_count),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, friends_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends_category_count",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, has_friends_category_count),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, friends_category_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends_categorized_count",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, has_friends_categorized_count),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, friends_categorized_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends_online_count",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, has_friends_online_count),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, friends_online_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends_in_game_count",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, has_friends_in_game_count),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, friends_in_game_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends_in_game_singleton_count",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, has_friends_in_game_singleton_count),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, friends_in_game_singleton_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_group_count",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, has_game_group_count),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, game_group_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends_favorite_count",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, has_friends_favorite_count),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, friends_favorite_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "group_chat_count",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, has_group_chat_count),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, group_chat_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "group_chat_favorite_count",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, has_group_chat_favorite_count),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification__Metrics, group_chat_favorite_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_usability__client_usability_metrics__notification__metrics__field_indices_by_name[] = {
+ 2, /* field[2] = friends_categorized_count */
+ 1, /* field[1] = friends_category_count */
+ 0, /* field[0] = friends_count */
+ 7, /* field[7] = friends_favorite_count */
+ 4, /* field[4] = friends_in_game_count */
+ 5, /* field[5] = friends_in_game_singleton_count */
+ 3, /* field[3] = friends_online_count */
+ 6, /* field[6] = game_group_count */
+ 8, /* field[8] = group_chat_count */
+ 9, /* field[9] = group_chat_favorite_count */
+};
+static const ProtobufCIntRange cchat_usability__client_usability_metrics__notification__metrics__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 10 }
+};
+const ProtobufCMessageDescriptor cchat_usability__client_usability_metrics__notification__metrics__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatUsability_ClientUsabilityMetrics_Notification.Metrics",
+ "Metrics",
+ "CChatUsabilityClientUsabilityMetricsNotification__Metrics",
+ "",
+ sizeof(CChatUsabilityClientUsabilityMetricsNotification__Metrics),
+ 10,
+ cchat_usability__client_usability_metrics__notification__metrics__field_descriptors,
+ cchat_usability__client_usability_metrics__notification__metrics__field_indices_by_name,
+ 1, cchat_usability__client_usability_metrics__notification__metrics__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_usability__client_usability_metrics__notification__field_descriptors[8] =
+{
+ {
+ "metrics_run_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification, has_metrics_run_id),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification, metrics_run_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "client_build",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification, has_client_build),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification, client_build),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "metrics_version",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification, has_metrics_version),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification, metrics_version),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "in_web",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification, has_in_web),
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification, in_web),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "settings",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification, settings),
+ &cchat_usability__client_usability_metrics__notification__settings__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "voice_settings",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification, voice_settings),
+ &cchat_usability__client_usability_metrics__notification__voice_settings__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ui_state",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification, ui_state),
+ &cchat_usability__client_usability_metrics__notification__uistate__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "metrics",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CChatUsabilityClientUsabilityMetricsNotification, metrics),
+ &cchat_usability__client_usability_metrics__notification__metrics__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_usability__client_usability_metrics__notification__field_indices_by_name[] = {
+ 1, /* field[1] = client_build */
+ 3, /* field[3] = in_web */
+ 7, /* field[7] = metrics */
+ 0, /* field[0] = metrics_run_id */
+ 2, /* field[2] = metrics_version */
+ 4, /* field[4] = settings */
+ 6, /* field[6] = ui_state */
+ 5, /* field[5] = voice_settings */
+};
+static const ProtobufCIntRange cchat_usability__client_usability_metrics__notification__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 10, 4 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor cchat_usability__client_usability_metrics__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatUsability_ClientUsabilityMetrics_Notification",
+ "CChatUsabilityClientUsabilityMetricsNotification",
+ "CChatUsabilityClientUsabilityMetricsNotification",
+ "",
+ sizeof(CChatUsabilityClientUsabilityMetricsNotification),
+ 8,
+ cchat_usability__client_usability_metrics__notification__field_descriptors,
+ cchat_usability__client_usability_metrics__notification__field_indices_by_name,
+ 2, cchat_usability__client_usability_metrics__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cchat_usability__request_client_usability_metrics__notification__field_descriptors[1] =
+{
+ {
+ "metrics_run_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CChatUsabilityRequestClientUsabilityMetricsNotification, has_metrics_run_id),
+ offsetof(CChatUsabilityRequestClientUsabilityMetricsNotification, metrics_run_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cchat_usability__request_client_usability_metrics__notification__field_indices_by_name[] = {
+ 0, /* field[0] = metrics_run_id */
+};
+static const ProtobufCIntRange cchat_usability__request_client_usability_metrics__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cchat_usability__request_client_usability_metrics__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CChatUsability_RequestClientUsabilityMetrics_Notification",
+ "CChatUsabilityRequestClientUsabilityMetricsNotification",
+ "CChatUsabilityRequestClientUsabilityMetricsNotification",
+ "",
+ sizeof(CChatUsabilityRequestClientUsabilityMetricsNotification),
+ 1,
+ cchat_usability__request_client_usability_metrics__notification__field_descriptors,
+ cchat_usability__request_client_usability_metrics__notification__field_indices_by_name,
+ 1, cchat_usability__request_client_usability_metrics__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCEnumValue echat_room_join_state__enum_values_by_number[4] =
+{
+ { "k_EChatRoomJoinState_Default", "ECHAT_ROOM_JOIN_STATE__k_EChatRoomJoinState_Default", 0 },
+ { "k_EChatRoomJoinState_None", "ECHAT_ROOM_JOIN_STATE__k_EChatRoomJoinState_None", 1 },
+ { "k_EChatRoomJoinState_Joined", "ECHAT_ROOM_JOIN_STATE__k_EChatRoomJoinState_Joined", 2 },
+ { "k_EChatRoomJoinState_TestInvalid", "ECHAT_ROOM_JOIN_STATE__k_EChatRoomJoinState_TestInvalid", 99 },
+};
+static const ProtobufCIntRange echat_room_join_state__value_ranges[] = {
+{0, 0},{99, 3},{0, 4}
+};
+static const ProtobufCEnumValueIndex echat_room_join_state__enum_values_by_name[4] =
+{
+ { "k_EChatRoomJoinState_Default", 0 },
+ { "k_EChatRoomJoinState_Joined", 2 },
+ { "k_EChatRoomJoinState_None", 1 },
+ { "k_EChatRoomJoinState_TestInvalid", 3 },
+};
+const ProtobufCEnumDescriptor echat_room_join_state__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "EChatRoomJoinState",
+ "EChatRoomJoinState",
+ "EChatRoomJoinState",
+ "",
+ 4,
+ echat_room_join_state__enum_values_by_number,
+ 4,
+ echat_room_join_state__enum_values_by_name,
+ 2,
+ echat_room_join_state__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
+static const ProtobufCEnumValue echat_room_group_rank__enum_values_by_number[8] =
+{
+ { "k_EChatRoomGroupRank_Default", "ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Default", 0 },
+ { "k_EChatRoomGroupRank_Viewer", "ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Viewer", 10 },
+ { "k_EChatRoomGroupRank_Guest", "ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Guest", 15 },
+ { "k_EChatRoomGroupRank_Member", "ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Member", 20 },
+ { "k_EChatRoomGroupRank_Moderator", "ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Moderator", 30 },
+ { "k_EChatRoomGroupRank_Officer", "ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Officer", 40 },
+ { "k_EChatRoomGroupRank_Owner", "ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Owner", 50 },
+ { "k_EChatRoomGroupRank_TestInvalid", "ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_TestInvalid", 99 },
+};
+static const ProtobufCIntRange echat_room_group_rank__value_ranges[] = {
+{0, 0},{10, 1},{15, 2},{20, 3},{30, 4},{40, 5},{50, 6},{99, 7},{0, 8}
+};
+static const ProtobufCEnumValueIndex echat_room_group_rank__enum_values_by_name[8] =
+{
+ { "k_EChatRoomGroupRank_Default", 0 },
+ { "k_EChatRoomGroupRank_Guest", 2 },
+ { "k_EChatRoomGroupRank_Member", 3 },
+ { "k_EChatRoomGroupRank_Moderator", 4 },
+ { "k_EChatRoomGroupRank_Officer", 5 },
+ { "k_EChatRoomGroupRank_Owner", 6 },
+ { "k_EChatRoomGroupRank_TestInvalid", 7 },
+ { "k_EChatRoomGroupRank_Viewer", 1 },
+};
+const ProtobufCEnumDescriptor echat_room_group_rank__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "EChatRoomGroupRank",
+ "EChatRoomGroupRank",
+ "EChatRoomGroupRank",
+ "",
+ 8,
+ echat_room_group_rank__enum_values_by_number,
+ 8,
+ echat_room_group_rank__enum_values_by_name,
+ 8,
+ echat_room_group_rank__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
+static const ProtobufCEnumValue echat_room_notification_level__enum_values_by_number[5] =
+{
+ { "k_EChatroomNotificationLevel_Invalid", "ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_Invalid", 0 },
+ { "k_EChatroomNotificationLevel_None", "ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_None", 1 },
+ { "k_EChatroomNotificationLevel_MentionMe", "ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_MentionMe", 2 },
+ { "k_EChatroomNotificationLevel_MentionAll", "ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_MentionAll", 3 },
+ { "k_EChatroomNotificationLevel_AllMessages", "ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_AllMessages", 4 },
+};
+static const ProtobufCIntRange echat_room_notification_level__value_ranges[] = {
+{0, 0},{0, 5}
+};
+static const ProtobufCEnumValueIndex echat_room_notification_level__enum_values_by_name[5] =
+{
+ { "k_EChatroomNotificationLevel_AllMessages", 4 },
+ { "k_EChatroomNotificationLevel_Invalid", 0 },
+ { "k_EChatroomNotificationLevel_MentionAll", 3 },
+ { "k_EChatroomNotificationLevel_MentionMe", 2 },
+ { "k_EChatroomNotificationLevel_None", 1 },
+};
+const ProtobufCEnumDescriptor echat_room_notification_level__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "EChatRoomNotificationLevel",
+ "EChatRoomNotificationLevel",
+ "EChatRoomNotificationLevel",
+ "",
+ 5,
+ echat_room_notification_level__enum_values_by_number,
+ 5,
+ echat_room_notification_level__enum_values_by_name,
+ 1,
+ echat_room_notification_level__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
+static const ProtobufCEnumValue echat_room_server_message__enum_values_by_number[10] =
+{
+ { "k_EChatRoomServerMsg_Invalid", "ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_Invalid", 0 },
+ { "k_EChatRoomServerMsg_RenameChatRoom", "ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_RenameChatRoom", 1 },
+ { "k_EChatRoomServerMsg_Joined", "ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_Joined", 2 },
+ { "k_EChatRoomServerMsg_Parted", "ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_Parted", 3 },
+ { "k_EChatRoomServerMsg_Kicked", "ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_Kicked", 4 },
+ { "k_EChatRoomServerMsg_Invited", "ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_Invited", 5 },
+ { "k_EChatRoomServerMsg_InviteDismissed", "ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_InviteDismissed", 8 },
+ { "k_EChatRoomServerMsg_ChatRoomTaglineChanged", "ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_ChatRoomTaglineChanged", 9 },
+ { "k_EChatRoomServerMsg_ChatRoomAvatarChanged", "ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_ChatRoomAvatarChanged", 10 },
+ { "k_EChatRoomServerMsg_AppCustom", "ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_AppCustom", 11 },
+};
+static const ProtobufCIntRange echat_room_server_message__value_ranges[] = {
+{0, 0},{8, 6},{0, 10}
+};
+static const ProtobufCEnumValueIndex echat_room_server_message__enum_values_by_name[10] =
+{
+ { "k_EChatRoomServerMsg_AppCustom", 9 },
+ { "k_EChatRoomServerMsg_ChatRoomAvatarChanged", 8 },
+ { "k_EChatRoomServerMsg_ChatRoomTaglineChanged", 7 },
+ { "k_EChatRoomServerMsg_Invalid", 0 },
+ { "k_EChatRoomServerMsg_InviteDismissed", 6 },
+ { "k_EChatRoomServerMsg_Invited", 5 },
+ { "k_EChatRoomServerMsg_Joined", 2 },
+ { "k_EChatRoomServerMsg_Kicked", 4 },
+ { "k_EChatRoomServerMsg_Parted", 3 },
+ { "k_EChatRoomServerMsg_RenameChatRoom", 1 },
+};
+const ProtobufCEnumDescriptor echat_room_server_message__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "EChatRoomServerMessage",
+ "EChatRoomServerMessage",
+ "EChatRoomServerMessage",
+ "",
+ 10,
+ echat_room_server_message__enum_values_by_number,
+ 10,
+ echat_room_server_message__enum_values_by_name,
+ 2,
+ echat_room_server_message__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
+static const ProtobufCEnumValue echat_room_message_reaction_type__enum_values_by_number[3] =
+{
+ { "k_EChatRoomMessageReactionType_Invalid", "ECHAT_ROOM_MESSAGE_REACTION_TYPE__k_EChatRoomMessageReactionType_Invalid", 0 },
+ { "k_EChatRoomMessageReactionType_Emoticon", "ECHAT_ROOM_MESSAGE_REACTION_TYPE__k_EChatRoomMessageReactionType_Emoticon", 1 },
+ { "k_EChatRoomMessageReactionType_Sticker", "ECHAT_ROOM_MESSAGE_REACTION_TYPE__k_EChatRoomMessageReactionType_Sticker", 2 },
+};
+static const ProtobufCIntRange echat_room_message_reaction_type__value_ranges[] = {
+{0, 0},{0, 3}
+};
+static const ProtobufCEnumValueIndex echat_room_message_reaction_type__enum_values_by_name[3] =
+{
+ { "k_EChatRoomMessageReactionType_Emoticon", 1 },
+ { "k_EChatRoomMessageReactionType_Invalid", 0 },
+ { "k_EChatRoomMessageReactionType_Sticker", 2 },
+};
+const ProtobufCEnumDescriptor echat_room_message_reaction_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "EChatRoomMessageReactionType",
+ "EChatRoomMessageReactionType",
+ "EChatRoomMessageReactionType",
+ "",
+ 3,
+ echat_room_message_reaction_type__enum_values_by_number,
+ 3,
+ echat_room_message_reaction_type__enum_values_by_name,
+ 1,
+ echat_room_message_reaction_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
+static const ProtobufCEnumValue echat_room_member_state_change__enum_values_by_number[10] =
+{
+ { "k_EChatRoomMemberStateChange_Invalid", "ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Invalid", 0 },
+ { "k_EChatRoomMemberStateChange_Joined", "ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Joined", 1 },
+ { "k_EChatRoomMemberStateChange_Parted", "ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Parted", 2 },
+ { "k_EChatRoomMemberStateChange_Kicked", "ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Kicked", 3 },
+ { "k_EChatRoomMemberStateChange_Invited", "ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Invited", 4 },
+ { "k_EChatRoomMemberStateChange_RankChanged", "ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_RankChanged", 7 },
+ { "k_EChatRoomMemberStateChange_InviteDismissed", "ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_InviteDismissed", 8 },
+ { "k_EChatRoomMemberStateChange_Muted", "ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Muted", 9 },
+ { "k_EChatRoomMemberStateChange_Banned", "ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Banned", 10 },
+ { "k_EChatRoomMemberStateChange_RolesChanged", "ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_RolesChanged", 12 },
+};
+static const ProtobufCIntRange echat_room_member_state_change__value_ranges[] = {
+{0, 0},{7, 5},{12, 9},{0, 10}
+};
+static const ProtobufCEnumValueIndex echat_room_member_state_change__enum_values_by_name[10] =
+{
+ { "k_EChatRoomMemberStateChange_Banned", 8 },
+ { "k_EChatRoomMemberStateChange_Invalid", 0 },
+ { "k_EChatRoomMemberStateChange_InviteDismissed", 6 },
+ { "k_EChatRoomMemberStateChange_Invited", 4 },
+ { "k_EChatRoomMemberStateChange_Joined", 1 },
+ { "k_EChatRoomMemberStateChange_Kicked", 3 },
+ { "k_EChatRoomMemberStateChange_Muted", 7 },
+ { "k_EChatRoomMemberStateChange_Parted", 2 },
+ { "k_EChatRoomMemberStateChange_RankChanged", 5 },
+ { "k_EChatRoomMemberStateChange_RolesChanged", 9 },
+};
+const ProtobufCEnumDescriptor echat_room_member_state_change__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "EChatRoomMemberStateChange",
+ "EChatRoomMemberStateChange",
+ "EChatRoomMemberStateChange",
+ "",
+ 10,
+ echat_room_member_state_change__enum_values_by_number,
+ 10,
+ echat_room_member_state_change__enum_values_by_name,
+ 3,
+ echat_room_member_state_change__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
+static const ProtobufCMethodDescriptor chat__method_descriptors[1] =
+{
+ { "RequestFriendPersonaStates", &cchat__request_friend_persona_states__request__descriptor, &cchat__request_friend_persona_states__response__descriptor },
+};
+const unsigned chat__method_indices_by_name[] = {
+ 0 /* RequestFriendPersonaStates */
+};
+const ProtobufCServiceDescriptor chat__descriptor =
+{
+ PROTOBUF_C__SERVICE_DESCRIPTOR_MAGIC,
+ "Chat",
+ "Chat",
+ "Chat",
+ "",
+ 1,
+ chat__method_descriptors,
+ chat__method_indices_by_name
+};
+void chat__request_friend_persona_states(ProtobufCService *service,
+ const CChatRequestFriendPersonaStatesRequest *input,
+ CChatRequestFriendPersonaStatesResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat__descriptor);
+ service->invoke(service, 0, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat__init (Chat_Service *service,
+ Chat_ServiceDestroy destroy)
+{
+ protobuf_c_service_generated_init (&service->base,
+ &chat__descriptor,
+ (ProtobufCServiceDestroy) destroy);
+}
+static const ProtobufCMethodDescriptor chat_room__method_descriptors[53] =
+{
+ { "CreateChatRoomGroup", &cchat_room__create_chat_room_group__request__descriptor, &cchat_room__create_chat_room_group__response__descriptor },
+ { "SaveChatRoomGroup", &cchat_room__save_chat_room_group__request__descriptor, &cchat_room__save_chat_room_group__response__descriptor },
+ { "RenameChatRoomGroup", &cchat_room__rename_chat_room_group__request__descriptor, &cchat_room__rename_chat_room_group__response__descriptor },
+ { "SetChatRoomGroupTagline", &cchat_room__set_chat_room_group_tagline__request__descriptor, &cchat_room__set_chat_room_group_tagline__response__descriptor },
+ { "SetChatRoomGroupAvatar", &cchat_room__set_chat_room_group_avatar__request__descriptor, &cchat_room__set_chat_room_group_avatar__response__descriptor },
+ { "SetChatRoomGroupWatchingBroadcast", &cchat_room__set_chat_room_group_watching_broadcast__request__descriptor, &cchat_room__set_chat_room_group_watching_broadcast__response__descriptor },
+ { "JoinMiniGameForChatRoomGroup", &cchat_room__join_mini_game_for_chat_room_group__request__descriptor, &cchat_room__join_mini_game_for_chat_room_group__response__descriptor },
+ { "EndMiniGameForChatRoomGroup", &cchat_room__end_mini_game_for_chat_room_group__request__descriptor, &cchat_room__end_mini_game_for_chat_room_group__response__descriptor },
+ { "MuteUserInGroup", &cchat_room__mute_user__request__descriptor, &cchat_room__mute_user__response__descriptor },
+ { "KickUserFromGroup", &cchat_room__kick_user__request__descriptor, &cchat_room__kick_user__response__descriptor },
+ { "SetUserBanState", &cchat_room__set_user_ban_state__request__descriptor, &cchat_room__set_user_ban_state__response__descriptor },
+ { "RevokeInviteToGroup", &cchat_room__revoke_invite__request__descriptor, &cchat_room__revoke_invite__response__descriptor },
+ { "CreateRole", &cchat_room__create_role__request__descriptor, &cchat_room__create_role__response__descriptor },
+ { "GetRoles", &cchat_room__get_roles__request__descriptor, &cchat_room__get_roles__response__descriptor },
+ { "RenameRole", &cchat_room__rename_role__request__descriptor, &cchat_room__rename_role__response__descriptor },
+ { "ReorderRole", &cchat_room__reorder_role__request__descriptor, &cchat_room__reorder_role__response__descriptor },
+ { "DeleteRole", &cchat_room__delete_role__request__descriptor, &cchat_room__delete_role__response__descriptor },
+ { "GetRoleActions", &cchat_room__get_role_actions__request__descriptor, &cchat_room__get_role_actions__response__descriptor },
+ { "ReplaceRoleActions", &cchat_room__replace_role_actions__request__descriptor, &cchat_room__replace_role_actions__response__descriptor },
+ { "AddRoleToUser", &cchat_room__add_role_to_user__request__descriptor, &cchat_room__add_role_to_user__response__descriptor },
+ { "GetRolesForUser", &cchat_room__get_roles_for_user__request__descriptor, &cchat_room__get_roles_for_user__response__descriptor },
+ { "DeleteRoleFromUser", &cchat_room__delete_role_from_user__request__descriptor, &cchat_room__delete_role_from_user__response__descriptor },
+ { "JoinChatRoomGroup", &cchat_room__join_chat_room_group__request__descriptor, &cchat_room__join_chat_room_group__response__descriptor },
+ { "InviteFriendToChatRoomGroup", &cchat_room__invite_friend_to_chat_room_group__request__descriptor, &cchat_room__invite_friend_to_chat_room_group__response__descriptor },
+ { "LeaveChatRoomGroup", &cchat_room__leave_chat_room_group__request__descriptor, &cchat_room__leave_chat_room_group__response__descriptor },
+ { "CreateChatRoom", &cchat_room__create_chat_room__request__descriptor, &cchat_room__create_chat_room__response__descriptor },
+ { "DeleteChatRoom", &cchat_room__delete_chat_room__request__descriptor, &cchat_room__delete_chat_room__response__descriptor },
+ { "RenameChatRoom", &cchat_room__rename_chat_room__request__descriptor, &cchat_room__rename_chat_room__response__descriptor },
+ { "ReorderChatRoom", &cchat_room__reorder_chat_room__request__descriptor, &cchat_room__reorder_chat_room__response__descriptor },
+ { "SendChatMessage", &cchat_room__send_chat_message__request__descriptor, &cchat_room__send_chat_message__response__descriptor },
+ { "JoinVoiceChat", &cchat_room__join_voice_chat__request__descriptor, &cchat_room__join_voice_chat__response__descriptor },
+ { "LeaveVoiceChat", &cchat_room__leave_voice_chat__request__descriptor, &cchat_room__leave_voice_chat__response__descriptor },
+ { "GetMessageHistory", &cchat_room__get_message_history__request__descriptor, &cchat_room__get_message_history__response__descriptor },
+ { "GetMyChatRoomGroups", &cchat_room__get_my_chat_room_groups__request__descriptor, &cchat_room__get_my_chat_room_groups__response__descriptor },
+ { "GetChatRoomGroupState", &cchat_room__get_chat_room_group_state__request__descriptor, &cchat_room__get_chat_room_group_state__response__descriptor },
+ { "GetChatRoomGroupSummary", &cchat_room__get_chat_room_group_summary__request__descriptor, &cchat_room__get_chat_room_group_summary__response__descriptor },
+ { "SetAppChatRoomGroupForceActive", &cchat_room__set_app_chat_room_group_force_active__request__descriptor, &cchat_room__set_app_chat_room_group_force_active__response__descriptor },
+ { "SetAppChatRoomGroupStopForceActive", &cchat_room__set_app_chat_room_group_stop_force_active__notification__descriptor, &no_response__descriptor },
+ { "AckChatMessage", &cchat_room__ack_chat_message__notification__descriptor, &no_response__descriptor },
+ { "CreateInviteLink", &cchat_room__create_invite_link__request__descriptor, &cchat_room__create_invite_link__response__descriptor },
+ { "GetInviteLinkInfo", &cchat_room__get_invite_link_info__request__descriptor, &cchat_room__get_invite_link_info__response__descriptor },
+ { "GetInviteInfo", &cchat_room__get_invite_info__request__descriptor, &cchat_room__get_invite_info__response__descriptor },
+ { "GetInviteLinksForGroup", &cchat_room__get_invite_links_for_group__request__descriptor, &cchat_room__get_invite_links_for_group__response__descriptor },
+ { "GetBanList", &cchat_room__get_ban_list__request__descriptor, &cchat_room__get_ban_list__response__descriptor },
+ { "GetInviteList", &cchat_room__get_invite_list__request__descriptor, &cchat_room__get_invite_list__response__descriptor },
+ { "DeleteInviteLink", &cchat_room__delete_invite_link__request__descriptor, &cchat_room__delete_invite_link__response__descriptor },
+ { "SetSessionActiveChatRoomGroups", &cchat_room__set_session_active_chat_room_groups__request__descriptor, &cchat_room__set_session_active_chat_room_groups__response__descriptor },
+ { "SetUserChatGroupPreferences", &cchat_room__set_user_chat_group_preferences__request__descriptor, &cchat_room__set_user_chat_group_preferences__response__descriptor },
+ { "DeleteChatMessages", &cchat_room__delete_chat_messages__request__descriptor, &cchat_room__delete_chat_messages__response__descriptor },
+ { "UpdateMemberListView", &cchat_room__update_member_list_view__notification__descriptor, &no_response__descriptor },
+ { "SearchMembers", &cchat_room__search_members__request__descriptor, &cchat_room__search_members__response__descriptor },
+ { "UpdateMessageReaction", &cchat_room__update_message_reaction__request__descriptor, &cchat_room__update_message_reaction__response__descriptor },
+ { "GetMessageReactionReactors", &cchat_room__get_message_reaction_reactors__request__descriptor, &cchat_room__get_message_reaction_reactors__response__descriptor },
+};
+const unsigned chat_room__method_indices_by_name[] = {
+ 38, /* AckChatMessage */
+ 19, /* AddRoleToUser */
+ 25, /* CreateChatRoom */
+ 0, /* CreateChatRoomGroup */
+ 39, /* CreateInviteLink */
+ 12, /* CreateRole */
+ 48, /* DeleteChatMessages */
+ 26, /* DeleteChatRoom */
+ 45, /* DeleteInviteLink */
+ 16, /* DeleteRole */
+ 21, /* DeleteRoleFromUser */
+ 7, /* EndMiniGameForChatRoomGroup */
+ 43, /* GetBanList */
+ 34, /* GetChatRoomGroupState */
+ 35, /* GetChatRoomGroupSummary */
+ 41, /* GetInviteInfo */
+ 40, /* GetInviteLinkInfo */
+ 42, /* GetInviteLinksForGroup */
+ 44, /* GetInviteList */
+ 32, /* GetMessageHistory */
+ 52, /* GetMessageReactionReactors */
+ 33, /* GetMyChatRoomGroups */
+ 17, /* GetRoleActions */
+ 13, /* GetRoles */
+ 20, /* GetRolesForUser */
+ 23, /* InviteFriendToChatRoomGroup */
+ 22, /* JoinChatRoomGroup */
+ 6, /* JoinMiniGameForChatRoomGroup */
+ 30, /* JoinVoiceChat */
+ 9, /* KickUserFromGroup */
+ 24, /* LeaveChatRoomGroup */
+ 31, /* LeaveVoiceChat */
+ 8, /* MuteUserInGroup */
+ 27, /* RenameChatRoom */
+ 2, /* RenameChatRoomGroup */
+ 14, /* RenameRole */
+ 28, /* ReorderChatRoom */
+ 15, /* ReorderRole */
+ 18, /* ReplaceRoleActions */
+ 11, /* RevokeInviteToGroup */
+ 1, /* SaveChatRoomGroup */
+ 50, /* SearchMembers */
+ 29, /* SendChatMessage */
+ 36, /* SetAppChatRoomGroupForceActive */
+ 37, /* SetAppChatRoomGroupStopForceActive */
+ 4, /* SetChatRoomGroupAvatar */
+ 3, /* SetChatRoomGroupTagline */
+ 5, /* SetChatRoomGroupWatchingBroadcast */
+ 46, /* SetSessionActiveChatRoomGroups */
+ 10, /* SetUserBanState */
+ 47, /* SetUserChatGroupPreferences */
+ 49, /* UpdateMemberListView */
+ 51 /* UpdateMessageReaction */
+};
+const ProtobufCServiceDescriptor chat_room__descriptor =
+{
+ PROTOBUF_C__SERVICE_DESCRIPTOR_MAGIC,
+ "ChatRoom",
+ "ChatRoom",
+ "ChatRoom",
+ "",
+ 53,
+ chat_room__method_descriptors,
+ chat_room__method_indices_by_name
+};
+void chat_room__create_chat_room_group(ProtobufCService *service,
+ const CChatRoomCreateChatRoomGroupRequest *input,
+ CChatRoomCreateChatRoomGroupResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 0, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__save_chat_room_group(ProtobufCService *service,
+ const CChatRoomSaveChatRoomGroupRequest *input,
+ CChatRoomSaveChatRoomGroupResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 1, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__rename_chat_room_group(ProtobufCService *service,
+ const CChatRoomRenameChatRoomGroupRequest *input,
+ CChatRoomRenameChatRoomGroupResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 2, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__set_chat_room_group_tagline(ProtobufCService *service,
+ const CChatRoomSetChatRoomGroupTaglineRequest *input,
+ CChatRoomSetChatRoomGroupTaglineResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 3, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__set_chat_room_group_avatar(ProtobufCService *service,
+ const CChatRoomSetChatRoomGroupAvatarRequest *input,
+ CChatRoomSetChatRoomGroupAvatarResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 4, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__set_chat_room_group_watching_broadcast(ProtobufCService *service,
+ const CChatRoomSetChatRoomGroupWatchingBroadcastRequest *input,
+ CChatRoomSetChatRoomGroupWatchingBroadcastResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 5, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__join_mini_game_for_chat_room_group(ProtobufCService *service,
+ const CChatRoomJoinMiniGameForChatRoomGroupRequest *input,
+ CChatRoomJoinMiniGameForChatRoomGroupResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 6, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__end_mini_game_for_chat_room_group(ProtobufCService *service,
+ const CChatRoomEndMiniGameForChatRoomGroupRequest *input,
+ CChatRoomEndMiniGameForChatRoomGroupResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 7, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__mute_user_in_group(ProtobufCService *service,
+ const CChatRoomMuteUserRequest *input,
+ CChatRoomMuteUserResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 8, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__kick_user_from_group(ProtobufCService *service,
+ const CChatRoomKickUserRequest *input,
+ CChatRoomKickUserResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 9, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__set_user_ban_state(ProtobufCService *service,
+ const CChatRoomSetUserBanStateRequest *input,
+ CChatRoomSetUserBanStateResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 10, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__revoke_invite_to_group(ProtobufCService *service,
+ const CChatRoomRevokeInviteRequest *input,
+ CChatRoomRevokeInviteResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 11, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__create_role(ProtobufCService *service,
+ const CChatRoomCreateRoleRequest *input,
+ CChatRoomCreateRoleResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 12, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__get_roles(ProtobufCService *service,
+ const CChatRoomGetRolesRequest *input,
+ CChatRoomGetRolesResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 13, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__rename_role(ProtobufCService *service,
+ const CChatRoomRenameRoleRequest *input,
+ CChatRoomRenameRoleResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 14, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__reorder_role(ProtobufCService *service,
+ const CChatRoomReorderRoleRequest *input,
+ CChatRoomReorderRoleResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 15, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__delete_role(ProtobufCService *service,
+ const CChatRoomDeleteRoleRequest *input,
+ CChatRoomDeleteRoleResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 16, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__get_role_actions(ProtobufCService *service,
+ const CChatRoomGetRoleActionsRequest *input,
+ CChatRoomGetRoleActionsResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 17, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__replace_role_actions(ProtobufCService *service,
+ const CChatRoomReplaceRoleActionsRequest *input,
+ CChatRoomReplaceRoleActionsResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 18, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__add_role_to_user(ProtobufCService *service,
+ const CChatRoomAddRoleToUserRequest *input,
+ CChatRoomAddRoleToUserResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 19, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__get_roles_for_user(ProtobufCService *service,
+ const CChatRoomGetRolesForUserRequest *input,
+ CChatRoomGetRolesForUserResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 20, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__delete_role_from_user(ProtobufCService *service,
+ const CChatRoomDeleteRoleFromUserRequest *input,
+ CChatRoomDeleteRoleFromUserResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 21, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__join_chat_room_group(ProtobufCService *service,
+ const CChatRoomJoinChatRoomGroupRequest *input,
+ CChatRoomJoinChatRoomGroupResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 22, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__invite_friend_to_chat_room_group(ProtobufCService *service,
+ const CChatRoomInviteFriendToChatRoomGroupRequest *input,
+ CChatRoomInviteFriendToChatRoomGroupResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 23, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__leave_chat_room_group(ProtobufCService *service,
+ const CChatRoomLeaveChatRoomGroupRequest *input,
+ CChatRoomLeaveChatRoomGroupResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 24, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__create_chat_room(ProtobufCService *service,
+ const CChatRoomCreateChatRoomRequest *input,
+ CChatRoomCreateChatRoomResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 25, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__delete_chat_room(ProtobufCService *service,
+ const CChatRoomDeleteChatRoomRequest *input,
+ CChatRoomDeleteChatRoomResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 26, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__rename_chat_room(ProtobufCService *service,
+ const CChatRoomRenameChatRoomRequest *input,
+ CChatRoomRenameChatRoomResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 27, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__reorder_chat_room(ProtobufCService *service,
+ const CChatRoomReorderChatRoomRequest *input,
+ CChatRoomReorderChatRoomResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 28, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__send_chat_message(ProtobufCService *service,
+ const CChatRoomSendChatMessageRequest *input,
+ CChatRoomSendChatMessageResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 29, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__join_voice_chat(ProtobufCService *service,
+ const CChatRoomJoinVoiceChatRequest *input,
+ CChatRoomJoinVoiceChatResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 30, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__leave_voice_chat(ProtobufCService *service,
+ const CChatRoomLeaveVoiceChatRequest *input,
+ CChatRoomLeaveVoiceChatResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 31, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__get_message_history(ProtobufCService *service,
+ const CChatRoomGetMessageHistoryRequest *input,
+ CChatRoomGetMessageHistoryResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 32, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__get_my_chat_room_groups(ProtobufCService *service,
+ const CChatRoomGetMyChatRoomGroupsRequest *input,
+ CChatRoomGetMyChatRoomGroupsResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 33, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__get_chat_room_group_state(ProtobufCService *service,
+ const CChatRoomGetChatRoomGroupStateRequest *input,
+ CChatRoomGetChatRoomGroupStateResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 34, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__get_chat_room_group_summary(ProtobufCService *service,
+ const CChatRoomGetChatRoomGroupSummaryRequest *input,
+ CChatRoomGetChatRoomGroupSummaryResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 35, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__set_app_chat_room_group_force_active(ProtobufCService *service,
+ const CChatRoomSetAppChatRoomGroupForceActiveRequest *input,
+ CChatRoomSetAppChatRoomGroupForceActiveResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 36, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__set_app_chat_room_group_stop_force_active(ProtobufCService *service,
+ const CChatRoomSetAppChatRoomGroupStopForceActiveNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 37, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__ack_chat_message(ProtobufCService *service,
+ const CChatRoomAckChatMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 38, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__create_invite_link(ProtobufCService *service,
+ const CChatRoomCreateInviteLinkRequest *input,
+ CChatRoomCreateInviteLinkResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 39, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__get_invite_link_info(ProtobufCService *service,
+ const CChatRoomGetInviteLinkInfoRequest *input,
+ CChatRoomGetInviteLinkInfoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 40, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__get_invite_info(ProtobufCService *service,
+ const CChatRoomGetInviteInfoRequest *input,
+ CChatRoomGetInviteInfoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 41, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__get_invite_links_for_group(ProtobufCService *service,
+ const CChatRoomGetInviteLinksForGroupRequest *input,
+ CChatRoomGetInviteLinksForGroupResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 42, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__get_ban_list(ProtobufCService *service,
+ const CChatRoomGetBanListRequest *input,
+ CChatRoomGetBanListResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 43, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__get_invite_list(ProtobufCService *service,
+ const CChatRoomGetInviteListRequest *input,
+ CChatRoomGetInviteListResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 44, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__delete_invite_link(ProtobufCService *service,
+ const CChatRoomDeleteInviteLinkRequest *input,
+ CChatRoomDeleteInviteLinkResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 45, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__set_session_active_chat_room_groups(ProtobufCService *service,
+ const CChatRoomSetSessionActiveChatRoomGroupsRequest *input,
+ CChatRoomSetSessionActiveChatRoomGroupsResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 46, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__set_user_chat_group_preferences(ProtobufCService *service,
+ const CChatRoomSetUserChatGroupPreferencesRequest *input,
+ CChatRoomSetUserChatGroupPreferencesResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 47, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__delete_chat_messages(ProtobufCService *service,
+ const CChatRoomDeleteChatMessagesRequest *input,
+ CChatRoomDeleteChatMessagesResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 48, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__update_member_list_view(ProtobufCService *service,
+ const CChatRoomUpdateMemberListViewNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 49, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__search_members(ProtobufCService *service,
+ const CChatRoomSearchMembersRequest *input,
+ CChatRoomSearchMembersResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 50, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__update_message_reaction(ProtobufCService *service,
+ const CChatRoomUpdateMessageReactionRequest *input,
+ CChatRoomUpdateMessageReactionResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 51, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__get_message_reaction_reactors(ProtobufCService *service,
+ const CChatRoomGetMessageReactionReactorsRequest *input,
+ CChatRoomGetMessageReactionReactorsResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room__descriptor);
+ service->invoke(service, 52, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room__init (ChatRoom_Service *service,
+ ChatRoom_ServiceDestroy destroy)
+{
+ protobuf_c_service_generated_init (&service->base,
+ &chat_room__descriptor,
+ (ProtobufCServiceDestroy) destroy);
+}
+static const ProtobufCMethodDescriptor clan_chat_rooms__method_descriptors[2] =
+{
+ { "GetClanChatRoomInfo", &cclan_chat_rooms__get_clan_chat_room_info__request__descriptor, &cclan_chat_rooms__get_clan_chat_room_info__response__descriptor },
+ { "SetClanChatRoomPrivate", &cclan_chat_rooms__set_clan_chat_room_private__request__descriptor, &cclan_chat_rooms__set_clan_chat_room_private__response__descriptor },
+};
+const unsigned clan_chat_rooms__method_indices_by_name[] = {
+ 0, /* GetClanChatRoomInfo */
+ 1 /* SetClanChatRoomPrivate */
+};
+const ProtobufCServiceDescriptor clan_chat_rooms__descriptor =
+{
+ PROTOBUF_C__SERVICE_DESCRIPTOR_MAGIC,
+ "ClanChatRooms",
+ "ClanChatRooms",
+ "ClanChatRooms",
+ "",
+ 2,
+ clan_chat_rooms__method_descriptors,
+ clan_chat_rooms__method_indices_by_name
+};
+void clan_chat_rooms__get_clan_chat_room_info(ProtobufCService *service,
+ const CClanChatRoomsGetClanChatRoomInfoRequest *input,
+ CClanChatRoomsGetClanChatRoomInfoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &clan_chat_rooms__descriptor);
+ service->invoke(service, 0, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void clan_chat_rooms__set_clan_chat_room_private(ProtobufCService *service,
+ const CClanChatRoomsSetClanChatRoomPrivateRequest *input,
+ CClanChatRoomsSetClanChatRoomPrivateResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &clan_chat_rooms__descriptor);
+ service->invoke(service, 1, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void clan_chat_rooms__init (ClanChatRooms_Service *service,
+ ClanChatRooms_ServiceDestroy destroy)
+{
+ protobuf_c_service_generated_init (&service->base,
+ &clan_chat_rooms__descriptor,
+ (ProtobufCServiceDestroy) destroy);
+}
+static const ProtobufCMethodDescriptor chat_room_client__method_descriptors[11] =
+{
+ { "NotifyIncomingChatMessage", &cchat_room__incoming_chat_message__notification__descriptor, &no_response__descriptor },
+ { "NotifyChatMessageModified", &cchat_room__chat_message_modified__notification__descriptor, &no_response__descriptor },
+ { "NotifyMemberStateChange", &cchat_room__member_state_change__notification__descriptor, &no_response__descriptor },
+ { "NotifyChatRoomHeaderStateChange", &cchat_room__chat_room_header_state__notification__descriptor, &no_response__descriptor },
+ { "NotifyChatRoomGroupRoomsChange", &cchat_room__chat_room_group_rooms_change__notification__descriptor, &no_response__descriptor },
+ { "NotifyShouldRejoinChatRoomVoiceChat", &cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__descriptor, &no_response__descriptor },
+ { "NotifyChatGroupUserStateChanged", &chat_room_client__notify_chat_group_user_state_changed__notification__descriptor, &no_response__descriptor },
+ { "NotifyAckChatMessageEcho", &cchat_room__ack_chat_message__notification__descriptor, &no_response__descriptor },
+ { "NotifyChatRoomDisconnect", &chat_room_client__notify_chat_room_disconnect__notification__descriptor, &no_response__descriptor },
+ { "NotifyMemberListViewUpdated", &cchat_room_client__member_list_view_updated__notification__descriptor, &no_response__descriptor },
+ { "NotifyMessageReaction", &cchat_room__message_reaction__notification__descriptor, &no_response__descriptor },
+};
+const unsigned chat_room_client__method_indices_by_name[] = {
+ 7, /* NotifyAckChatMessageEcho */
+ 6, /* NotifyChatGroupUserStateChanged */
+ 1, /* NotifyChatMessageModified */
+ 8, /* NotifyChatRoomDisconnect */
+ 4, /* NotifyChatRoomGroupRoomsChange */
+ 3, /* NotifyChatRoomHeaderStateChange */
+ 0, /* NotifyIncomingChatMessage */
+ 9, /* NotifyMemberListViewUpdated */
+ 2, /* NotifyMemberStateChange */
+ 10, /* NotifyMessageReaction */
+ 5 /* NotifyShouldRejoinChatRoomVoiceChat */
+};
+const ProtobufCServiceDescriptor chat_room_client__descriptor =
+{
+ PROTOBUF_C__SERVICE_DESCRIPTOR_MAGIC,
+ "ChatRoomClient",
+ "ChatRoomClient",
+ "ChatRoomClient",
+ "",
+ 11,
+ chat_room_client__method_descriptors,
+ chat_room_client__method_indices_by_name
+};
+void chat_room_client__notify_incoming_chat_message(ProtobufCService *service,
+ const CChatRoomIncomingChatMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room_client__descriptor);
+ service->invoke(service, 0, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room_client__notify_chat_message_modified(ProtobufCService *service,
+ const CChatRoomChatMessageModifiedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room_client__descriptor);
+ service->invoke(service, 1, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room_client__notify_member_state_change(ProtobufCService *service,
+ const CChatRoomMemberStateChangeNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room_client__descriptor);
+ service->invoke(service, 2, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room_client__notify_chat_room_header_state_change(ProtobufCService *service,
+ const CChatRoomChatRoomHeaderStateNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room_client__descriptor);
+ service->invoke(service, 3, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room_client__notify_chat_room_group_rooms_change(ProtobufCService *service,
+ const CChatRoomChatRoomGroupRoomsChangeNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room_client__descriptor);
+ service->invoke(service, 4, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room_client__notify_should_rejoin_chat_room_voice_chat(ProtobufCService *service,
+ const CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room_client__descriptor);
+ service->invoke(service, 5, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room_client__notify_chat_group_user_state_changed(ProtobufCService *service,
+ const ChatRoomClientNotifyChatGroupUserStateChangedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room_client__descriptor);
+ service->invoke(service, 6, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room_client__notify_ack_chat_message_echo(ProtobufCService *service,
+ const CChatRoomAckChatMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room_client__descriptor);
+ service->invoke(service, 7, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room_client__notify_chat_room_disconnect(ProtobufCService *service,
+ const ChatRoomClientNotifyChatRoomDisconnectNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room_client__descriptor);
+ service->invoke(service, 8, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room_client__notify_member_list_view_updated(ProtobufCService *service,
+ const CChatRoomClientMemberListViewUpdatedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room_client__descriptor);
+ service->invoke(service, 9, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room_client__notify_message_reaction(ProtobufCService *service,
+ const CChatRoomMessageReactionNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_room_client__descriptor);
+ service->invoke(service, 10, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_room_client__init (ChatRoomClient_Service *service,
+ ChatRoomClient_ServiceDestroy destroy)
+{
+ protobuf_c_service_generated_init (&service->base,
+ &chat_room_client__descriptor,
+ (ProtobufCServiceDestroy) destroy);
+}
+static const ProtobufCMethodDescriptor chat_usability__method_descriptors[1] =
+{
+ { "NotifyClientUsabilityMetrics", &cchat_usability__client_usability_metrics__notification__descriptor, &no_response__descriptor },
+};
+const unsigned chat_usability__method_indices_by_name[] = {
+ 0 /* NotifyClientUsabilityMetrics */
+};
+const ProtobufCServiceDescriptor chat_usability__descriptor =
+{
+ PROTOBUF_C__SERVICE_DESCRIPTOR_MAGIC,
+ "ChatUsability",
+ "ChatUsability",
+ "ChatUsability",
+ "",
+ 1,
+ chat_usability__method_descriptors,
+ chat_usability__method_indices_by_name
+};
+void chat_usability__notify_client_usability_metrics(ProtobufCService *service,
+ const CChatUsabilityClientUsabilityMetricsNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_usability__descriptor);
+ service->invoke(service, 0, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_usability__init (ChatUsability_Service *service,
+ ChatUsability_ServiceDestroy destroy)
+{
+ protobuf_c_service_generated_init (&service->base,
+ &chat_usability__descriptor,
+ (ProtobufCServiceDestroy) destroy);
+}
+static const ProtobufCMethodDescriptor chat_usability_client__method_descriptors[1] =
+{
+ { "NotifyRequestClientUsabilityMetrics", &cchat_usability__request_client_usability_metrics__notification__descriptor, &no_response__descriptor },
+};
+const unsigned chat_usability_client__method_indices_by_name[] = {
+ 0 /* NotifyRequestClientUsabilityMetrics */
+};
+const ProtobufCServiceDescriptor chat_usability_client__descriptor =
+{
+ PROTOBUF_C__SERVICE_DESCRIPTOR_MAGIC,
+ "ChatUsabilityClient",
+ "ChatUsabilityClient",
+ "ChatUsabilityClient",
+ "",
+ 1,
+ chat_usability_client__method_descriptors,
+ chat_usability_client__method_indices_by_name
+};
+void chat_usability_client__notify_request_client_usability_metrics(ProtobufCService *service,
+ const CChatUsabilityRequestClientUsabilityMetricsNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &chat_usability_client__descriptor);
+ service->invoke(service, 0, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void chat_usability_client__init (ChatUsabilityClient_Service *service,
+ ChatUsabilityClient_ServiceDestroy destroy)
+{
+ protobuf_c_service_generated_init (&service->base,
+ &chat_usability_client__descriptor,
+ (ProtobufCServiceDestroy) destroy);
+}
diff --git a/protocols/Steam/src/protobuf-c/steammessages_chat.steamclient.pb-c.h b/protocols/Steam/src/protobuf-c/steammessages_chat.steamclient.pb-c.h
new file mode 100644
index 0000000000..fcb73bb19d
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_chat.steamclient.pb-c.h
@@ -0,0 +1,5799 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_chat.steamclient.proto */
+
+#ifndef PROTOBUF_C_steammessages_5fchat_2esteamclient_2eproto__INCLUDED
+#define PROTOBUF_C_steammessages_5fchat_2esteamclient_2eproto__INCLUDED
+
+#include "protobuf-c.h"
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1000000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1004001 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "steammessages_base.pb-c.h"
+#include "steammessages_unified_base.steamclient.pb-c.h"
+#include "steammessages_clientserver_friends.pb-c.h"
+
+struct CChatRequestFriendPersonaStatesRequest;
+struct CChatRequestFriendPersonaStatesResponse;
+struct CChatRoomCreateChatRoomGroupRequest;
+struct CChatRole;
+struct CChatRoleActions;
+struct CChatPartyBeacon;
+struct CChatRoomGroupHeaderState;
+struct CChatRoomMember;
+struct CChatRoomState;
+struct CChatRoomGroupState;
+struct CUserChatRoomState;
+struct CUserChatRoomGroupState;
+struct CChatRoomCreateChatRoomGroupResponse;
+struct CChatRoomSaveChatRoomGroupRequest;
+struct CChatRoomSaveChatRoomGroupResponse;
+struct CChatRoomRenameChatRoomGroupRequest;
+struct CChatRoomRenameChatRoomGroupResponse;
+struct CChatRoomSetChatRoomGroupTaglineRequest;
+struct CChatRoomSetChatRoomGroupTaglineResponse;
+struct CChatRoomSetChatRoomGroupAvatarRequest;
+struct CChatRoomSetChatRoomGroupAvatarResponse;
+struct CChatRoomSetChatRoomGroupWatchingBroadcastRequest;
+struct CChatRoomSetChatRoomGroupWatchingBroadcastResponse;
+struct CChatRoomJoinMiniGameForChatRoomGroupRequest;
+struct CChatRoomJoinMiniGameForChatRoomGroupResponse;
+struct CChatRoomEndMiniGameForChatRoomGroupRequest;
+struct CChatRoomEndMiniGameForChatRoomGroupResponse;
+struct CChatRoomMuteUserRequest;
+struct CChatRoomMuteUserResponse;
+struct CChatRoomKickUserRequest;
+struct CChatRoomKickUserResponse;
+struct CChatRoomSetUserBanStateRequest;
+struct CChatRoomSetUserBanStateResponse;
+struct CChatRoomRevokeInviteRequest;
+struct CChatRoomRevokeInviteResponse;
+struct CChatRoomCreateRoleRequest;
+struct CChatRoomCreateRoleResponse;
+struct CChatRoomGetRolesRequest;
+struct CChatRoomGetRolesResponse;
+struct CChatRoomRenameRoleRequest;
+struct CChatRoomRenameRoleResponse;
+struct CChatRoomReorderRoleRequest;
+struct CChatRoomReorderRoleResponse;
+struct CChatRoomDeleteRoleRequest;
+struct CChatRoomDeleteRoleResponse;
+struct CChatRoomGetRoleActionsRequest;
+struct CChatRoomGetRoleActionsResponse;
+struct CChatRoomReplaceRoleActionsRequest;
+struct CChatRoomReplaceRoleActionsResponse;
+struct CChatRoomAddRoleToUserRequest;
+struct CChatRoomAddRoleToUserResponse;
+struct CChatRoomGetRolesForUserRequest;
+struct CChatRoomGetRolesForUserResponse;
+struct CChatRoomDeleteRoleFromUserRequest;
+struct CChatRoomDeleteRoleFromUserResponse;
+struct CChatRoomJoinChatRoomGroupRequest;
+struct CChatRoomJoinChatRoomGroupResponse;
+struct CChatRoomInviteFriendToChatRoomGroupRequest;
+struct CChatRoomInviteFriendToChatRoomGroupResponse;
+struct CChatRoomLeaveChatRoomGroupRequest;
+struct CChatRoomLeaveChatRoomGroupResponse;
+struct CChatRoomCreateChatRoomRequest;
+struct CChatRoomCreateChatRoomResponse;
+struct CChatRoomDeleteChatRoomRequest;
+struct CChatRoomDeleteChatRoomResponse;
+struct CChatRoomRenameChatRoomRequest;
+struct CChatRoomRenameChatRoomResponse;
+struct CChatRoomReorderChatRoomRequest;
+struct CChatRoomReorderChatRoomResponse;
+struct CChatRoomSendChatMessageRequest;
+struct CChatRoomSendChatMessageResponse;
+struct CChatRoomJoinVoiceChatRequest;
+struct CChatRoomJoinVoiceChatResponse;
+struct CChatRoomLeaveVoiceChatRequest;
+struct CChatRoomLeaveVoiceChatResponse;
+struct CChatRoomGetMessageHistoryRequest;
+struct ServerMessage;
+struct CChatRoomGetMessageHistoryResponse;
+struct CChatRoomGetMessageHistoryResponse__ChatMessage;
+struct CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction;
+struct CChatRoomGetMyChatRoomGroupsRequest;
+struct CChatRoomGetChatRoomGroupSummaryResponse;
+struct CChatRoomSummaryPair;
+struct CChatRoomGetMyChatRoomGroupsResponse;
+struct CChatRoomGetChatRoomGroupStateRequest;
+struct CChatRoomGetChatRoomGroupStateResponse;
+struct CChatRoomGetChatRoomGroupSummaryRequest;
+struct CChatRoomSetAppChatRoomGroupForceActiveRequest;
+struct CChatRoomSetAppChatRoomGroupForceActiveResponse;
+struct CChatRoomSetAppChatRoomGroupStopForceActiveNotification;
+struct CChatRoomAckChatMessageNotification;
+struct CChatRoomCreateInviteLinkRequest;
+struct CChatRoomCreateInviteLinkResponse;
+struct CChatRoomGetInviteLinkInfoRequest;
+struct CChatRoomGetInviteLinkInfoResponse;
+struct CChatRoomGetInviteInfoRequest;
+struct CChatRoomGetInviteInfoResponse;
+struct CChatRoomGetInviteLinksForGroupRequest;
+struct CChatRoomGetInviteLinksForGroupResponse;
+struct CChatRoomGetInviteLinksForGroupResponse__LinkInfo;
+struct CChatRoomGetBanListRequest;
+struct CChatRoomGetBanListResponse;
+struct CChatRoomGetBanListResponse__BanInfo;
+struct CChatRoomGetInviteListRequest;
+struct CChatRoomGroupInvite;
+struct CChatRoomGetInviteListResponse;
+struct CChatRoomDeleteInviteLinkRequest;
+struct CChatRoomDeleteInviteLinkResponse;
+struct CChatRoomSetSessionActiveChatRoomGroupsRequest;
+struct CChatRoomSetSessionActiveChatRoomGroupsResponse;
+struct CChatRoomSetUserChatGroupPreferencesRequest;
+struct CChatRoomSetUserChatGroupPreferencesRequest__ChatGroupPreferences;
+struct CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences;
+struct CChatRoomSetUserChatGroupPreferencesResponse;
+struct CChatRoomDeleteChatMessagesRequest;
+struct CChatRoomDeleteChatMessagesRequest__Message;
+struct CChatRoomDeleteChatMessagesResponse;
+struct CChatRoomUpdateMemberListViewNotification;
+struct CChatRoomSearchMembersRequest;
+struct CChatRoomSearchMembersResponse;
+struct CChatRoomSearchMembersResponse__MemberMatch;
+struct CChatRoomUpdateMessageReactionRequest;
+struct CChatRoomUpdateMessageReactionResponse;
+struct CChatRoomGetMessageReactionReactorsRequest;
+struct CChatRoomGetMessageReactionReactorsResponse;
+struct CClanChatRoomsGetClanChatRoomInfoRequest;
+struct CClanChatRoomsGetClanChatRoomInfoResponse;
+struct CClanChatRoomsSetClanChatRoomPrivateRequest;
+struct CClanChatRoomsSetClanChatRoomPrivateResponse;
+struct CChatMentions;
+struct CChatRoomIncomingChatMessageNotification;
+struct CChatRoomChatMessageModifiedNotification;
+struct CChatRoomChatMessageModifiedNotification__ChatMessage;
+struct CChatRoomMemberStateChangeNotification;
+struct CChatRoomChatRoomHeaderStateNotification;
+struct CChatRoomChatRoomGroupRoomsChangeNotification;
+struct CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification;
+struct ChatRoomClientNotifyChatGroupUserStateChangedNotification;
+struct ChatRoomClientNotifyChatRoomDisconnectNotification;
+struct CChatRoomMemberListView;
+struct CChatRoomMemberSummaryCounts;
+struct CChatRoomClientMemberListViewUpdatedNotification;
+struct CChatRoomClientMemberListViewUpdatedNotification__MemberListViewEntry;
+struct CChatRoomMessageReactionNotification;
+struct CChatUsabilityClientUsabilityMetricsNotification;
+struct CChatUsabilityClientUsabilityMetricsNotification__Settings;
+struct CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings;
+struct CChatUsabilityClientUsabilityMetricsNotification__UIState;
+struct CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState;
+struct CChatUsabilityClientUsabilityMetricsNotification__Metrics;
+struct CChatUsabilityRequestClientUsabilityMetricsNotification;
+
+
+/* --- enums --- */
+
+typedef enum _EChatRoomJoinState {
+ ECHAT_ROOM_JOIN_STATE__k_EChatRoomJoinState_Default = 0,
+ ECHAT_ROOM_JOIN_STATE__k_EChatRoomJoinState_None = 1,
+ ECHAT_ROOM_JOIN_STATE__k_EChatRoomJoinState_Joined = 2,
+ ECHAT_ROOM_JOIN_STATE__k_EChatRoomJoinState_TestInvalid = 99
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(ECHAT_ROOM_JOIN_STATE)
+} EChatRoomJoinState;
+typedef enum _EChatRoomGroupRank {
+ ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Default = 0,
+ ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Viewer = 10,
+ ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Guest = 15,
+ ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Member = 20,
+ ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Moderator = 30,
+ ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Officer = 40,
+ ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_Owner = 50,
+ ECHAT_ROOM_GROUP_RANK__k_EChatRoomGroupRank_TestInvalid = 99
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(ECHAT_ROOM_GROUP_RANK)
+} EChatRoomGroupRank;
+typedef enum _EChatRoomNotificationLevel {
+ ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_Invalid = 0,
+ ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_None = 1,
+ ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_MentionMe = 2,
+ ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_MentionAll = 3,
+ ECHAT_ROOM_NOTIFICATION_LEVEL__k_EChatroomNotificationLevel_AllMessages = 4
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(ECHAT_ROOM_NOTIFICATION_LEVEL)
+} EChatRoomNotificationLevel;
+typedef enum _EChatRoomServerMessage {
+ ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_Invalid = 0,
+ ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_RenameChatRoom = 1,
+ ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_Joined = 2,
+ ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_Parted = 3,
+ ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_Kicked = 4,
+ ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_Invited = 5,
+ ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_InviteDismissed = 8,
+ ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_ChatRoomTaglineChanged = 9,
+ ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_ChatRoomAvatarChanged = 10,
+ ECHAT_ROOM_SERVER_MESSAGE__k_EChatRoomServerMsg_AppCustom = 11
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(ECHAT_ROOM_SERVER_MESSAGE)
+} EChatRoomServerMessage;
+typedef enum _EChatRoomMessageReactionType {
+ ECHAT_ROOM_MESSAGE_REACTION_TYPE__k_EChatRoomMessageReactionType_Invalid = 0,
+ ECHAT_ROOM_MESSAGE_REACTION_TYPE__k_EChatRoomMessageReactionType_Emoticon = 1,
+ ECHAT_ROOM_MESSAGE_REACTION_TYPE__k_EChatRoomMessageReactionType_Sticker = 2
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(ECHAT_ROOM_MESSAGE_REACTION_TYPE)
+} EChatRoomMessageReactionType;
+typedef enum _EChatRoomMemberStateChange {
+ ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Invalid = 0,
+ ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Joined = 1,
+ ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Parted = 2,
+ ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Kicked = 3,
+ ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Invited = 4,
+ ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_RankChanged = 7,
+ ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_InviteDismissed = 8,
+ ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Muted = 9,
+ ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Banned = 10,
+ ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_RolesChanged = 12
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(ECHAT_ROOM_MEMBER_STATE_CHANGE)
+} EChatRoomMemberStateChange;
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor echat_room_join_state__descriptor;
+extern const ProtobufCEnumDescriptor echat_room_group_rank__descriptor;
+extern const ProtobufCEnumDescriptor echat_room_notification_level__descriptor;
+extern const ProtobufCEnumDescriptor echat_room_server_message__descriptor;
+extern const ProtobufCEnumDescriptor echat_room_message_reaction_type__descriptor;
+extern const ProtobufCEnumDescriptor echat_room_member_state_change__descriptor;
+extern const ProtobufCMessageDescriptor cchat__request_friend_persona_states__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat__request_friend_persona_states__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__create_chat_room_group__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_role__descriptor;
+extern const ProtobufCMessageDescriptor cchat_role_actions__descriptor;
+extern const ProtobufCMessageDescriptor cchat_party_beacon__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room_group_header_state__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room_member__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room_state__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room_group_state__descriptor;
+extern const ProtobufCMessageDescriptor cuser_chat_room_state__descriptor;
+extern const ProtobufCMessageDescriptor cuser_chat_room_group_state__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__create_chat_room_group__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__save_chat_room_group__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__save_chat_room_group__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__rename_chat_room_group__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__rename_chat_room_group__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_chat_room_group_tagline__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_chat_room_group_tagline__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_chat_room_group_avatar__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_chat_room_group_avatar__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_chat_room_group_watching_broadcast__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_chat_room_group_watching_broadcast__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__join_mini_game_for_chat_room_group__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__join_mini_game_for_chat_room_group__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__end_mini_game_for_chat_room_group__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__end_mini_game_for_chat_room_group__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__mute_user__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__mute_user__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__kick_user__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__kick_user__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_user_ban_state__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_user_ban_state__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__revoke_invite__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__revoke_invite__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__create_role__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__create_role__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_roles__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_roles__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__rename_role__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__rename_role__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__reorder_role__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__reorder_role__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__delete_role__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__delete_role__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_role_actions__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_role_actions__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__replace_role_actions__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__replace_role_actions__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__add_role_to_user__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__add_role_to_user__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_roles_for_user__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_roles_for_user__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__delete_role_from_user__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__delete_role_from_user__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__join_chat_room_group__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__join_chat_room_group__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__invite_friend_to_chat_room_group__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__invite_friend_to_chat_room_group__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__leave_chat_room_group__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__leave_chat_room_group__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__create_chat_room__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__create_chat_room__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__delete_chat_room__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__delete_chat_room__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__rename_chat_room__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__rename_chat_room__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__reorder_chat_room__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__reorder_chat_room__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__send_chat_message__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__send_chat_message__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__join_voice_chat__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__join_voice_chat__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__leave_voice_chat__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__leave_voice_chat__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_message_history__request__descriptor;
+extern const ProtobufCMessageDescriptor server_message__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_message_history__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_message_history__response__chat_message__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_message_history__response__chat_message__message_reaction__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_my_chat_room_groups__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_chat_room_group_summary__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room_summary_pair__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_my_chat_room_groups__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_chat_room_group_state__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_chat_room_group_state__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_chat_room_group_summary__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_app_chat_room_group_force_active__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_app_chat_room_group_force_active__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_app_chat_room_group_stop_force_active__notification__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__ack_chat_message__notification__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__create_invite_link__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__create_invite_link__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_invite_link_info__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_invite_link_info__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_invite_info__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_invite_info__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_invite_links_for_group__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_invite_links_for_group__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_invite_links_for_group__response__link_info__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_ban_list__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_ban_list__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_ban_list__response__ban_info__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_invite_list__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room_group_invite__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_invite_list__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__delete_invite_link__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__delete_invite_link__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_session_active_chat_room_groups__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_session_active_chat_room_groups__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_user_chat_group_preferences__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_user_chat_group_preferences__request__chat_group_preferences__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_user_chat_group_preferences__request__chat_room_preferences__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__set_user_chat_group_preferences__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__delete_chat_messages__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__delete_chat_messages__request__message__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__delete_chat_messages__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__update_member_list_view__notification__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__search_members__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__search_members__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__search_members__response__member_match__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__update_message_reaction__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__update_message_reaction__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_message_reaction_reactors__request__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__get_message_reaction_reactors__response__descriptor;
+extern const ProtobufCMessageDescriptor cclan_chat_rooms__get_clan_chat_room_info__request__descriptor;
+extern const ProtobufCMessageDescriptor cclan_chat_rooms__get_clan_chat_room_info__response__descriptor;
+extern const ProtobufCMessageDescriptor cclan_chat_rooms__set_clan_chat_room_private__request__descriptor;
+extern const ProtobufCMessageDescriptor cclan_chat_rooms__set_clan_chat_room_private__response__descriptor;
+extern const ProtobufCMessageDescriptor cchat_mentions__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__incoming_chat_message__notification__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__chat_message_modified__notification__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__chat_message_modified__notification__chat_message__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__member_state_change__notification__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__chat_room_header_state__notification__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__chat_room_group_rooms_change__notification__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__descriptor;
+extern const ProtobufCMessageDescriptor chat_room_client__notify_chat_group_user_state_changed__notification__descriptor;
+extern const ProtobufCMessageDescriptor chat_room_client__notify_chat_room_disconnect__notification__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room_member_list_view__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room_member_summary_counts__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room_client__member_list_view_updated__notification__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room_client__member_list_view_updated__notification__member_list_view_entry__descriptor;
+extern const ProtobufCMessageDescriptor cchat_room__message_reaction__notification__descriptor;
+extern const ProtobufCMessageDescriptor cchat_usability__client_usability_metrics__notification__descriptor;
+extern const ProtobufCMessageDescriptor cchat_usability__client_usability_metrics__notification__settings__descriptor;
+extern const ProtobufCMessageDescriptor cchat_usability__client_usability_metrics__notification__voice_settings__descriptor;
+extern const ProtobufCMessageDescriptor cchat_usability__client_usability_metrics__notification__uistate__descriptor;
+extern const ProtobufCMessageDescriptor cchat_usability__client_usability_metrics__notification__uistate__category_collapse_state__descriptor;
+extern const ProtobufCMessageDescriptor cchat_usability__client_usability_metrics__notification__metrics__descriptor;
+extern const ProtobufCMessageDescriptor cchat_usability__request_client_usability_metrics__notification__descriptor;
+extern const ProtobufCServiceDescriptor chat__descriptor;
+extern const ProtobufCServiceDescriptor chat_room__descriptor;
+extern const ProtobufCServiceDescriptor clan_chat_rooms__descriptor;
+extern const ProtobufCServiceDescriptor chat_room_client__descriptor;
+extern const ProtobufCServiceDescriptor chat_usability__descriptor;
+extern const ProtobufCServiceDescriptor chat_usability_client__descriptor;
+
+/* --- messages --- */
+
+extern "C" void message_init_generic(const ProtobufCMessageDescriptor * desc, ProtobufCMessage * message);
+
+struct CChatRequestFriendPersonaStatesRequest : public ProtobufCppMessage
+{
+ CChatRequestFriendPersonaStatesRequest() :
+ ProtobufCppMessage(cchat__request_friend_persona_states__request__descriptor)
+ {}
+
+};
+
+struct CChatRequestFriendPersonaStatesResponse : public ProtobufCppMessage
+{
+ CChatRequestFriendPersonaStatesResponse() :
+ ProtobufCppMessage(cchat__request_friend_persona_states__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomCreateChatRoomGroupRequest : public ProtobufCppMessage
+{
+ CChatRoomCreateChatRoomGroupRequest() :
+ ProtobufCppMessage(cchat_room__create_chat_room_group__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid_partner;
+ uint64_t steamid_partner;
+ protobuf_c_boolean has_steamid_invited;
+ uint64_t steamid_invited;
+ char *name;
+ size_t n_steamid_invitees;
+ uint64_t *steamid_invitees;
+ protobuf_c_boolean has_watching_broadcast_accountid;
+ uint32_t watching_broadcast_accountid;
+ protobuf_c_boolean has_watching_broadcast_channel_id;
+ uint64_t watching_broadcast_channel_id;
+};
+
+struct CChatRole : public ProtobufCppMessage
+{
+ CChatRole() :
+ ProtobufCppMessage(cchat_role__descriptor)
+ {}
+
+ protobuf_c_boolean has_role_id;
+ uint64_t role_id;
+ char *name;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+};
+
+struct CChatRoleActions : public ProtobufCppMessage
+{
+ CChatRoleActions() :
+ ProtobufCppMessage(cchat_role_actions__descriptor)
+ {}
+
+ protobuf_c_boolean has_role_id;
+ uint64_t role_id;
+ protobuf_c_boolean has_can_create_rename_delete_channel;
+ protobuf_c_boolean can_create_rename_delete_channel;
+ protobuf_c_boolean has_can_kick;
+ protobuf_c_boolean can_kick;
+ protobuf_c_boolean has_can_ban;
+ protobuf_c_boolean can_ban;
+ protobuf_c_boolean has_can_invite;
+ protobuf_c_boolean can_invite;
+ protobuf_c_boolean has_can_change_tagline_avatar_name;
+ protobuf_c_boolean can_change_tagline_avatar_name;
+ protobuf_c_boolean has_can_chat;
+ protobuf_c_boolean can_chat;
+ protobuf_c_boolean has_can_view_history;
+ protobuf_c_boolean can_view_history;
+ protobuf_c_boolean has_can_change_group_roles;
+ protobuf_c_boolean can_change_group_roles;
+ protobuf_c_boolean has_can_change_user_roles;
+ protobuf_c_boolean can_change_user_roles;
+ protobuf_c_boolean has_can_mention_all;
+ protobuf_c_boolean can_mention_all;
+ protobuf_c_boolean has_can_set_watching_broadcast;
+ protobuf_c_boolean can_set_watching_broadcast;
+};
+
+struct CChatPartyBeacon : public ProtobufCppMessage
+{
+ CChatPartyBeacon() :
+ ProtobufCppMessage(cchat_party_beacon__descriptor)
+ {}
+
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+ protobuf_c_boolean has_steamid_owner;
+ uint64_t steamid_owner;
+ protobuf_c_boolean has_beacon_id;
+ uint64_t beacon_id;
+ char *game_metadata;
+};
+
+struct CChatRoomGroupHeaderState : public ProtobufCppMessage
+{
+ CChatRoomGroupHeaderState() :
+ ProtobufCppMessage(cchat_room_group_header_state__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ char *chat_name;
+ protobuf_c_boolean has_clanid;
+ uint32_t clanid;
+ protobuf_c_boolean has_accountid_owner;
+ uint32_t accountid_owner;
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+ char *tagline;
+ protobuf_c_boolean has_avatar_sha;
+ ProtobufCBinaryData avatar_sha;
+ protobuf_c_boolean has_default_role_id;
+ uint64_t default_role_id;
+ size_t n_roles;
+ CChatRole **roles;
+ size_t n_role_actions;
+ CChatRoleActions **role_actions;
+ protobuf_c_boolean has_watching_broadcast_accountid;
+ uint32_t watching_broadcast_accountid;
+ size_t n_party_beacons;
+ CChatPartyBeacon **party_beacons;
+ protobuf_c_boolean has_watching_broadcast_channel_id;
+ uint64_t watching_broadcast_channel_id;
+ protobuf_c_boolean has_active_minigame_id;
+ uint64_t active_minigame_id;
+ char *avatar_ugc_url;
+ protobuf_c_boolean has_disabled;
+ protobuf_c_boolean disabled;
+};
+
+struct CChatRoomMember : public ProtobufCppMessage
+{
+ CChatRoomMember() :
+ ProtobufCppMessage(cchat_room_member__descriptor)
+ {}
+
+ protobuf_c_boolean has_accountid;
+ uint32_t accountid;
+ protobuf_c_boolean has_state;
+ EChatRoomJoinState state;
+ protobuf_c_boolean has_rank;
+ EChatRoomGroupRank rank;
+ protobuf_c_boolean has_time_kick_expire;
+ uint32_t time_kick_expire;
+ size_t n_role_ids;
+ uint64_t *role_ids;
+};
+
+struct CChatRoomState : public ProtobufCppMessage
+{
+ CChatRoomState() :
+ ProtobufCppMessage(cchat_room_state__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ char *chat_name;
+ protobuf_c_boolean has_voice_allowed;
+ protobuf_c_boolean voice_allowed;
+ size_t n_members_in_voice;
+ uint32_t *members_in_voice;
+ protobuf_c_boolean has_time_last_message;
+ uint32_t time_last_message;
+ protobuf_c_boolean has_sort_order;
+ uint32_t sort_order;
+ char *last_message;
+ protobuf_c_boolean has_accountid_last_message;
+ uint32_t accountid_last_message;
+};
+
+struct CChatRoomGroupState : public ProtobufCppMessage
+{
+ CChatRoomGroupState() :
+ ProtobufCppMessage(cchat_room_group_state__descriptor)
+ {}
+
+ CChatRoomGroupHeaderState *header_state;
+ size_t n_members;
+ CChatRoomMember **members;
+ protobuf_c_boolean has_default_chat_id;
+ uint64_t default_chat_id;
+ size_t n_chat_rooms;
+ CChatRoomState **chat_rooms;
+ size_t n_kicked;
+ CChatRoomMember **kicked;
+};
+
+struct CUserChatRoomState : public ProtobufCppMessage
+{
+ CUserChatRoomState() :
+ ProtobufCppMessage(cuser_chat_room_state__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ protobuf_c_boolean has_time_joined;
+ uint32_t time_joined;
+ protobuf_c_boolean has_time_last_ack;
+ uint32_t time_last_ack;
+ protobuf_c_boolean has_desktop_notification_level;
+ EChatRoomNotificationLevel desktop_notification_level;
+ protobuf_c_boolean has_mobile_notification_level;
+ EChatRoomNotificationLevel mobile_notification_level;
+ protobuf_c_boolean has_time_last_mention;
+ uint32_t time_last_mention;
+ protobuf_c_boolean has_unread_indicator_muted;
+ protobuf_c_boolean unread_indicator_muted;
+ protobuf_c_boolean has_time_first_unread;
+ uint32_t time_first_unread;
+};
+
+struct CUserChatRoomGroupState : public ProtobufCppMessage
+{
+ CUserChatRoomGroupState() :
+ ProtobufCppMessage(cuser_chat_room_group_state__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_time_joined;
+ uint32_t time_joined;
+ size_t n_user_chat_room_state;
+ CUserChatRoomState **user_chat_room_state;
+ protobuf_c_boolean has_desktop_notification_level;
+ EChatRoomNotificationLevel desktop_notification_level;
+ protobuf_c_boolean has_mobile_notification_level;
+ EChatRoomNotificationLevel mobile_notification_level;
+ protobuf_c_boolean has_time_last_group_ack;
+ uint32_t time_last_group_ack;
+ protobuf_c_boolean has_unread_indicator_muted;
+ protobuf_c_boolean unread_indicator_muted;
+};
+
+struct CChatRoomCreateChatRoomGroupResponse : public ProtobufCppMessage
+{
+ CChatRoomCreateChatRoomGroupResponse() :
+ ProtobufCppMessage(cchat_room__create_chat_room_group__response__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ CChatRoomGroupState *state;
+ CUserChatRoomGroupState *user_chat_state;
+};
+
+struct CChatRoomSaveChatRoomGroupRequest : public ProtobufCppMessage
+{
+ CChatRoomSaveChatRoomGroupRequest() :
+ ProtobufCppMessage(cchat_room__save_chat_room_group__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ char *name;
+};
+
+struct CChatRoomSaveChatRoomGroupResponse : public ProtobufCppMessage
+{
+ CChatRoomSaveChatRoomGroupResponse() :
+ ProtobufCppMessage(cchat_room__save_chat_room_group__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomRenameChatRoomGroupRequest : public ProtobufCppMessage
+{
+ CChatRoomRenameChatRoomGroupRequest() :
+ ProtobufCppMessage(cchat_room__rename_chat_room_group__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ char *name;
+};
+
+struct CChatRoomRenameChatRoomGroupResponse : public ProtobufCppMessage
+{
+ CChatRoomRenameChatRoomGroupResponse() :
+ ProtobufCppMessage(cchat_room__rename_chat_room_group__response__descriptor)
+ {}
+
+ char *name;
+};
+
+struct CChatRoomSetChatRoomGroupTaglineRequest : public ProtobufCppMessage
+{
+ CChatRoomSetChatRoomGroupTaglineRequest() :
+ ProtobufCppMessage(cchat_room__set_chat_room_group_tagline__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ char *tagline;
+};
+
+struct CChatRoomSetChatRoomGroupTaglineResponse : public ProtobufCppMessage
+{
+ CChatRoomSetChatRoomGroupTaglineResponse() :
+ ProtobufCppMessage(cchat_room__set_chat_room_group_tagline__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomSetChatRoomGroupAvatarRequest : public ProtobufCppMessage
+{
+ CChatRoomSetChatRoomGroupAvatarRequest() :
+ ProtobufCppMessage(cchat_room__set_chat_room_group_avatar__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_avatar_sha;
+ ProtobufCBinaryData avatar_sha;
+};
+
+struct CChatRoomSetChatRoomGroupAvatarResponse : public ProtobufCppMessage
+{
+ CChatRoomSetChatRoomGroupAvatarResponse() :
+ ProtobufCppMessage(cchat_room__set_chat_room_group_avatar__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomSetChatRoomGroupWatchingBroadcastRequest : public ProtobufCppMessage
+{
+ CChatRoomSetChatRoomGroupWatchingBroadcastRequest() :
+ ProtobufCppMessage(cchat_room__set_chat_room_group_watching_broadcast__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_watching_broadcast_accountid;
+ uint32_t watching_broadcast_accountid;
+ protobuf_c_boolean has_watching_broadcast_channel_id;
+ uint64_t watching_broadcast_channel_id;
+};
+
+struct CChatRoomSetChatRoomGroupWatchingBroadcastResponse : public ProtobufCppMessage
+{
+ CChatRoomSetChatRoomGroupWatchingBroadcastResponse() :
+ ProtobufCppMessage(cchat_room__set_chat_room_group_watching_broadcast__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomJoinMiniGameForChatRoomGroupRequest : public ProtobufCppMessage
+{
+ CChatRoomJoinMiniGameForChatRoomGroupRequest() :
+ ProtobufCppMessage(cchat_room__join_mini_game_for_chat_room_group__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+};
+
+struct CChatRoomJoinMiniGameForChatRoomGroupResponse : public ProtobufCppMessage
+{
+ CChatRoomJoinMiniGameForChatRoomGroupResponse() :
+ ProtobufCppMessage(cchat_room__join_mini_game_for_chat_room_group__response__descriptor)
+ {}
+
+ protobuf_c_boolean has_minigame_id;
+ uint64_t minigame_id;
+};
+
+struct CChatRoomEndMiniGameForChatRoomGroupRequest : public ProtobufCppMessage
+{
+ CChatRoomEndMiniGameForChatRoomGroupRequest() :
+ ProtobufCppMessage(cchat_room__end_mini_game_for_chat_room_group__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ protobuf_c_boolean has_minigame_id;
+ uint64_t minigame_id;
+};
+
+struct CChatRoomEndMiniGameForChatRoomGroupResponse : public ProtobufCppMessage
+{
+ CChatRoomEndMiniGameForChatRoomGroupResponse() :
+ ProtobufCppMessage(cchat_room__end_mini_game_for_chat_room_group__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomMuteUserRequest : public ProtobufCppMessage
+{
+ CChatRoomMuteUserRequest() :
+ ProtobufCppMessage(cchat_room__mute_user__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_expiration;
+ int32_t expiration;
+};
+
+struct CChatRoomMuteUserResponse : public ProtobufCppMessage
+{
+ CChatRoomMuteUserResponse() :
+ ProtobufCppMessage(cchat_room__mute_user__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomKickUserRequest : public ProtobufCppMessage
+{
+ CChatRoomKickUserRequest() :
+ ProtobufCppMessage(cchat_room__kick_user__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_expiration;
+ int32_t expiration;
+};
+
+struct CChatRoomKickUserResponse : public ProtobufCppMessage
+{
+ CChatRoomKickUserResponse() :
+ ProtobufCppMessage(cchat_room__kick_user__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomSetUserBanStateRequest : public ProtobufCppMessage
+{
+ CChatRoomSetUserBanStateRequest() :
+ ProtobufCppMessage(cchat_room__set_user_ban_state__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_ban_state;
+ protobuf_c_boolean ban_state;
+};
+
+struct CChatRoomSetUserBanStateResponse : public ProtobufCppMessage
+{
+ CChatRoomSetUserBanStateResponse() :
+ ProtobufCppMessage(cchat_room__set_user_ban_state__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomRevokeInviteRequest : public ProtobufCppMessage
+{
+ CChatRoomRevokeInviteRequest() :
+ ProtobufCppMessage(cchat_room__revoke_invite__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+};
+
+struct CChatRoomRevokeInviteResponse : public ProtobufCppMessage
+{
+ CChatRoomRevokeInviteResponse() :
+ ProtobufCppMessage(cchat_room__revoke_invite__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomCreateRoleRequest : public ProtobufCppMessage
+{
+ CChatRoomCreateRoleRequest() :
+ ProtobufCppMessage(cchat_room__create_role__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ char *name;
+};
+
+struct CChatRoomCreateRoleResponse : public ProtobufCppMessage
+{
+ CChatRoomCreateRoleResponse() :
+ ProtobufCppMessage(cchat_room__create_role__response__descriptor)
+ {}
+
+ CChatRoleActions *actions;
+};
+
+struct CChatRoomGetRolesRequest : public ProtobufCppMessage
+{
+ CChatRoomGetRolesRequest() :
+ ProtobufCppMessage(cchat_room__get_roles__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+};
+
+struct CChatRoomGetRolesResponse : public ProtobufCppMessage
+{
+ CChatRoomGetRolesResponse() :
+ ProtobufCppMessage(cchat_room__get_roles__response__descriptor)
+ {}
+
+ size_t n_roles;
+ CChatRole **roles;
+};
+
+struct CChatRoomRenameRoleRequest : public ProtobufCppMessage
+{
+ CChatRoomRenameRoleRequest() :
+ ProtobufCppMessage(cchat_room__rename_role__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_role_id;
+ uint64_t role_id;
+ char *name;
+};
+
+struct CChatRoomRenameRoleResponse : public ProtobufCppMessage
+{
+ CChatRoomRenameRoleResponse() :
+ ProtobufCppMessage(cchat_room__rename_role__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomReorderRoleRequest : public ProtobufCppMessage
+{
+ CChatRoomReorderRoleRequest() :
+ ProtobufCppMessage(cchat_room__reorder_role__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_role_id;
+ uint64_t role_id;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+};
+
+struct CChatRoomReorderRoleResponse : public ProtobufCppMessage
+{
+ CChatRoomReorderRoleResponse() :
+ ProtobufCppMessage(cchat_room__reorder_role__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomDeleteRoleRequest : public ProtobufCppMessage
+{
+ CChatRoomDeleteRoleRequest() :
+ ProtobufCppMessage(cchat_room__delete_role__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_role_id;
+ uint64_t role_id;
+};
+
+struct CChatRoomDeleteRoleResponse : public ProtobufCppMessage
+{
+ CChatRoomDeleteRoleResponse() :
+ ProtobufCppMessage(cchat_room__delete_role__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomGetRoleActionsRequest : public ProtobufCppMessage
+{
+ CChatRoomGetRoleActionsRequest() :
+ ProtobufCppMessage(cchat_room__get_role_actions__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_role_id;
+ uint64_t role_id;
+};
+
+struct CChatRoomGetRoleActionsResponse : public ProtobufCppMessage
+{
+ CChatRoomGetRoleActionsResponse() :
+ ProtobufCppMessage(cchat_room__get_role_actions__response__descriptor)
+ {}
+
+ size_t n_actions;
+ CChatRoleActions **actions;
+};
+
+struct CChatRoomReplaceRoleActionsRequest : public ProtobufCppMessage
+{
+ CChatRoomReplaceRoleActionsRequest() :
+ ProtobufCppMessage(cchat_room__replace_role_actions__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_role_id;
+ uint64_t role_id;
+ CChatRoleActions *actions;
+};
+
+struct CChatRoomReplaceRoleActionsResponse : public ProtobufCppMessage
+{
+ CChatRoomReplaceRoleActionsResponse() :
+ ProtobufCppMessage(cchat_room__replace_role_actions__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomAddRoleToUserRequest : public ProtobufCppMessage
+{
+ CChatRoomAddRoleToUserRequest() :
+ ProtobufCppMessage(cchat_room__add_role_to_user__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_role_id;
+ uint64_t role_id;
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+};
+
+struct CChatRoomAddRoleToUserResponse : public ProtobufCppMessage
+{
+ CChatRoomAddRoleToUserResponse() :
+ ProtobufCppMessage(cchat_room__add_role_to_user__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomGetRolesForUserRequest : public ProtobufCppMessage
+{
+ CChatRoomGetRolesForUserRequest() :
+ ProtobufCppMessage(cchat_room__get_roles_for_user__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+};
+
+struct CChatRoomGetRolesForUserResponse : public ProtobufCppMessage
+{
+ CChatRoomGetRolesForUserResponse() :
+ ProtobufCppMessage(cchat_room__get_roles_for_user__response__descriptor)
+ {}
+
+ size_t n_role_ids;
+ uint64_t *role_ids;
+};
+
+struct CChatRoomDeleteRoleFromUserRequest : public ProtobufCppMessage
+{
+ CChatRoomDeleteRoleFromUserRequest() :
+ ProtobufCppMessage(cchat_room__delete_role_from_user__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_role_id;
+ uint64_t role_id;
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+};
+
+struct CChatRoomDeleteRoleFromUserResponse : public ProtobufCppMessage
+{
+ CChatRoomDeleteRoleFromUserResponse() :
+ ProtobufCppMessage(cchat_room__delete_role_from_user__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomJoinChatRoomGroupRequest : public ProtobufCppMessage
+{
+ CChatRoomJoinChatRoomGroupRequest() :
+ ProtobufCppMessage(cchat_room__join_chat_room_group__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ char *invite_code;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+};
+
+struct CChatRoomJoinChatRoomGroupResponse : public ProtobufCppMessage
+{
+ CChatRoomJoinChatRoomGroupResponse() :
+ ProtobufCppMessage(cchat_room__join_chat_room_group__response__descriptor)
+ {}
+
+ CChatRoomGroupState *state;
+ CUserChatRoomGroupState *user_chat_state;
+ protobuf_c_boolean has_join_chat_id;
+ uint64_t join_chat_id;
+ protobuf_c_boolean has_time_expire;
+ uint32_t time_expire;
+};
+
+struct CChatRoomInviteFriendToChatRoomGroupRequest : public ProtobufCppMessage
+{
+ CChatRoomInviteFriendToChatRoomGroupRequest() :
+ ProtobufCppMessage(cchat_room__invite_friend_to_chat_room_group__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ protobuf_c_boolean has_skip_friendsui_check;
+ protobuf_c_boolean skip_friendsui_check;
+};
+
+struct CChatRoomInviteFriendToChatRoomGroupResponse : public ProtobufCppMessage
+{
+ CChatRoomInviteFriendToChatRoomGroupResponse() :
+ ProtobufCppMessage(cchat_room__invite_friend_to_chat_room_group__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomLeaveChatRoomGroupRequest : public ProtobufCppMessage
+{
+ CChatRoomLeaveChatRoomGroupRequest() :
+ ProtobufCppMessage(cchat_room__leave_chat_room_group__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+};
+
+struct CChatRoomLeaveChatRoomGroupResponse : public ProtobufCppMessage
+{
+ CChatRoomLeaveChatRoomGroupResponse() :
+ ProtobufCppMessage(cchat_room__leave_chat_room_group__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomCreateChatRoomRequest : public ProtobufCppMessage
+{
+ CChatRoomCreateChatRoomRequest() :
+ ProtobufCppMessage(cchat_room__create_chat_room__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ char *name;
+ protobuf_c_boolean has_allow_voice;
+ protobuf_c_boolean allow_voice;
+};
+
+struct CChatRoomCreateChatRoomResponse : public ProtobufCppMessage
+{
+ CChatRoomCreateChatRoomResponse() :
+ ProtobufCppMessage(cchat_room__create_chat_room__response__descriptor)
+ {}
+
+ CChatRoomState *chat_room;
+};
+
+struct CChatRoomDeleteChatRoomRequest : public ProtobufCppMessage
+{
+ CChatRoomDeleteChatRoomRequest() :
+ ProtobufCppMessage(cchat_room__delete_chat_room__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+};
+
+struct CChatRoomDeleteChatRoomResponse : public ProtobufCppMessage
+{
+ CChatRoomDeleteChatRoomResponse() :
+ ProtobufCppMessage(cchat_room__delete_chat_room__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomRenameChatRoomRequest : public ProtobufCppMessage
+{
+ CChatRoomRenameChatRoomRequest() :
+ ProtobufCppMessage(cchat_room__rename_chat_room__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ char *name;
+};
+
+struct CChatRoomRenameChatRoomResponse : public ProtobufCppMessage
+{
+ CChatRoomRenameChatRoomResponse() :
+ ProtobufCppMessage(cchat_room__rename_chat_room__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomReorderChatRoomRequest : public ProtobufCppMessage
+{
+ CChatRoomReorderChatRoomRequest() :
+ ProtobufCppMessage(cchat_room__reorder_chat_room__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ protobuf_c_boolean has_move_after_chat_id;
+ uint64_t move_after_chat_id;
+};
+
+struct CChatRoomReorderChatRoomResponse : public ProtobufCppMessage
+{
+ CChatRoomReorderChatRoomResponse() :
+ ProtobufCppMessage(cchat_room__reorder_chat_room__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomSendChatMessageRequest : public ProtobufCppMessage
+{
+ CChatRoomSendChatMessageRequest() :
+ ProtobufCppMessage(cchat_room__send_chat_message__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ char *message;
+ protobuf_c_boolean has_echo_to_sender;
+ protobuf_c_boolean echo_to_sender;
+};
+
+struct CChatRoomSendChatMessageResponse : public ProtobufCppMessage
+{
+ CChatRoomSendChatMessageResponse() :
+ ProtobufCppMessage(cchat_room__send_chat_message__response__descriptor)
+ {}
+
+ char *modified_message;
+ protobuf_c_boolean has_server_timestamp;
+ uint32_t server_timestamp;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+ char *message_without_bb_code;
+};
+
+struct CChatRoomJoinVoiceChatRequest : public ProtobufCppMessage
+{
+ CChatRoomJoinVoiceChatRequest() :
+ ProtobufCppMessage(cchat_room__join_voice_chat__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+};
+
+struct CChatRoomJoinVoiceChatResponse : public ProtobufCppMessage
+{
+ CChatRoomJoinVoiceChatResponse() :
+ ProtobufCppMessage(cchat_room__join_voice_chat__response__descriptor)
+ {}
+
+ protobuf_c_boolean has_voice_chatid;
+ uint64_t voice_chatid;
+};
+
+struct CChatRoomLeaveVoiceChatRequest : public ProtobufCppMessage
+{
+ CChatRoomLeaveVoiceChatRequest() :
+ ProtobufCppMessage(cchat_room__leave_voice_chat__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+};
+
+struct CChatRoomLeaveVoiceChatResponse : public ProtobufCppMessage
+{
+ CChatRoomLeaveVoiceChatResponse() :
+ ProtobufCppMessage(cchat_room__leave_voice_chat__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomGetMessageHistoryRequest : public ProtobufCppMessage
+{
+ CChatRoomGetMessageHistoryRequest() :
+ ProtobufCppMessage(cchat_room__get_message_history__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ protobuf_c_boolean has_last_time;
+ uint32_t last_time;
+ protobuf_c_boolean has_last_ordinal;
+ uint32_t last_ordinal;
+ protobuf_c_boolean has_start_time;
+ uint32_t start_time;
+ protobuf_c_boolean has_start_ordinal;
+ uint32_t start_ordinal;
+ protobuf_c_boolean has_max_count;
+ uint32_t max_count;
+};
+
+struct ServerMessage : public ProtobufCppMessage
+{
+ ServerMessage() :
+ ProtobufCppMessage(server_message__descriptor)
+ {}
+
+ protobuf_c_boolean has_message;
+ EChatRoomServerMessage message;
+ char *string_param;
+ protobuf_c_boolean has_accountid_param;
+ uint32_t accountid_param;
+};
+
+struct CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction : public ProtobufCppMessage
+{
+ CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction() :
+ ProtobufCppMessage(cchat_room__get_message_history__response__chat_message__message_reaction__descriptor)
+ {}
+
+ protobuf_c_boolean has_reaction_type;
+ EChatRoomMessageReactionType reaction_type;
+ char *reaction;
+ protobuf_c_boolean has_num_reactors;
+ uint32_t num_reactors;
+ protobuf_c_boolean has_has_user_reacted;
+ protobuf_c_boolean has_user_reacted;
+};
+
+struct CChatRoomGetMessageHistoryResponse__ChatMessage : public ProtobufCppMessage
+{
+ CChatRoomGetMessageHistoryResponse__ChatMessage() :
+ ProtobufCppMessage(cchat_room__get_message_history__response__chat_message__descriptor)
+ {}
+
+ protobuf_c_boolean has_sender;
+ uint32_t sender;
+ protobuf_c_boolean has_server_timestamp;
+ uint32_t server_timestamp;
+ char *message;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+ ServerMessage *server_message;
+ protobuf_c_boolean has_deleted;
+ protobuf_c_boolean deleted;
+ size_t n_reactions;
+ CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction **reactions;
+};
+
+struct CChatRoomGetMessageHistoryResponse : public ProtobufCppMessage
+{
+ CChatRoomGetMessageHistoryResponse() :
+ ProtobufCppMessage(cchat_room__get_message_history__response__descriptor)
+ {}
+
+ size_t n_messages;
+ CChatRoomGetMessageHistoryResponse__ChatMessage **messages;
+ protobuf_c_boolean has_more_available;
+ protobuf_c_boolean more_available;
+};
+
+struct CChatRoomGetMyChatRoomGroupsRequest : public ProtobufCppMessage
+{
+ CChatRoomGetMyChatRoomGroupsRequest() :
+ ProtobufCppMessage(cchat_room__get_my_chat_room_groups__request__descriptor)
+ {}
+
+};
+
+struct CChatRoomGetChatRoomGroupSummaryResponse : public ProtobufCppMessage
+{
+ CChatRoomGetChatRoomGroupSummaryResponse() :
+ ProtobufCppMessage(cchat_room__get_chat_room_group_summary__response__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ char *chat_group_name;
+ protobuf_c_boolean has_active_member_count;
+ uint32_t active_member_count;
+ protobuf_c_boolean has_active_voice_member_count;
+ uint32_t active_voice_member_count;
+ protobuf_c_boolean has_default_chat_id;
+ uint64_t default_chat_id;
+ size_t n_chat_rooms;
+ CChatRoomState **chat_rooms;
+ protobuf_c_boolean has_clanid;
+ uint32_t clanid;
+ char *chat_group_tagline;
+ protobuf_c_boolean has_accountid_owner;
+ uint32_t accountid_owner;
+ size_t n_top_members;
+ uint32_t *top_members;
+ protobuf_c_boolean has_chat_group_avatar_sha;
+ ProtobufCBinaryData chat_group_avatar_sha;
+ protobuf_c_boolean has_rank;
+ EChatRoomGroupRank rank;
+ protobuf_c_boolean has_default_role_id;
+ uint64_t default_role_id;
+ size_t n_role_ids;
+ uint64_t *role_ids;
+ size_t n_role_actions;
+ CChatRoleActions **role_actions;
+ protobuf_c_boolean has_watching_broadcast_accountid;
+ uint32_t watching_broadcast_accountid;
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+ size_t n_party_beacons;
+ CChatPartyBeacon **party_beacons;
+ protobuf_c_boolean has_watching_broadcast_channel_id;
+ uint64_t watching_broadcast_channel_id;
+ protobuf_c_boolean has_active_minigame_id;
+ uint64_t active_minigame_id;
+ char *avatar_ugc_url;
+ protobuf_c_boolean has_disabled;
+ protobuf_c_boolean disabled;
+};
+
+struct CChatRoomSummaryPair : public ProtobufCppMessage
+{
+ CChatRoomSummaryPair() :
+ ProtobufCppMessage(cchat_room_summary_pair__descriptor)
+ {}
+
+ CUserChatRoomGroupState *user_chat_group_state;
+ CChatRoomGetChatRoomGroupSummaryResponse *group_summary;
+};
+
+struct CChatRoomGetMyChatRoomGroupsResponse : public ProtobufCppMessage
+{
+ CChatRoomGetMyChatRoomGroupsResponse() :
+ ProtobufCppMessage(cchat_room__get_my_chat_room_groups__response__descriptor)
+ {}
+
+ size_t n_chat_room_groups;
+ CChatRoomSummaryPair **chat_room_groups;
+};
+
+struct CChatRoomGetChatRoomGroupStateRequest : public ProtobufCppMessage
+{
+ CChatRoomGetChatRoomGroupStateRequest() :
+ ProtobufCppMessage(cchat_room__get_chat_room_group_state__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+};
+
+struct CChatRoomGetChatRoomGroupStateResponse : public ProtobufCppMessage
+{
+ CChatRoomGetChatRoomGroupStateResponse() :
+ ProtobufCppMessage(cchat_room__get_chat_room_group_state__response__descriptor)
+ {}
+
+ CChatRoomGroupState *state;
+};
+
+struct CChatRoomGetChatRoomGroupSummaryRequest : public ProtobufCppMessage
+{
+ CChatRoomGetChatRoomGroupSummaryRequest() :
+ ProtobufCppMessage(cchat_room__get_chat_room_group_summary__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+};
+
+struct CChatRoomSetAppChatRoomGroupForceActiveRequest : public ProtobufCppMessage
+{
+ CChatRoomSetAppChatRoomGroupForceActiveRequest() :
+ ProtobufCppMessage(cchat_room__set_app_chat_room_group_force_active__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_requesting_app_id;
+ uint32_t requesting_app_id;
+};
+
+struct CChatRoomSetAppChatRoomGroupForceActiveResponse : public ProtobufCppMessage
+{
+ CChatRoomSetAppChatRoomGroupForceActiveResponse() :
+ ProtobufCppMessage(cchat_room__set_app_chat_room_group_force_active__response__descriptor)
+ {}
+
+ protobuf_c_boolean has_result;
+ uint32_t result;
+ size_t n_accounts_in_channel;
+ uint32_t *accounts_in_channel;
+};
+
+struct CChatRoomSetAppChatRoomGroupStopForceActiveNotification : public ProtobufCppMessage
+{
+ CChatRoomSetAppChatRoomGroupStopForceActiveNotification() :
+ ProtobufCppMessage(cchat_room__set_app_chat_room_group_stop_force_active__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_requesting_app_id;
+ uint32_t requesting_app_id;
+};
+
+struct CChatRoomAckChatMessageNotification : public ProtobufCppMessage
+{
+ CChatRoomAckChatMessageNotification() :
+ ProtobufCppMessage(cchat_room__ack_chat_message__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ protobuf_c_boolean has_timestamp;
+ uint32_t timestamp;
+};
+
+struct CChatRoomCreateInviteLinkRequest : public ProtobufCppMessage
+{
+ CChatRoomCreateInviteLinkRequest() :
+ ProtobufCppMessage(cchat_room__create_invite_link__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_seconds_valid;
+ uint32_t seconds_valid;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+};
+
+struct CChatRoomCreateInviteLinkResponse : public ProtobufCppMessage
+{
+ CChatRoomCreateInviteLinkResponse() :
+ ProtobufCppMessage(cchat_room__create_invite_link__response__descriptor)
+ {}
+
+ char *invite_code;
+ protobuf_c_boolean has_seconds_valid;
+ uint32_t seconds_valid;
+};
+
+struct CChatRoomGetInviteLinkInfoRequest : public ProtobufCppMessage
+{
+ CChatRoomGetInviteLinkInfoRequest() :
+ ProtobufCppMessage(cchat_room__get_invite_link_info__request__descriptor)
+ {}
+
+ char *invite_code;
+};
+
+struct CChatRoomGetInviteLinkInfoResponse : public ProtobufCppMessage
+{
+ CChatRoomGetInviteLinkInfoResponse() :
+ ProtobufCppMessage(cchat_room__get_invite_link_info__response__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid_sender;
+ uint64_t steamid_sender;
+ protobuf_c_boolean has_time_expires;
+ uint32_t time_expires;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ CChatRoomGetChatRoomGroupSummaryResponse *group_summary;
+ CUserChatRoomGroupState *user_chat_group_state;
+ protobuf_c_boolean has_time_kick_expire;
+ uint32_t time_kick_expire;
+ protobuf_c_boolean has_banned;
+ protobuf_c_boolean banned;
+};
+
+struct CChatRoomGetInviteInfoRequest : public ProtobufCppMessage
+{
+ CChatRoomGetInviteInfoRequest() :
+ ProtobufCppMessage(cchat_room__get_invite_info__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid_invitee;
+ uint64_t steamid_invitee;
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ char *invite_code;
+};
+
+struct CChatRoomGetInviteInfoResponse : public ProtobufCppMessage
+{
+ CChatRoomGetInviteInfoResponse() :
+ ProtobufCppMessage(cchat_room__get_invite_info__response__descriptor)
+ {}
+
+ CChatRoomGetChatRoomGroupSummaryResponse *group_summary;
+ protobuf_c_boolean has_time_kick_expire;
+ uint32_t time_kick_expire;
+ protobuf_c_boolean has_banned;
+ protobuf_c_boolean banned;
+};
+
+struct CChatRoomGetInviteLinksForGroupRequest : public ProtobufCppMessage
+{
+ CChatRoomGetInviteLinksForGroupRequest() :
+ ProtobufCppMessage(cchat_room__get_invite_links_for_group__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+};
+
+struct CChatRoomGetInviteLinksForGroupResponse__LinkInfo : public ProtobufCppMessage
+{
+ CChatRoomGetInviteLinksForGroupResponse__LinkInfo() :
+ ProtobufCppMessage(cchat_room__get_invite_links_for_group__response__link_info__descriptor)
+ {}
+
+ char *invite_code;
+ protobuf_c_boolean has_steamid_creator;
+ uint64_t steamid_creator;
+ protobuf_c_boolean has_time_expires;
+ uint32_t time_expires;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+};
+
+struct CChatRoomGetInviteLinksForGroupResponse : public ProtobufCppMessage
+{
+ CChatRoomGetInviteLinksForGroupResponse() :
+ ProtobufCppMessage(cchat_room__get_invite_links_for_group__response__descriptor)
+ {}
+
+ size_t n_invite_links;
+ CChatRoomGetInviteLinksForGroupResponse__LinkInfo **invite_links;
+};
+
+struct CChatRoomGetBanListRequest : public ProtobufCppMessage
+{
+ CChatRoomGetBanListRequest() :
+ ProtobufCppMessage(cchat_room__get_ban_list__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+};
+
+struct CChatRoomGetBanListResponse__BanInfo : public ProtobufCppMessage
+{
+ CChatRoomGetBanListResponse__BanInfo() :
+ ProtobufCppMessage(cchat_room__get_ban_list__response__ban_info__descriptor)
+ {}
+
+ protobuf_c_boolean has_accountid;
+ uint32_t accountid;
+ protobuf_c_boolean has_accountid_actor;
+ uint32_t accountid_actor;
+ protobuf_c_boolean has_time_banned;
+ uint32_t time_banned;
+ char *ban_reason;
+};
+
+struct CChatRoomGetBanListResponse : public ProtobufCppMessage
+{
+ CChatRoomGetBanListResponse() :
+ ProtobufCppMessage(cchat_room__get_ban_list__response__descriptor)
+ {}
+
+ size_t n_bans;
+ CChatRoomGetBanListResponse__BanInfo **bans;
+};
+
+struct CChatRoomGetInviteListRequest : public ProtobufCppMessage
+{
+ CChatRoomGetInviteListRequest() :
+ ProtobufCppMessage(cchat_room__get_invite_list__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+};
+
+struct CChatRoomGroupInvite : public ProtobufCppMessage
+{
+ CChatRoomGroupInvite() :
+ ProtobufCppMessage(cchat_room_group_invite__descriptor)
+ {}
+
+ protobuf_c_boolean has_accountid;
+ uint32_t accountid;
+ protobuf_c_boolean has_accountid_actor;
+ uint32_t accountid_actor;
+ protobuf_c_boolean has_time_invited;
+ uint32_t time_invited;
+};
+
+struct CChatRoomGetInviteListResponse : public ProtobufCppMessage
+{
+ CChatRoomGetInviteListResponse() :
+ ProtobufCppMessage(cchat_room__get_invite_list__response__descriptor)
+ {}
+
+ size_t n_invites;
+ CChatRoomGroupInvite **invites;
+};
+
+struct CChatRoomDeleteInviteLinkRequest : public ProtobufCppMessage
+{
+ CChatRoomDeleteInviteLinkRequest() :
+ ProtobufCppMessage(cchat_room__delete_invite_link__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ char *invite_code;
+};
+
+struct CChatRoomDeleteInviteLinkResponse : public ProtobufCppMessage
+{
+ CChatRoomDeleteInviteLinkResponse() :
+ ProtobufCppMessage(cchat_room__delete_invite_link__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomSetSessionActiveChatRoomGroupsRequest : public ProtobufCppMessage
+{
+ CChatRoomSetSessionActiveChatRoomGroupsRequest() :
+ ProtobufCppMessage(cchat_room__set_session_active_chat_room_groups__request__descriptor)
+ {}
+
+ size_t n_chat_group_ids;
+ uint64_t *chat_group_ids;
+ size_t n_chat_groups_data_requested;
+ uint64_t *chat_groups_data_requested;
+ protobuf_c_boolean has_virtualize_members_threshold;
+ int32_t virtualize_members_threshold;
+};
+
+struct CChatRoomSetSessionActiveChatRoomGroupsResponse : public ProtobufCppMessage
+{
+ CChatRoomSetSessionActiveChatRoomGroupsResponse() :
+ ProtobufCppMessage(cchat_room__set_session_active_chat_room_groups__response__descriptor)
+ {}
+
+ size_t n_chat_states;
+ CChatRoomGroupState **chat_states;
+ size_t n_virtualize_members_chat_group_ids;
+ uint64_t *virtualize_members_chat_group_ids;
+};
+
+struct CChatRoomSetUserChatGroupPreferencesRequest__ChatGroupPreferences : public ProtobufCppMessage
+{
+ CChatRoomSetUserChatGroupPreferencesRequest__ChatGroupPreferences() :
+ ProtobufCppMessage(cchat_room__set_user_chat_group_preferences__request__chat_group_preferences__descriptor)
+ {}
+
+ protobuf_c_boolean has_desktop_notification_level;
+ EChatRoomNotificationLevel desktop_notification_level;
+ protobuf_c_boolean has_mobile_notification_level;
+ EChatRoomNotificationLevel mobile_notification_level;
+ protobuf_c_boolean has_unread_indicator_muted;
+ protobuf_c_boolean unread_indicator_muted;
+};
+
+struct CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences : public ProtobufCppMessage
+{
+ CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences() :
+ ProtobufCppMessage(cchat_room__set_user_chat_group_preferences__request__chat_room_preferences__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ protobuf_c_boolean has_desktop_notification_level;
+ EChatRoomNotificationLevel desktop_notification_level;
+ protobuf_c_boolean has_mobile_notification_level;
+ EChatRoomNotificationLevel mobile_notification_level;
+ protobuf_c_boolean has_unread_indicator_muted;
+ protobuf_c_boolean unread_indicator_muted;
+};
+
+struct CChatRoomSetUserChatGroupPreferencesRequest : public ProtobufCppMessage
+{
+ CChatRoomSetUserChatGroupPreferencesRequest() :
+ ProtobufCppMessage(cchat_room__set_user_chat_group_preferences__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ CChatRoomSetUserChatGroupPreferencesRequest__ChatGroupPreferences *chat_group_preferences;
+ size_t n_chat_room_preferences;
+ CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences **chat_room_preferences;
+};
+
+struct CChatRoomSetUserChatGroupPreferencesResponse : public ProtobufCppMessage
+{
+ CChatRoomSetUserChatGroupPreferencesResponse() :
+ ProtobufCppMessage(cchat_room__set_user_chat_group_preferences__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomDeleteChatMessagesRequest__Message : public ProtobufCppMessage
+{
+ CChatRoomDeleteChatMessagesRequest__Message() :
+ ProtobufCppMessage(cchat_room__delete_chat_messages__request__message__descriptor)
+ {}
+
+ protobuf_c_boolean has_server_timestamp;
+ uint32_t server_timestamp;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+};
+
+struct CChatRoomDeleteChatMessagesRequest : public ProtobufCppMessage
+{
+ CChatRoomDeleteChatMessagesRequest() :
+ ProtobufCppMessage(cchat_room__delete_chat_messages__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ size_t n_messages;
+ CChatRoomDeleteChatMessagesRequest__Message **messages;
+};
+
+struct CChatRoomDeleteChatMessagesResponse : public ProtobufCppMessage
+{
+ CChatRoomDeleteChatMessagesResponse() :
+ ProtobufCppMessage(cchat_room__delete_chat_messages__response__descriptor)
+ {}
+
+};
+
+struct CChatRoomUpdateMemberListViewNotification : public ProtobufCppMessage
+{
+ CChatRoomUpdateMemberListViewNotification() :
+ ProtobufCppMessage(cchat_room__update_member_list_view__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_view_id;
+ uint64_t view_id;
+ protobuf_c_boolean has_start;
+ int32_t start;
+ protobuf_c_boolean has_end;
+ int32_t end;
+ protobuf_c_boolean has_client_changenumber;
+ int32_t client_changenumber;
+ protobuf_c_boolean has_delete_view;
+ protobuf_c_boolean delete_view;
+ size_t n_persona_subscribe_accountids;
+ int32_t *persona_subscribe_accountids;
+ size_t n_persona_unsubscribe_accountids;
+ int32_t *persona_unsubscribe_accountids;
+};
+
+struct CChatRoomSearchMembersRequest : public ProtobufCppMessage
+{
+ CChatRoomSearchMembersRequest() :
+ ProtobufCppMessage(cchat_room__search_members__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_search_id;
+ uint64_t search_id;
+ char *search_text;
+ protobuf_c_boolean has_max_results;
+ int32_t max_results;
+};
+
+struct CChatRoomSearchMembersResponse__MemberMatch : public ProtobufCppMessage
+{
+ CChatRoomSearchMembersResponse__MemberMatch() :
+ ProtobufCppMessage(cchat_room__search_members__response__member_match__descriptor)
+ {}
+
+ protobuf_c_boolean has_accountid;
+ int32_t accountid;
+ CMsgClientPersonaState__Friend *persona;
+};
+
+struct CChatRoomSearchMembersResponse : public ProtobufCppMessage
+{
+ CChatRoomSearchMembersResponse() :
+ ProtobufCppMessage(cchat_room__search_members__response__descriptor)
+ {}
+
+ size_t n_matching_members;
+ CChatRoomSearchMembersResponse__MemberMatch **matching_members;
+ protobuf_c_boolean has_status_flags;
+ uint32_t status_flags;
+};
+
+struct CChatRoomUpdateMessageReactionRequest : public ProtobufCppMessage
+{
+ CChatRoomUpdateMessageReactionRequest() :
+ ProtobufCppMessage(cchat_room__update_message_reaction__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ protobuf_c_boolean has_server_timestamp;
+ uint32_t server_timestamp;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+ protobuf_c_boolean has_reaction_type;
+ EChatRoomMessageReactionType reaction_type;
+ char *reaction;
+ protobuf_c_boolean has_is_add;
+ protobuf_c_boolean is_add;
+};
+
+struct CChatRoomUpdateMessageReactionResponse : public ProtobufCppMessage
+{
+ CChatRoomUpdateMessageReactionResponse() :
+ ProtobufCppMessage(cchat_room__update_message_reaction__response__descriptor)
+ {}
+
+ protobuf_c_boolean has_num_reactors;
+ uint32_t num_reactors;
+};
+
+struct CChatRoomGetMessageReactionReactorsRequest : public ProtobufCppMessage
+{
+ CChatRoomGetMessageReactionReactorsRequest() :
+ ProtobufCppMessage(cchat_room__get_message_reaction_reactors__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ protobuf_c_boolean has_server_timestamp;
+ uint32_t server_timestamp;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+ protobuf_c_boolean has_reaction_type;
+ EChatRoomMessageReactionType reaction_type;
+ char *reaction;
+ protobuf_c_boolean has_limit;
+ uint32_t limit;
+};
+
+struct CChatRoomGetMessageReactionReactorsResponse : public ProtobufCppMessage
+{
+ CChatRoomGetMessageReactionReactorsResponse() :
+ ProtobufCppMessage(cchat_room__get_message_reaction_reactors__response__descriptor)
+ {}
+
+ size_t n_reactors;
+ uint32_t *reactors;
+};
+
+struct CClanChatRoomsGetClanChatRoomInfoRequest : public ProtobufCppMessage
+{
+ CClanChatRoomsGetClanChatRoomInfoRequest() :
+ ProtobufCppMessage(cclan_chat_rooms__get_clan_chat_room_info__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_autocreate;
+ protobuf_c_boolean autocreate;
+};
+
+struct CClanChatRoomsGetClanChatRoomInfoResponse : public ProtobufCppMessage
+{
+ CClanChatRoomsGetClanChatRoomInfoResponse() :
+ ProtobufCppMessage(cclan_chat_rooms__get_clan_chat_room_info__response__descriptor)
+ {}
+
+ CChatRoomGetChatRoomGroupSummaryResponse *chat_group_summary;
+};
+
+struct CClanChatRoomsSetClanChatRoomPrivateRequest : public ProtobufCppMessage
+{
+ CClanChatRoomsSetClanChatRoomPrivateRequest() :
+ ProtobufCppMessage(cclan_chat_rooms__set_clan_chat_room_private__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_chat_room_private;
+ protobuf_c_boolean chat_room_private;
+};
+
+struct CClanChatRoomsSetClanChatRoomPrivateResponse : public ProtobufCppMessage
+{
+ CClanChatRoomsSetClanChatRoomPrivateResponse() :
+ ProtobufCppMessage(cclan_chat_rooms__set_clan_chat_room_private__response__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_room_private;
+ protobuf_c_boolean chat_room_private;
+};
+
+struct CChatMentions : public ProtobufCppMessage
+{
+ CChatMentions() :
+ ProtobufCppMessage(cchat_mentions__descriptor)
+ {}
+
+ protobuf_c_boolean has_mention_all;
+ protobuf_c_boolean mention_all;
+ protobuf_c_boolean has_mention_here;
+ protobuf_c_boolean mention_here;
+ size_t n_mention_accountids;
+ uint32_t *mention_accountids;
+};
+
+struct CChatRoomIncomingChatMessageNotification : public ProtobufCppMessage
+{
+ CChatRoomIncomingChatMessageNotification() :
+ ProtobufCppMessage(cchat_room__incoming_chat_message__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ protobuf_c_boolean has_steamid_sender;
+ uint64_t steamid_sender;
+ char *message;
+ protobuf_c_boolean has_timestamp;
+ uint32_t timestamp;
+ CChatMentions *mentions;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+ ServerMessage *server_message;
+ char *message_no_bbcode;
+ char *chat_name;
+};
+
+struct CChatRoomChatMessageModifiedNotification__ChatMessage : public ProtobufCppMessage
+{
+ CChatRoomChatMessageModifiedNotification__ChatMessage() :
+ ProtobufCppMessage(cchat_room__chat_message_modified__notification__chat_message__descriptor)
+ {}
+
+ protobuf_c_boolean has_server_timestamp;
+ uint32_t server_timestamp;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+ protobuf_c_boolean has_deleted;
+ protobuf_c_boolean deleted;
+};
+
+struct CChatRoomChatMessageModifiedNotification : public ProtobufCppMessage
+{
+ CChatRoomChatMessageModifiedNotification() :
+ ProtobufCppMessage(cchat_room__chat_message_modified__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ size_t n_messages;
+ CChatRoomChatMessageModifiedNotification__ChatMessage **messages;
+};
+
+struct CChatRoomMemberStateChangeNotification : public ProtobufCppMessage
+{
+ CChatRoomMemberStateChangeNotification() :
+ ProtobufCppMessage(cchat_room__member_state_change__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ CChatRoomMember *member;
+ protobuf_c_boolean has_change;
+ EChatRoomMemberStateChange change;
+};
+
+struct CChatRoomChatRoomHeaderStateNotification : public ProtobufCppMessage
+{
+ CChatRoomChatRoomHeaderStateNotification() :
+ ProtobufCppMessage(cchat_room__chat_room_header_state__notification__descriptor)
+ {}
+
+ CChatRoomGroupHeaderState *header_state;
+};
+
+struct CChatRoomChatRoomGroupRoomsChangeNotification : public ProtobufCppMessage
+{
+ CChatRoomChatRoomGroupRoomsChangeNotification() :
+ ProtobufCppMessage(cchat_room__chat_room_group_rooms_change__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_default_chat_id;
+ uint64_t default_chat_id;
+ size_t n_chat_rooms;
+ CChatRoomState **chat_rooms;
+};
+
+struct CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification : public ProtobufCppMessage
+{
+ CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification() :
+ ProtobufCppMessage(cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+};
+
+struct ChatRoomClientNotifyChatGroupUserStateChangedNotification : public ProtobufCppMessage
+{
+ ChatRoomClientNotifyChatGroupUserStateChangedNotification() :
+ ProtobufCppMessage(chat_room_client__notify_chat_group_user_state_changed__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ CUserChatRoomGroupState *user_chat_group_state;
+ CChatRoomGetChatRoomGroupSummaryResponse *group_summary;
+ protobuf_c_boolean has_user_action;
+ EChatRoomMemberStateChange user_action;
+};
+
+struct ChatRoomClientNotifyChatRoomDisconnectNotification : public ProtobufCppMessage
+{
+ ChatRoomClientNotifyChatRoomDisconnectNotification() :
+ ProtobufCppMessage(chat_room_client__notify_chat_room_disconnect__notification__descriptor)
+ {}
+
+ size_t n_chat_group_ids;
+ uint64_t *chat_group_ids;
+};
+
+struct CChatRoomMemberListView : public ProtobufCppMessage
+{
+ CChatRoomMemberListView() :
+ ProtobufCppMessage(cchat_room_member_list_view__descriptor)
+ {}
+
+ protobuf_c_boolean has_start;
+ int32_t start;
+ protobuf_c_boolean has_end;
+ int32_t end;
+ protobuf_c_boolean has_total_count;
+ int32_t total_count;
+ protobuf_c_boolean has_client_changenumber;
+ int32_t client_changenumber;
+ protobuf_c_boolean has_server_changenumber;
+ int32_t server_changenumber;
+};
+
+struct CChatRoomMemberSummaryCounts : public ProtobufCppMessage
+{
+ CChatRoomMemberSummaryCounts() :
+ ProtobufCppMessage(cchat_room_member_summary_counts__descriptor)
+ {}
+
+ protobuf_c_boolean has_ingame;
+ int32_t ingame;
+ protobuf_c_boolean has_online;
+ int32_t online;
+ protobuf_c_boolean has_offline;
+ int32_t offline;
+};
+
+struct CChatRoomClientMemberListViewUpdatedNotification__MemberListViewEntry : public ProtobufCppMessage
+{
+ CChatRoomClientMemberListViewUpdatedNotification__MemberListViewEntry() :
+ ProtobufCppMessage(cchat_room_client__member_list_view_updated__notification__member_list_view_entry__descriptor)
+ {}
+
+ protobuf_c_boolean has_rank;
+ int32_t rank;
+ protobuf_c_boolean has_accountid;
+ uint32_t accountid;
+ CMsgClientPersonaState__Friend *persona;
+};
+
+struct CChatRoomClientMemberListViewUpdatedNotification : public ProtobufCppMessage
+{
+ CChatRoomClientMemberListViewUpdatedNotification() :
+ ProtobufCppMessage(cchat_room_client__member_list_view_updated__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_view_id;
+ uint64_t view_id;
+ CChatRoomMemberListView *view;
+ size_t n_members;
+ CChatRoomClientMemberListViewUpdatedNotification__MemberListViewEntry **members;
+ protobuf_c_boolean has_status_flags;
+ uint32_t status_flags;
+ CChatRoomMemberSummaryCounts *member_summary;
+ size_t n_subscribed_personas;
+ CMsgClientPersonaState__Friend **subscribed_personas;
+};
+
+struct CChatRoomMessageReactionNotification : public ProtobufCppMessage
+{
+ CChatRoomMessageReactionNotification() :
+ ProtobufCppMessage(cchat_room__message_reaction__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+ protobuf_c_boolean has_chat_id;
+ uint64_t chat_id;
+ protobuf_c_boolean has_server_timestamp;
+ uint32_t server_timestamp;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+ protobuf_c_boolean has_reactor;
+ uint64_t reactor;
+ protobuf_c_boolean has_reaction_type;
+ EChatRoomMessageReactionType reaction_type;
+ char *reaction;
+ protobuf_c_boolean has_is_add;
+ protobuf_c_boolean is_add;
+};
+
+struct CChatUsabilityClientUsabilityMetricsNotification__Settings : public ProtobufCppMessage
+{
+ CChatUsabilityClientUsabilityMetricsNotification__Settings() :
+ ProtobufCppMessage(cchat_usability__client_usability_metrics__notification__settings__descriptor)
+ {}
+
+ protobuf_c_boolean has_notifications_show_ingame;
+ protobuf_c_boolean notifications_show_ingame;
+ protobuf_c_boolean has_notifications_show_online;
+ protobuf_c_boolean notifications_show_online;
+ protobuf_c_boolean has_notifications_show_message;
+ protobuf_c_boolean notifications_show_message;
+ protobuf_c_boolean has_notifications_events_and_announcements;
+ protobuf_c_boolean notifications_events_and_announcements;
+ protobuf_c_boolean has_sounds_play_ingame;
+ protobuf_c_boolean sounds_play_ingame;
+ protobuf_c_boolean has_sounds_play_online;
+ protobuf_c_boolean sounds_play_online;
+ protobuf_c_boolean has_sounds_play_message;
+ protobuf_c_boolean sounds_play_message;
+ protobuf_c_boolean has_sounds_events_and_announcements;
+ protobuf_c_boolean sounds_events_and_announcements;
+ protobuf_c_boolean has_always_new_chat_window;
+ protobuf_c_boolean always_new_chat_window;
+ protobuf_c_boolean has_force_alphabetic_friend_sorting;
+ protobuf_c_boolean force_alphabetic_friend_sorting;
+ protobuf_c_boolean has_chat_flash_mode;
+ int32_t chat_flash_mode;
+ protobuf_c_boolean has_remember_open_chats;
+ protobuf_c_boolean remember_open_chats;
+ protobuf_c_boolean has_compact_quick_access;
+ protobuf_c_boolean compact_quick_access;
+ protobuf_c_boolean has_compact_friends_list;
+ protobuf_c_boolean compact_friends_list;
+ protobuf_c_boolean has_notifications_show_chat_room_notification;
+ protobuf_c_boolean notifications_show_chat_room_notification;
+ protobuf_c_boolean has_sounds_play_chat_room_notification;
+ protobuf_c_boolean sounds_play_chat_room_notification;
+ protobuf_c_boolean has_hide_offline_friends_in_tag_groups;
+ protobuf_c_boolean hide_offline_friends_in_tag_groups;
+ protobuf_c_boolean has_hide_categorized_friends;
+ protobuf_c_boolean hide_categorized_friends;
+ protobuf_c_boolean has_categorize_in_game_friends_by_game;
+ protobuf_c_boolean categorize_in_game_friends_by_game;
+ protobuf_c_boolean has_chat_font_size;
+ int32_t chat_font_size;
+ protobuf_c_boolean has_use24hour_clock;
+ protobuf_c_boolean use24hour_clock;
+ protobuf_c_boolean has_do_not_disturb_mode;
+ protobuf_c_boolean do_not_disturb_mode;
+ protobuf_c_boolean has_disable_embed_inlining;
+ protobuf_c_boolean disable_embed_inlining;
+ protobuf_c_boolean has_sign_into_friends;
+ protobuf_c_boolean sign_into_friends;
+ protobuf_c_boolean has_animated_avatars;
+ protobuf_c_boolean animated_avatars;
+};
+
+struct CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings : public ProtobufCppMessage
+{
+ CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings() :
+ ProtobufCppMessage(cchat_usability__client_usability_metrics__notification__voice_settings__descriptor)
+ {}
+
+ protobuf_c_boolean has_voice_input_gain;
+ float voice_input_gain;
+ protobuf_c_boolean has_voice_output_gain;
+ float voice_output_gain;
+ protobuf_c_boolean has_noise_gate_level;
+ int32_t noise_gate_level;
+ protobuf_c_boolean has_voice_use_echo_cancellation;
+ protobuf_c_boolean voice_use_echo_cancellation;
+ protobuf_c_boolean has_voice_use_noise_cancellation;
+ protobuf_c_boolean voice_use_noise_cancellation;
+ protobuf_c_boolean has_voice_use_auto_gain_control;
+ protobuf_c_boolean voice_use_auto_gain_control;
+ protobuf_c_boolean has_selected_non_default_mic;
+ protobuf_c_boolean selected_non_default_mic;
+ protobuf_c_boolean has_selected_non_default_output;
+ protobuf_c_boolean selected_non_default_output;
+ protobuf_c_boolean has_push_to_talk_enabled;
+ protobuf_c_boolean push_to_talk_enabled;
+ protobuf_c_boolean has_push_to_mute_enabled;
+ protobuf_c_boolean push_to_mute_enabled;
+ protobuf_c_boolean has_play_ptt_sounds;
+ protobuf_c_boolean play_ptt_sounds;
+};
+
+struct CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState : public ProtobufCppMessage
+{
+ CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState() :
+ ProtobufCppMessage(cchat_usability__client_usability_metrics__notification__uistate__category_collapse_state__descriptor)
+ {}
+
+ protobuf_c_boolean has_in_game_collapsed;
+ protobuf_c_boolean in_game_collapsed;
+ protobuf_c_boolean has_online_collapsed;
+ protobuf_c_boolean online_collapsed;
+ protobuf_c_boolean has_offline_collapsed;
+ protobuf_c_boolean offline_collapsed;
+ protobuf_c_boolean has_game_groups_collapsed;
+ int32_t game_groups_collapsed;
+ protobuf_c_boolean has_categories_collapsed;
+ int32_t categories_collapsed;
+};
+
+struct CChatUsabilityClientUsabilityMetricsNotification__UIState : public ProtobufCppMessage
+{
+ CChatUsabilityClientUsabilityMetricsNotification__UIState() :
+ ProtobufCppMessage(cchat_usability__client_usability_metrics__notification__uistate__descriptor)
+ {}
+
+ protobuf_c_boolean has_friends_list_height;
+ int32_t friends_list_height;
+ protobuf_c_boolean has_friends_list_width;
+ int32_t friends_list_width;
+ protobuf_c_boolean has_friends_list_docked;
+ protobuf_c_boolean friends_list_docked;
+ protobuf_c_boolean has_friends_list_collapsed;
+ protobuf_c_boolean friends_list_collapsed;
+ protobuf_c_boolean has_friends_list_group_chats_height;
+ int32_t friends_list_group_chats_height;
+ protobuf_c_boolean has_friends_list_visible;
+ protobuf_c_boolean friends_list_visible;
+ protobuf_c_boolean has_chat_popups_opened;
+ int32_t chat_popups_opened;
+ protobuf_c_boolean has_group_chat_tabs_opened;
+ int32_t group_chat_tabs_opened;
+ protobuf_c_boolean has_friend_chat_tabs_opened;
+ int32_t friend_chat_tabs_opened;
+ protobuf_c_boolean has_chat_window_width;
+ int32_t chat_window_width;
+ protobuf_c_boolean has_chat_window_height;
+ int32_t chat_window_height;
+ CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState *category_collapse;
+ protobuf_c_boolean has_group_chat_left_col_collapsed;
+ int32_t group_chat_left_col_collapsed;
+ protobuf_c_boolean has_group_chat_right_col_collapsed;
+ int32_t group_chat_right_col_collapsed;
+ protobuf_c_boolean has_in_one_on_one_voice_chat;
+ protobuf_c_boolean in_one_on_one_voice_chat;
+ protobuf_c_boolean has_in_group_voice_chat;
+ protobuf_c_boolean in_group_voice_chat;
+};
+
+struct CChatUsabilityClientUsabilityMetricsNotification__Metrics : public ProtobufCppMessage
+{
+ CChatUsabilityClientUsabilityMetricsNotification__Metrics() :
+ ProtobufCppMessage(cchat_usability__client_usability_metrics__notification__metrics__descriptor)
+ {}
+
+ protobuf_c_boolean has_friends_count;
+ int32_t friends_count;
+ protobuf_c_boolean has_friends_category_count;
+ int32_t friends_category_count;
+ protobuf_c_boolean has_friends_categorized_count;
+ int32_t friends_categorized_count;
+ protobuf_c_boolean has_friends_online_count;
+ int32_t friends_online_count;
+ protobuf_c_boolean has_friends_in_game_count;
+ int32_t friends_in_game_count;
+ protobuf_c_boolean has_friends_in_game_singleton_count;
+ int32_t friends_in_game_singleton_count;
+ protobuf_c_boolean has_game_group_count;
+ int32_t game_group_count;
+ protobuf_c_boolean has_friends_favorite_count;
+ int32_t friends_favorite_count;
+ protobuf_c_boolean has_group_chat_count;
+ int32_t group_chat_count;
+ protobuf_c_boolean has_group_chat_favorite_count;
+ int32_t group_chat_favorite_count;
+};
+
+struct CChatUsabilityClientUsabilityMetricsNotification : public ProtobufCppMessage
+{
+ CChatUsabilityClientUsabilityMetricsNotification() :
+ ProtobufCppMessage(cchat_usability__client_usability_metrics__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_metrics_run_id;
+ uint32_t metrics_run_id;
+ protobuf_c_boolean has_client_build;
+ uint32_t client_build;
+ protobuf_c_boolean has_metrics_version;
+ uint32_t metrics_version;
+ protobuf_c_boolean has_in_web;
+ protobuf_c_boolean in_web;
+ CChatUsabilityClientUsabilityMetricsNotification__Settings *settings;
+ CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings *voice_settings;
+ CChatUsabilityClientUsabilityMetricsNotification__UIState *ui_state;
+ CChatUsabilityClientUsabilityMetricsNotification__Metrics *metrics;
+};
+
+struct CChatUsabilityRequestClientUsabilityMetricsNotification : public ProtobufCppMessage
+{
+ CChatUsabilityRequestClientUsabilityMetricsNotification() :
+ ProtobufCppMessage(cchat_usability__request_client_usability_metrics__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_metrics_run_id;
+ uint32_t metrics_run_id;
+};
+
+size_t cchat__request_friend_persona_states__request__get_packed_size
+ (const CChatRequestFriendPersonaStatesRequest *message);
+size_t cchat__request_friend_persona_states__request__pack
+ (const CChatRequestFriendPersonaStatesRequest *message,
+ uint8_t *out);
+size_t cchat__request_friend_persona_states__request__pack_to_buffer
+ (const CChatRequestFriendPersonaStatesRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRequestFriendPersonaStatesRequest *
+ cchat__request_friend_persona_states__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat__request_friend_persona_states__request__free_unpacked
+ (CChatRequestFriendPersonaStatesRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat__request_friend_persona_states__response__get_packed_size
+ (const CChatRequestFriendPersonaStatesResponse *message);
+size_t cchat__request_friend_persona_states__response__pack
+ (const CChatRequestFriendPersonaStatesResponse *message,
+ uint8_t *out);
+size_t cchat__request_friend_persona_states__response__pack_to_buffer
+ (const CChatRequestFriendPersonaStatesResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRequestFriendPersonaStatesResponse *
+ cchat__request_friend_persona_states__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat__request_friend_persona_states__response__free_unpacked
+ (CChatRequestFriendPersonaStatesResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__create_chat_room_group__request__get_packed_size
+ (const CChatRoomCreateChatRoomGroupRequest *message);
+size_t cchat_room__create_chat_room_group__request__pack
+ (const CChatRoomCreateChatRoomGroupRequest *message,
+ uint8_t *out);
+size_t cchat_room__create_chat_room_group__request__pack_to_buffer
+ (const CChatRoomCreateChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomCreateChatRoomGroupRequest *
+ cchat_room__create_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__create_chat_room_group__request__free_unpacked
+ (CChatRoomCreateChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_role__get_packed_size
+ (const CChatRole *message);
+size_t cchat_role__pack
+ (const CChatRole *message,
+ uint8_t *out);
+size_t cchat_role__pack_to_buffer
+ (const CChatRole *message,
+ ProtobufCBuffer *buffer);
+CChatRole *
+ cchat_role__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_role__free_unpacked
+ (CChatRole *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_role_actions__get_packed_size
+ (const CChatRoleActions *message);
+size_t cchat_role_actions__pack
+ (const CChatRoleActions *message,
+ uint8_t *out);
+size_t cchat_role_actions__pack_to_buffer
+ (const CChatRoleActions *message,
+ ProtobufCBuffer *buffer);
+CChatRoleActions *
+ cchat_role_actions__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_role_actions__free_unpacked
+ (CChatRoleActions *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_party_beacon__get_packed_size
+ (const CChatPartyBeacon *message);
+size_t cchat_party_beacon__pack
+ (const CChatPartyBeacon *message,
+ uint8_t *out);
+size_t cchat_party_beacon__pack_to_buffer
+ (const CChatPartyBeacon *message,
+ ProtobufCBuffer *buffer);
+CChatPartyBeacon *
+ cchat_party_beacon__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_party_beacon__free_unpacked
+ (CChatPartyBeacon *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room_group_header_state__get_packed_size
+ (const CChatRoomGroupHeaderState *message);
+size_t cchat_room_group_header_state__pack
+ (const CChatRoomGroupHeaderState *message,
+ uint8_t *out);
+size_t cchat_room_group_header_state__pack_to_buffer
+ (const CChatRoomGroupHeaderState *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGroupHeaderState *
+ cchat_room_group_header_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room_group_header_state__free_unpacked
+ (CChatRoomGroupHeaderState *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room_member__get_packed_size
+ (const CChatRoomMember *message);
+size_t cchat_room_member__pack
+ (const CChatRoomMember *message,
+ uint8_t *out);
+size_t cchat_room_member__pack_to_buffer
+ (const CChatRoomMember *message,
+ ProtobufCBuffer *buffer);
+CChatRoomMember *
+ cchat_room_member__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room_member__free_unpacked
+ (CChatRoomMember *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room_state__get_packed_size
+ (const CChatRoomState *message);
+size_t cchat_room_state__pack
+ (const CChatRoomState *message,
+ uint8_t *out);
+size_t cchat_room_state__pack_to_buffer
+ (const CChatRoomState *message,
+ ProtobufCBuffer *buffer);
+CChatRoomState *
+ cchat_room_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room_state__free_unpacked
+ (CChatRoomState *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room_group_state__get_packed_size
+ (const CChatRoomGroupState *message);
+size_t cchat_room_group_state__pack
+ (const CChatRoomGroupState *message,
+ uint8_t *out);
+size_t cchat_room_group_state__pack_to_buffer
+ (const CChatRoomGroupState *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGroupState *
+ cchat_room_group_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room_group_state__free_unpacked
+ (CChatRoomGroupState *message,
+ ProtobufCAllocator *allocator);
+size_t cuser_chat_room_state__get_packed_size
+ (const CUserChatRoomState *message);
+size_t cuser_chat_room_state__pack
+ (const CUserChatRoomState *message,
+ uint8_t *out);
+size_t cuser_chat_room_state__pack_to_buffer
+ (const CUserChatRoomState *message,
+ ProtobufCBuffer *buffer);
+CUserChatRoomState *
+ cuser_chat_room_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cuser_chat_room_state__free_unpacked
+ (CUserChatRoomState *message,
+ ProtobufCAllocator *allocator);
+size_t cuser_chat_room_group_state__get_packed_size
+ (const CUserChatRoomGroupState *message);
+size_t cuser_chat_room_group_state__pack
+ (const CUserChatRoomGroupState *message,
+ uint8_t *out);
+size_t cuser_chat_room_group_state__pack_to_buffer
+ (const CUserChatRoomGroupState *message,
+ ProtobufCBuffer *buffer);
+CUserChatRoomGroupState *
+ cuser_chat_room_group_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cuser_chat_room_group_state__free_unpacked
+ (CUserChatRoomGroupState *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__create_chat_room_group__response__get_packed_size
+ (const CChatRoomCreateChatRoomGroupResponse *message);
+size_t cchat_room__create_chat_room_group__response__pack
+ (const CChatRoomCreateChatRoomGroupResponse *message,
+ uint8_t *out);
+size_t cchat_room__create_chat_room_group__response__pack_to_buffer
+ (const CChatRoomCreateChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomCreateChatRoomGroupResponse *
+ cchat_room__create_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__create_chat_room_group__response__free_unpacked
+ (CChatRoomCreateChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__save_chat_room_group__request__get_packed_size
+ (const CChatRoomSaveChatRoomGroupRequest *message);
+size_t cchat_room__save_chat_room_group__request__pack
+ (const CChatRoomSaveChatRoomGroupRequest *message,
+ uint8_t *out);
+size_t cchat_room__save_chat_room_group__request__pack_to_buffer
+ (const CChatRoomSaveChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSaveChatRoomGroupRequest *
+ cchat_room__save_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__save_chat_room_group__request__free_unpacked
+ (CChatRoomSaveChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__save_chat_room_group__response__get_packed_size
+ (const CChatRoomSaveChatRoomGroupResponse *message);
+size_t cchat_room__save_chat_room_group__response__pack
+ (const CChatRoomSaveChatRoomGroupResponse *message,
+ uint8_t *out);
+size_t cchat_room__save_chat_room_group__response__pack_to_buffer
+ (const CChatRoomSaveChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSaveChatRoomGroupResponse *
+ cchat_room__save_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__save_chat_room_group__response__free_unpacked
+ (CChatRoomSaveChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__rename_chat_room_group__request__get_packed_size
+ (const CChatRoomRenameChatRoomGroupRequest *message);
+size_t cchat_room__rename_chat_room_group__request__pack
+ (const CChatRoomRenameChatRoomGroupRequest *message,
+ uint8_t *out);
+size_t cchat_room__rename_chat_room_group__request__pack_to_buffer
+ (const CChatRoomRenameChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomRenameChatRoomGroupRequest *
+ cchat_room__rename_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__rename_chat_room_group__request__free_unpacked
+ (CChatRoomRenameChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__rename_chat_room_group__response__get_packed_size
+ (const CChatRoomRenameChatRoomGroupResponse *message);
+size_t cchat_room__rename_chat_room_group__response__pack
+ (const CChatRoomRenameChatRoomGroupResponse *message,
+ uint8_t *out);
+size_t cchat_room__rename_chat_room_group__response__pack_to_buffer
+ (const CChatRoomRenameChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomRenameChatRoomGroupResponse *
+ cchat_room__rename_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__rename_chat_room_group__response__free_unpacked
+ (CChatRoomRenameChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_chat_room_group_tagline__request__get_packed_size
+ (const CChatRoomSetChatRoomGroupTaglineRequest *message);
+size_t cchat_room__set_chat_room_group_tagline__request__pack
+ (const CChatRoomSetChatRoomGroupTaglineRequest *message,
+ uint8_t *out);
+size_t cchat_room__set_chat_room_group_tagline__request__pack_to_buffer
+ (const CChatRoomSetChatRoomGroupTaglineRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetChatRoomGroupTaglineRequest *
+ cchat_room__set_chat_room_group_tagline__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_chat_room_group_tagline__request__free_unpacked
+ (CChatRoomSetChatRoomGroupTaglineRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_chat_room_group_tagline__response__get_packed_size
+ (const CChatRoomSetChatRoomGroupTaglineResponse *message);
+size_t cchat_room__set_chat_room_group_tagline__response__pack
+ (const CChatRoomSetChatRoomGroupTaglineResponse *message,
+ uint8_t *out);
+size_t cchat_room__set_chat_room_group_tagline__response__pack_to_buffer
+ (const CChatRoomSetChatRoomGroupTaglineResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetChatRoomGroupTaglineResponse *
+ cchat_room__set_chat_room_group_tagline__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_chat_room_group_tagline__response__free_unpacked
+ (CChatRoomSetChatRoomGroupTaglineResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_chat_room_group_avatar__request__get_packed_size
+ (const CChatRoomSetChatRoomGroupAvatarRequest *message);
+size_t cchat_room__set_chat_room_group_avatar__request__pack
+ (const CChatRoomSetChatRoomGroupAvatarRequest *message,
+ uint8_t *out);
+size_t cchat_room__set_chat_room_group_avatar__request__pack_to_buffer
+ (const CChatRoomSetChatRoomGroupAvatarRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetChatRoomGroupAvatarRequest *
+ cchat_room__set_chat_room_group_avatar__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_chat_room_group_avatar__request__free_unpacked
+ (CChatRoomSetChatRoomGroupAvatarRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_chat_room_group_avatar__response__get_packed_size
+ (const CChatRoomSetChatRoomGroupAvatarResponse *message);
+size_t cchat_room__set_chat_room_group_avatar__response__pack
+ (const CChatRoomSetChatRoomGroupAvatarResponse *message,
+ uint8_t *out);
+size_t cchat_room__set_chat_room_group_avatar__response__pack_to_buffer
+ (const CChatRoomSetChatRoomGroupAvatarResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetChatRoomGroupAvatarResponse *
+ cchat_room__set_chat_room_group_avatar__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_chat_room_group_avatar__response__free_unpacked
+ (CChatRoomSetChatRoomGroupAvatarResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_chat_room_group_watching_broadcast__request__get_packed_size
+ (const CChatRoomSetChatRoomGroupWatchingBroadcastRequest *message);
+size_t cchat_room__set_chat_room_group_watching_broadcast__request__pack
+ (const CChatRoomSetChatRoomGroupWatchingBroadcastRequest *message,
+ uint8_t *out);
+size_t cchat_room__set_chat_room_group_watching_broadcast__request__pack_to_buffer
+ (const CChatRoomSetChatRoomGroupWatchingBroadcastRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetChatRoomGroupWatchingBroadcastRequest *
+ cchat_room__set_chat_room_group_watching_broadcast__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_chat_room_group_watching_broadcast__request__free_unpacked
+ (CChatRoomSetChatRoomGroupWatchingBroadcastRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_chat_room_group_watching_broadcast__response__get_packed_size
+ (const CChatRoomSetChatRoomGroupWatchingBroadcastResponse *message);
+size_t cchat_room__set_chat_room_group_watching_broadcast__response__pack
+ (const CChatRoomSetChatRoomGroupWatchingBroadcastResponse *message,
+ uint8_t *out);
+size_t cchat_room__set_chat_room_group_watching_broadcast__response__pack_to_buffer
+ (const CChatRoomSetChatRoomGroupWatchingBroadcastResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetChatRoomGroupWatchingBroadcastResponse *
+ cchat_room__set_chat_room_group_watching_broadcast__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_chat_room_group_watching_broadcast__response__free_unpacked
+ (CChatRoomSetChatRoomGroupWatchingBroadcastResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__join_mini_game_for_chat_room_group__request__get_packed_size
+ (const CChatRoomJoinMiniGameForChatRoomGroupRequest *message);
+size_t cchat_room__join_mini_game_for_chat_room_group__request__pack
+ (const CChatRoomJoinMiniGameForChatRoomGroupRequest *message,
+ uint8_t *out);
+size_t cchat_room__join_mini_game_for_chat_room_group__request__pack_to_buffer
+ (const CChatRoomJoinMiniGameForChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomJoinMiniGameForChatRoomGroupRequest *
+ cchat_room__join_mini_game_for_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__join_mini_game_for_chat_room_group__request__free_unpacked
+ (CChatRoomJoinMiniGameForChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__join_mini_game_for_chat_room_group__response__get_packed_size
+ (const CChatRoomJoinMiniGameForChatRoomGroupResponse *message);
+size_t cchat_room__join_mini_game_for_chat_room_group__response__pack
+ (const CChatRoomJoinMiniGameForChatRoomGroupResponse *message,
+ uint8_t *out);
+size_t cchat_room__join_mini_game_for_chat_room_group__response__pack_to_buffer
+ (const CChatRoomJoinMiniGameForChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomJoinMiniGameForChatRoomGroupResponse *
+ cchat_room__join_mini_game_for_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__join_mini_game_for_chat_room_group__response__free_unpacked
+ (CChatRoomJoinMiniGameForChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__end_mini_game_for_chat_room_group__request__get_packed_size
+ (const CChatRoomEndMiniGameForChatRoomGroupRequest *message);
+size_t cchat_room__end_mini_game_for_chat_room_group__request__pack
+ (const CChatRoomEndMiniGameForChatRoomGroupRequest *message,
+ uint8_t *out);
+size_t cchat_room__end_mini_game_for_chat_room_group__request__pack_to_buffer
+ (const CChatRoomEndMiniGameForChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomEndMiniGameForChatRoomGroupRequest *
+ cchat_room__end_mini_game_for_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__end_mini_game_for_chat_room_group__request__free_unpacked
+ (CChatRoomEndMiniGameForChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__end_mini_game_for_chat_room_group__response__get_packed_size
+ (const CChatRoomEndMiniGameForChatRoomGroupResponse *message);
+size_t cchat_room__end_mini_game_for_chat_room_group__response__pack
+ (const CChatRoomEndMiniGameForChatRoomGroupResponse *message,
+ uint8_t *out);
+size_t cchat_room__end_mini_game_for_chat_room_group__response__pack_to_buffer
+ (const CChatRoomEndMiniGameForChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomEndMiniGameForChatRoomGroupResponse *
+ cchat_room__end_mini_game_for_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__end_mini_game_for_chat_room_group__response__free_unpacked
+ (CChatRoomEndMiniGameForChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__mute_user__request__get_packed_size
+ (const CChatRoomMuteUserRequest *message);
+size_t cchat_room__mute_user__request__pack
+ (const CChatRoomMuteUserRequest *message,
+ uint8_t *out);
+size_t cchat_room__mute_user__request__pack_to_buffer
+ (const CChatRoomMuteUserRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomMuteUserRequest *
+ cchat_room__mute_user__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__mute_user__request__free_unpacked
+ (CChatRoomMuteUserRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__mute_user__response__get_packed_size
+ (const CChatRoomMuteUserResponse *message);
+size_t cchat_room__mute_user__response__pack
+ (const CChatRoomMuteUserResponse *message,
+ uint8_t *out);
+size_t cchat_room__mute_user__response__pack_to_buffer
+ (const CChatRoomMuteUserResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomMuteUserResponse *
+ cchat_room__mute_user__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__mute_user__response__free_unpacked
+ (CChatRoomMuteUserResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__kick_user__request__get_packed_size
+ (const CChatRoomKickUserRequest *message);
+size_t cchat_room__kick_user__request__pack
+ (const CChatRoomKickUserRequest *message,
+ uint8_t *out);
+size_t cchat_room__kick_user__request__pack_to_buffer
+ (const CChatRoomKickUserRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomKickUserRequest *
+ cchat_room__kick_user__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__kick_user__request__free_unpacked
+ (CChatRoomKickUserRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__kick_user__response__get_packed_size
+ (const CChatRoomKickUserResponse *message);
+size_t cchat_room__kick_user__response__pack
+ (const CChatRoomKickUserResponse *message,
+ uint8_t *out);
+size_t cchat_room__kick_user__response__pack_to_buffer
+ (const CChatRoomKickUserResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomKickUserResponse *
+ cchat_room__kick_user__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__kick_user__response__free_unpacked
+ (CChatRoomKickUserResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_user_ban_state__request__get_packed_size
+ (const CChatRoomSetUserBanStateRequest *message);
+size_t cchat_room__set_user_ban_state__request__pack
+ (const CChatRoomSetUserBanStateRequest *message,
+ uint8_t *out);
+size_t cchat_room__set_user_ban_state__request__pack_to_buffer
+ (const CChatRoomSetUserBanStateRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetUserBanStateRequest *
+ cchat_room__set_user_ban_state__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_user_ban_state__request__free_unpacked
+ (CChatRoomSetUserBanStateRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_user_ban_state__response__get_packed_size
+ (const CChatRoomSetUserBanStateResponse *message);
+size_t cchat_room__set_user_ban_state__response__pack
+ (const CChatRoomSetUserBanStateResponse *message,
+ uint8_t *out);
+size_t cchat_room__set_user_ban_state__response__pack_to_buffer
+ (const CChatRoomSetUserBanStateResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetUserBanStateResponse *
+ cchat_room__set_user_ban_state__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_user_ban_state__response__free_unpacked
+ (CChatRoomSetUserBanStateResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__revoke_invite__request__get_packed_size
+ (const CChatRoomRevokeInviteRequest *message);
+size_t cchat_room__revoke_invite__request__pack
+ (const CChatRoomRevokeInviteRequest *message,
+ uint8_t *out);
+size_t cchat_room__revoke_invite__request__pack_to_buffer
+ (const CChatRoomRevokeInviteRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomRevokeInviteRequest *
+ cchat_room__revoke_invite__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__revoke_invite__request__free_unpacked
+ (CChatRoomRevokeInviteRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__revoke_invite__response__get_packed_size
+ (const CChatRoomRevokeInviteResponse *message);
+size_t cchat_room__revoke_invite__response__pack
+ (const CChatRoomRevokeInviteResponse *message,
+ uint8_t *out);
+size_t cchat_room__revoke_invite__response__pack_to_buffer
+ (const CChatRoomRevokeInviteResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomRevokeInviteResponse *
+ cchat_room__revoke_invite__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__revoke_invite__response__free_unpacked
+ (CChatRoomRevokeInviteResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__create_role__request__get_packed_size
+ (const CChatRoomCreateRoleRequest *message);
+size_t cchat_room__create_role__request__pack
+ (const CChatRoomCreateRoleRequest *message,
+ uint8_t *out);
+size_t cchat_room__create_role__request__pack_to_buffer
+ (const CChatRoomCreateRoleRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomCreateRoleRequest *
+ cchat_room__create_role__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__create_role__request__free_unpacked
+ (CChatRoomCreateRoleRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__create_role__response__get_packed_size
+ (const CChatRoomCreateRoleResponse *message);
+size_t cchat_room__create_role__response__pack
+ (const CChatRoomCreateRoleResponse *message,
+ uint8_t *out);
+size_t cchat_room__create_role__response__pack_to_buffer
+ (const CChatRoomCreateRoleResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomCreateRoleResponse *
+ cchat_room__create_role__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__create_role__response__free_unpacked
+ (CChatRoomCreateRoleResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_roles__request__get_packed_size
+ (const CChatRoomGetRolesRequest *message);
+size_t cchat_room__get_roles__request__pack
+ (const CChatRoomGetRolesRequest *message,
+ uint8_t *out);
+size_t cchat_room__get_roles__request__pack_to_buffer
+ (const CChatRoomGetRolesRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetRolesRequest *
+ cchat_room__get_roles__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_roles__request__free_unpacked
+ (CChatRoomGetRolesRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_roles__response__get_packed_size
+ (const CChatRoomGetRolesResponse *message);
+size_t cchat_room__get_roles__response__pack
+ (const CChatRoomGetRolesResponse *message,
+ uint8_t *out);
+size_t cchat_room__get_roles__response__pack_to_buffer
+ (const CChatRoomGetRolesResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetRolesResponse *
+ cchat_room__get_roles__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_roles__response__free_unpacked
+ (CChatRoomGetRolesResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__rename_role__request__get_packed_size
+ (const CChatRoomRenameRoleRequest *message);
+size_t cchat_room__rename_role__request__pack
+ (const CChatRoomRenameRoleRequest *message,
+ uint8_t *out);
+size_t cchat_room__rename_role__request__pack_to_buffer
+ (const CChatRoomRenameRoleRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomRenameRoleRequest *
+ cchat_room__rename_role__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__rename_role__request__free_unpacked
+ (CChatRoomRenameRoleRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__rename_role__response__get_packed_size
+ (const CChatRoomRenameRoleResponse *message);
+size_t cchat_room__rename_role__response__pack
+ (const CChatRoomRenameRoleResponse *message,
+ uint8_t *out);
+size_t cchat_room__rename_role__response__pack_to_buffer
+ (const CChatRoomRenameRoleResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomRenameRoleResponse *
+ cchat_room__rename_role__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__rename_role__response__free_unpacked
+ (CChatRoomRenameRoleResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__reorder_role__request__get_packed_size
+ (const CChatRoomReorderRoleRequest *message);
+size_t cchat_room__reorder_role__request__pack
+ (const CChatRoomReorderRoleRequest *message,
+ uint8_t *out);
+size_t cchat_room__reorder_role__request__pack_to_buffer
+ (const CChatRoomReorderRoleRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomReorderRoleRequest *
+ cchat_room__reorder_role__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__reorder_role__request__free_unpacked
+ (CChatRoomReorderRoleRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__reorder_role__response__get_packed_size
+ (const CChatRoomReorderRoleResponse *message);
+size_t cchat_room__reorder_role__response__pack
+ (const CChatRoomReorderRoleResponse *message,
+ uint8_t *out);
+size_t cchat_room__reorder_role__response__pack_to_buffer
+ (const CChatRoomReorderRoleResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomReorderRoleResponse *
+ cchat_room__reorder_role__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__reorder_role__response__free_unpacked
+ (CChatRoomReorderRoleResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__delete_role__request__get_packed_size
+ (const CChatRoomDeleteRoleRequest *message);
+size_t cchat_room__delete_role__request__pack
+ (const CChatRoomDeleteRoleRequest *message,
+ uint8_t *out);
+size_t cchat_room__delete_role__request__pack_to_buffer
+ (const CChatRoomDeleteRoleRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomDeleteRoleRequest *
+ cchat_room__delete_role__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__delete_role__request__free_unpacked
+ (CChatRoomDeleteRoleRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__delete_role__response__get_packed_size
+ (const CChatRoomDeleteRoleResponse *message);
+size_t cchat_room__delete_role__response__pack
+ (const CChatRoomDeleteRoleResponse *message,
+ uint8_t *out);
+size_t cchat_room__delete_role__response__pack_to_buffer
+ (const CChatRoomDeleteRoleResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomDeleteRoleResponse *
+ cchat_room__delete_role__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__delete_role__response__free_unpacked
+ (CChatRoomDeleteRoleResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_role_actions__request__get_packed_size
+ (const CChatRoomGetRoleActionsRequest *message);
+size_t cchat_room__get_role_actions__request__pack
+ (const CChatRoomGetRoleActionsRequest *message,
+ uint8_t *out);
+size_t cchat_room__get_role_actions__request__pack_to_buffer
+ (const CChatRoomGetRoleActionsRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetRoleActionsRequest *
+ cchat_room__get_role_actions__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_role_actions__request__free_unpacked
+ (CChatRoomGetRoleActionsRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_role_actions__response__get_packed_size
+ (const CChatRoomGetRoleActionsResponse *message);
+size_t cchat_room__get_role_actions__response__pack
+ (const CChatRoomGetRoleActionsResponse *message,
+ uint8_t *out);
+size_t cchat_room__get_role_actions__response__pack_to_buffer
+ (const CChatRoomGetRoleActionsResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetRoleActionsResponse *
+ cchat_room__get_role_actions__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_role_actions__response__free_unpacked
+ (CChatRoomGetRoleActionsResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__replace_role_actions__request__get_packed_size
+ (const CChatRoomReplaceRoleActionsRequest *message);
+size_t cchat_room__replace_role_actions__request__pack
+ (const CChatRoomReplaceRoleActionsRequest *message,
+ uint8_t *out);
+size_t cchat_room__replace_role_actions__request__pack_to_buffer
+ (const CChatRoomReplaceRoleActionsRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomReplaceRoleActionsRequest *
+ cchat_room__replace_role_actions__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__replace_role_actions__request__free_unpacked
+ (CChatRoomReplaceRoleActionsRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__replace_role_actions__response__get_packed_size
+ (const CChatRoomReplaceRoleActionsResponse *message);
+size_t cchat_room__replace_role_actions__response__pack
+ (const CChatRoomReplaceRoleActionsResponse *message,
+ uint8_t *out);
+size_t cchat_room__replace_role_actions__response__pack_to_buffer
+ (const CChatRoomReplaceRoleActionsResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomReplaceRoleActionsResponse *
+ cchat_room__replace_role_actions__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__replace_role_actions__response__free_unpacked
+ (CChatRoomReplaceRoleActionsResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__add_role_to_user__request__get_packed_size
+ (const CChatRoomAddRoleToUserRequest *message);
+size_t cchat_room__add_role_to_user__request__pack
+ (const CChatRoomAddRoleToUserRequest *message,
+ uint8_t *out);
+size_t cchat_room__add_role_to_user__request__pack_to_buffer
+ (const CChatRoomAddRoleToUserRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomAddRoleToUserRequest *
+ cchat_room__add_role_to_user__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__add_role_to_user__request__free_unpacked
+ (CChatRoomAddRoleToUserRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__add_role_to_user__response__get_packed_size
+ (const CChatRoomAddRoleToUserResponse *message);
+size_t cchat_room__add_role_to_user__response__pack
+ (const CChatRoomAddRoleToUserResponse *message,
+ uint8_t *out);
+size_t cchat_room__add_role_to_user__response__pack_to_buffer
+ (const CChatRoomAddRoleToUserResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomAddRoleToUserResponse *
+ cchat_room__add_role_to_user__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__add_role_to_user__response__free_unpacked
+ (CChatRoomAddRoleToUserResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_roles_for_user__request__get_packed_size
+ (const CChatRoomGetRolesForUserRequest *message);
+size_t cchat_room__get_roles_for_user__request__pack
+ (const CChatRoomGetRolesForUserRequest *message,
+ uint8_t *out);
+size_t cchat_room__get_roles_for_user__request__pack_to_buffer
+ (const CChatRoomGetRolesForUserRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetRolesForUserRequest *
+ cchat_room__get_roles_for_user__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_roles_for_user__request__free_unpacked
+ (CChatRoomGetRolesForUserRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_roles_for_user__response__get_packed_size
+ (const CChatRoomGetRolesForUserResponse *message);
+size_t cchat_room__get_roles_for_user__response__pack
+ (const CChatRoomGetRolesForUserResponse *message,
+ uint8_t *out);
+size_t cchat_room__get_roles_for_user__response__pack_to_buffer
+ (const CChatRoomGetRolesForUserResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetRolesForUserResponse *
+ cchat_room__get_roles_for_user__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_roles_for_user__response__free_unpacked
+ (CChatRoomGetRolesForUserResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__delete_role_from_user__request__get_packed_size
+ (const CChatRoomDeleteRoleFromUserRequest *message);
+size_t cchat_room__delete_role_from_user__request__pack
+ (const CChatRoomDeleteRoleFromUserRequest *message,
+ uint8_t *out);
+size_t cchat_room__delete_role_from_user__request__pack_to_buffer
+ (const CChatRoomDeleteRoleFromUserRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomDeleteRoleFromUserRequest *
+ cchat_room__delete_role_from_user__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__delete_role_from_user__request__free_unpacked
+ (CChatRoomDeleteRoleFromUserRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__delete_role_from_user__response__get_packed_size
+ (const CChatRoomDeleteRoleFromUserResponse *message);
+size_t cchat_room__delete_role_from_user__response__pack
+ (const CChatRoomDeleteRoleFromUserResponse *message,
+ uint8_t *out);
+size_t cchat_room__delete_role_from_user__response__pack_to_buffer
+ (const CChatRoomDeleteRoleFromUserResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomDeleteRoleFromUserResponse *
+ cchat_room__delete_role_from_user__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__delete_role_from_user__response__free_unpacked
+ (CChatRoomDeleteRoleFromUserResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__join_chat_room_group__request__get_packed_size
+ (const CChatRoomJoinChatRoomGroupRequest *message);
+size_t cchat_room__join_chat_room_group__request__pack
+ (const CChatRoomJoinChatRoomGroupRequest *message,
+ uint8_t *out);
+size_t cchat_room__join_chat_room_group__request__pack_to_buffer
+ (const CChatRoomJoinChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomJoinChatRoomGroupRequest *
+ cchat_room__join_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__join_chat_room_group__request__free_unpacked
+ (CChatRoomJoinChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__join_chat_room_group__response__get_packed_size
+ (const CChatRoomJoinChatRoomGroupResponse *message);
+size_t cchat_room__join_chat_room_group__response__pack
+ (const CChatRoomJoinChatRoomGroupResponse *message,
+ uint8_t *out);
+size_t cchat_room__join_chat_room_group__response__pack_to_buffer
+ (const CChatRoomJoinChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomJoinChatRoomGroupResponse *
+ cchat_room__join_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__join_chat_room_group__response__free_unpacked
+ (CChatRoomJoinChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__invite_friend_to_chat_room_group__request__get_packed_size
+ (const CChatRoomInviteFriendToChatRoomGroupRequest *message);
+size_t cchat_room__invite_friend_to_chat_room_group__request__pack
+ (const CChatRoomInviteFriendToChatRoomGroupRequest *message,
+ uint8_t *out);
+size_t cchat_room__invite_friend_to_chat_room_group__request__pack_to_buffer
+ (const CChatRoomInviteFriendToChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomInviteFriendToChatRoomGroupRequest *
+ cchat_room__invite_friend_to_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__invite_friend_to_chat_room_group__request__free_unpacked
+ (CChatRoomInviteFriendToChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__invite_friend_to_chat_room_group__response__get_packed_size
+ (const CChatRoomInviteFriendToChatRoomGroupResponse *message);
+size_t cchat_room__invite_friend_to_chat_room_group__response__pack
+ (const CChatRoomInviteFriendToChatRoomGroupResponse *message,
+ uint8_t *out);
+size_t cchat_room__invite_friend_to_chat_room_group__response__pack_to_buffer
+ (const CChatRoomInviteFriendToChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomInviteFriendToChatRoomGroupResponse *
+ cchat_room__invite_friend_to_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__invite_friend_to_chat_room_group__response__free_unpacked
+ (CChatRoomInviteFriendToChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__leave_chat_room_group__request__get_packed_size
+ (const CChatRoomLeaveChatRoomGroupRequest *message);
+size_t cchat_room__leave_chat_room_group__request__pack
+ (const CChatRoomLeaveChatRoomGroupRequest *message,
+ uint8_t *out);
+size_t cchat_room__leave_chat_room_group__request__pack_to_buffer
+ (const CChatRoomLeaveChatRoomGroupRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomLeaveChatRoomGroupRequest *
+ cchat_room__leave_chat_room_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__leave_chat_room_group__request__free_unpacked
+ (CChatRoomLeaveChatRoomGroupRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__leave_chat_room_group__response__get_packed_size
+ (const CChatRoomLeaveChatRoomGroupResponse *message);
+size_t cchat_room__leave_chat_room_group__response__pack
+ (const CChatRoomLeaveChatRoomGroupResponse *message,
+ uint8_t *out);
+size_t cchat_room__leave_chat_room_group__response__pack_to_buffer
+ (const CChatRoomLeaveChatRoomGroupResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomLeaveChatRoomGroupResponse *
+ cchat_room__leave_chat_room_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__leave_chat_room_group__response__free_unpacked
+ (CChatRoomLeaveChatRoomGroupResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__create_chat_room__request__get_packed_size
+ (const CChatRoomCreateChatRoomRequest *message);
+size_t cchat_room__create_chat_room__request__pack
+ (const CChatRoomCreateChatRoomRequest *message,
+ uint8_t *out);
+size_t cchat_room__create_chat_room__request__pack_to_buffer
+ (const CChatRoomCreateChatRoomRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomCreateChatRoomRequest *
+ cchat_room__create_chat_room__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__create_chat_room__request__free_unpacked
+ (CChatRoomCreateChatRoomRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__create_chat_room__response__get_packed_size
+ (const CChatRoomCreateChatRoomResponse *message);
+size_t cchat_room__create_chat_room__response__pack
+ (const CChatRoomCreateChatRoomResponse *message,
+ uint8_t *out);
+size_t cchat_room__create_chat_room__response__pack_to_buffer
+ (const CChatRoomCreateChatRoomResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomCreateChatRoomResponse *
+ cchat_room__create_chat_room__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__create_chat_room__response__free_unpacked
+ (CChatRoomCreateChatRoomResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__delete_chat_room__request__get_packed_size
+ (const CChatRoomDeleteChatRoomRequest *message);
+size_t cchat_room__delete_chat_room__request__pack
+ (const CChatRoomDeleteChatRoomRequest *message,
+ uint8_t *out);
+size_t cchat_room__delete_chat_room__request__pack_to_buffer
+ (const CChatRoomDeleteChatRoomRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomDeleteChatRoomRequest *
+ cchat_room__delete_chat_room__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__delete_chat_room__request__free_unpacked
+ (CChatRoomDeleteChatRoomRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__delete_chat_room__response__get_packed_size
+ (const CChatRoomDeleteChatRoomResponse *message);
+size_t cchat_room__delete_chat_room__response__pack
+ (const CChatRoomDeleteChatRoomResponse *message,
+ uint8_t *out);
+size_t cchat_room__delete_chat_room__response__pack_to_buffer
+ (const CChatRoomDeleteChatRoomResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomDeleteChatRoomResponse *
+ cchat_room__delete_chat_room__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__delete_chat_room__response__free_unpacked
+ (CChatRoomDeleteChatRoomResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__rename_chat_room__request__get_packed_size
+ (const CChatRoomRenameChatRoomRequest *message);
+size_t cchat_room__rename_chat_room__request__pack
+ (const CChatRoomRenameChatRoomRequest *message,
+ uint8_t *out);
+size_t cchat_room__rename_chat_room__request__pack_to_buffer
+ (const CChatRoomRenameChatRoomRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomRenameChatRoomRequest *
+ cchat_room__rename_chat_room__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__rename_chat_room__request__free_unpacked
+ (CChatRoomRenameChatRoomRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__rename_chat_room__response__get_packed_size
+ (const CChatRoomRenameChatRoomResponse *message);
+size_t cchat_room__rename_chat_room__response__pack
+ (const CChatRoomRenameChatRoomResponse *message,
+ uint8_t *out);
+size_t cchat_room__rename_chat_room__response__pack_to_buffer
+ (const CChatRoomRenameChatRoomResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomRenameChatRoomResponse *
+ cchat_room__rename_chat_room__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__rename_chat_room__response__free_unpacked
+ (CChatRoomRenameChatRoomResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__reorder_chat_room__request__get_packed_size
+ (const CChatRoomReorderChatRoomRequest *message);
+size_t cchat_room__reorder_chat_room__request__pack
+ (const CChatRoomReorderChatRoomRequest *message,
+ uint8_t *out);
+size_t cchat_room__reorder_chat_room__request__pack_to_buffer
+ (const CChatRoomReorderChatRoomRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomReorderChatRoomRequest *
+ cchat_room__reorder_chat_room__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__reorder_chat_room__request__free_unpacked
+ (CChatRoomReorderChatRoomRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__reorder_chat_room__response__get_packed_size
+ (const CChatRoomReorderChatRoomResponse *message);
+size_t cchat_room__reorder_chat_room__response__pack
+ (const CChatRoomReorderChatRoomResponse *message,
+ uint8_t *out);
+size_t cchat_room__reorder_chat_room__response__pack_to_buffer
+ (const CChatRoomReorderChatRoomResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomReorderChatRoomResponse *
+ cchat_room__reorder_chat_room__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__reorder_chat_room__response__free_unpacked
+ (CChatRoomReorderChatRoomResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__send_chat_message__request__get_packed_size
+ (const CChatRoomSendChatMessageRequest *message);
+size_t cchat_room__send_chat_message__request__pack
+ (const CChatRoomSendChatMessageRequest *message,
+ uint8_t *out);
+size_t cchat_room__send_chat_message__request__pack_to_buffer
+ (const CChatRoomSendChatMessageRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSendChatMessageRequest *
+ cchat_room__send_chat_message__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__send_chat_message__request__free_unpacked
+ (CChatRoomSendChatMessageRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__send_chat_message__response__get_packed_size
+ (const CChatRoomSendChatMessageResponse *message);
+size_t cchat_room__send_chat_message__response__pack
+ (const CChatRoomSendChatMessageResponse *message,
+ uint8_t *out);
+size_t cchat_room__send_chat_message__response__pack_to_buffer
+ (const CChatRoomSendChatMessageResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSendChatMessageResponse *
+ cchat_room__send_chat_message__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__send_chat_message__response__free_unpacked
+ (CChatRoomSendChatMessageResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__join_voice_chat__request__get_packed_size
+ (const CChatRoomJoinVoiceChatRequest *message);
+size_t cchat_room__join_voice_chat__request__pack
+ (const CChatRoomJoinVoiceChatRequest *message,
+ uint8_t *out);
+size_t cchat_room__join_voice_chat__request__pack_to_buffer
+ (const CChatRoomJoinVoiceChatRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomJoinVoiceChatRequest *
+ cchat_room__join_voice_chat__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__join_voice_chat__request__free_unpacked
+ (CChatRoomJoinVoiceChatRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__join_voice_chat__response__get_packed_size
+ (const CChatRoomJoinVoiceChatResponse *message);
+size_t cchat_room__join_voice_chat__response__pack
+ (const CChatRoomJoinVoiceChatResponse *message,
+ uint8_t *out);
+size_t cchat_room__join_voice_chat__response__pack_to_buffer
+ (const CChatRoomJoinVoiceChatResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomJoinVoiceChatResponse *
+ cchat_room__join_voice_chat__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__join_voice_chat__response__free_unpacked
+ (CChatRoomJoinVoiceChatResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__leave_voice_chat__request__get_packed_size
+ (const CChatRoomLeaveVoiceChatRequest *message);
+size_t cchat_room__leave_voice_chat__request__pack
+ (const CChatRoomLeaveVoiceChatRequest *message,
+ uint8_t *out);
+size_t cchat_room__leave_voice_chat__request__pack_to_buffer
+ (const CChatRoomLeaveVoiceChatRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomLeaveVoiceChatRequest *
+ cchat_room__leave_voice_chat__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__leave_voice_chat__request__free_unpacked
+ (CChatRoomLeaveVoiceChatRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__leave_voice_chat__response__get_packed_size
+ (const CChatRoomLeaveVoiceChatResponse *message);
+size_t cchat_room__leave_voice_chat__response__pack
+ (const CChatRoomLeaveVoiceChatResponse *message,
+ uint8_t *out);
+size_t cchat_room__leave_voice_chat__response__pack_to_buffer
+ (const CChatRoomLeaveVoiceChatResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomLeaveVoiceChatResponse *
+ cchat_room__leave_voice_chat__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__leave_voice_chat__response__free_unpacked
+ (CChatRoomLeaveVoiceChatResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_message_history__request__get_packed_size
+ (const CChatRoomGetMessageHistoryRequest *message);
+size_t cchat_room__get_message_history__request__pack
+ (const CChatRoomGetMessageHistoryRequest *message,
+ uint8_t *out);
+size_t cchat_room__get_message_history__request__pack_to_buffer
+ (const CChatRoomGetMessageHistoryRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetMessageHistoryRequest *
+ cchat_room__get_message_history__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_message_history__request__free_unpacked
+ (CChatRoomGetMessageHistoryRequest *message,
+ ProtobufCAllocator *allocator);
+size_t server_message__get_packed_size
+ (const ServerMessage *message);
+size_t server_message__pack
+ (const ServerMessage *message,
+ uint8_t *out);
+size_t server_message__pack_to_buffer
+ (const ServerMessage *message,
+ ProtobufCBuffer *buffer);
+ServerMessage *
+ server_message__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void server_message__free_unpacked
+ (ServerMessage *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_message_history__response__get_packed_size
+ (const CChatRoomGetMessageHistoryResponse *message);
+size_t cchat_room__get_message_history__response__pack
+ (const CChatRoomGetMessageHistoryResponse *message,
+ uint8_t *out);
+size_t cchat_room__get_message_history__response__pack_to_buffer
+ (const CChatRoomGetMessageHistoryResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetMessageHistoryResponse *
+ cchat_room__get_message_history__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_message_history__response__free_unpacked
+ (CChatRoomGetMessageHistoryResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_my_chat_room_groups__request__get_packed_size
+ (const CChatRoomGetMyChatRoomGroupsRequest *message);
+size_t cchat_room__get_my_chat_room_groups__request__pack
+ (const CChatRoomGetMyChatRoomGroupsRequest *message,
+ uint8_t *out);
+size_t cchat_room__get_my_chat_room_groups__request__pack_to_buffer
+ (const CChatRoomGetMyChatRoomGroupsRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetMyChatRoomGroupsRequest *
+ cchat_room__get_my_chat_room_groups__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_my_chat_room_groups__request__free_unpacked
+ (CChatRoomGetMyChatRoomGroupsRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_chat_room_group_summary__response__get_packed_size
+ (const CChatRoomGetChatRoomGroupSummaryResponse *message);
+size_t cchat_room__get_chat_room_group_summary__response__pack
+ (const CChatRoomGetChatRoomGroupSummaryResponse *message,
+ uint8_t *out);
+size_t cchat_room__get_chat_room_group_summary__response__pack_to_buffer
+ (const CChatRoomGetChatRoomGroupSummaryResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetChatRoomGroupSummaryResponse *
+ cchat_room__get_chat_room_group_summary__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_chat_room_group_summary__response__free_unpacked
+ (CChatRoomGetChatRoomGroupSummaryResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room_summary_pair__get_packed_size
+ (const CChatRoomSummaryPair *message);
+size_t cchat_room_summary_pair__pack
+ (const CChatRoomSummaryPair *message,
+ uint8_t *out);
+size_t cchat_room_summary_pair__pack_to_buffer
+ (const CChatRoomSummaryPair *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSummaryPair *
+ cchat_room_summary_pair__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room_summary_pair__free_unpacked
+ (CChatRoomSummaryPair *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_my_chat_room_groups__response__get_packed_size
+ (const CChatRoomGetMyChatRoomGroupsResponse *message);
+size_t cchat_room__get_my_chat_room_groups__response__pack
+ (const CChatRoomGetMyChatRoomGroupsResponse *message,
+ uint8_t *out);
+size_t cchat_room__get_my_chat_room_groups__response__pack_to_buffer
+ (const CChatRoomGetMyChatRoomGroupsResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetMyChatRoomGroupsResponse *
+ cchat_room__get_my_chat_room_groups__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_my_chat_room_groups__response__free_unpacked
+ (CChatRoomGetMyChatRoomGroupsResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_chat_room_group_state__request__get_packed_size
+ (const CChatRoomGetChatRoomGroupStateRequest *message);
+size_t cchat_room__get_chat_room_group_state__request__pack
+ (const CChatRoomGetChatRoomGroupStateRequest *message,
+ uint8_t *out);
+size_t cchat_room__get_chat_room_group_state__request__pack_to_buffer
+ (const CChatRoomGetChatRoomGroupStateRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetChatRoomGroupStateRequest *
+ cchat_room__get_chat_room_group_state__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_chat_room_group_state__request__free_unpacked
+ (CChatRoomGetChatRoomGroupStateRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_chat_room_group_state__response__get_packed_size
+ (const CChatRoomGetChatRoomGroupStateResponse *message);
+size_t cchat_room__get_chat_room_group_state__response__pack
+ (const CChatRoomGetChatRoomGroupStateResponse *message,
+ uint8_t *out);
+size_t cchat_room__get_chat_room_group_state__response__pack_to_buffer
+ (const CChatRoomGetChatRoomGroupStateResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetChatRoomGroupStateResponse *
+ cchat_room__get_chat_room_group_state__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_chat_room_group_state__response__free_unpacked
+ (CChatRoomGetChatRoomGroupStateResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_chat_room_group_summary__request__get_packed_size
+ (const CChatRoomGetChatRoomGroupSummaryRequest *message);
+size_t cchat_room__get_chat_room_group_summary__request__pack
+ (const CChatRoomGetChatRoomGroupSummaryRequest *message,
+ uint8_t *out);
+size_t cchat_room__get_chat_room_group_summary__request__pack_to_buffer
+ (const CChatRoomGetChatRoomGroupSummaryRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetChatRoomGroupSummaryRequest *
+ cchat_room__get_chat_room_group_summary__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_chat_room_group_summary__request__free_unpacked
+ (CChatRoomGetChatRoomGroupSummaryRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_app_chat_room_group_force_active__request__get_packed_size
+ (const CChatRoomSetAppChatRoomGroupForceActiveRequest *message);
+size_t cchat_room__set_app_chat_room_group_force_active__request__pack
+ (const CChatRoomSetAppChatRoomGroupForceActiveRequest *message,
+ uint8_t *out);
+size_t cchat_room__set_app_chat_room_group_force_active__request__pack_to_buffer
+ (const CChatRoomSetAppChatRoomGroupForceActiveRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetAppChatRoomGroupForceActiveRequest *
+ cchat_room__set_app_chat_room_group_force_active__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_app_chat_room_group_force_active__request__free_unpacked
+ (CChatRoomSetAppChatRoomGroupForceActiveRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_app_chat_room_group_force_active__response__get_packed_size
+ (const CChatRoomSetAppChatRoomGroupForceActiveResponse *message);
+size_t cchat_room__set_app_chat_room_group_force_active__response__pack
+ (const CChatRoomSetAppChatRoomGroupForceActiveResponse *message,
+ uint8_t *out);
+size_t cchat_room__set_app_chat_room_group_force_active__response__pack_to_buffer
+ (const CChatRoomSetAppChatRoomGroupForceActiveResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetAppChatRoomGroupForceActiveResponse *
+ cchat_room__set_app_chat_room_group_force_active__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_app_chat_room_group_force_active__response__free_unpacked
+ (CChatRoomSetAppChatRoomGroupForceActiveResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_app_chat_room_group_stop_force_active__notification__get_packed_size
+ (const CChatRoomSetAppChatRoomGroupStopForceActiveNotification *message);
+size_t cchat_room__set_app_chat_room_group_stop_force_active__notification__pack
+ (const CChatRoomSetAppChatRoomGroupStopForceActiveNotification *message,
+ uint8_t *out);
+size_t cchat_room__set_app_chat_room_group_stop_force_active__notification__pack_to_buffer
+ (const CChatRoomSetAppChatRoomGroupStopForceActiveNotification *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetAppChatRoomGroupStopForceActiveNotification *
+ cchat_room__set_app_chat_room_group_stop_force_active__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_app_chat_room_group_stop_force_active__notification__free_unpacked
+ (CChatRoomSetAppChatRoomGroupStopForceActiveNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__ack_chat_message__notification__get_packed_size
+ (const CChatRoomAckChatMessageNotification *message);
+size_t cchat_room__ack_chat_message__notification__pack
+ (const CChatRoomAckChatMessageNotification *message,
+ uint8_t *out);
+size_t cchat_room__ack_chat_message__notification__pack_to_buffer
+ (const CChatRoomAckChatMessageNotification *message,
+ ProtobufCBuffer *buffer);
+CChatRoomAckChatMessageNotification *
+ cchat_room__ack_chat_message__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__ack_chat_message__notification__free_unpacked
+ (CChatRoomAckChatMessageNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__create_invite_link__request__get_packed_size
+ (const CChatRoomCreateInviteLinkRequest *message);
+size_t cchat_room__create_invite_link__request__pack
+ (const CChatRoomCreateInviteLinkRequest *message,
+ uint8_t *out);
+size_t cchat_room__create_invite_link__request__pack_to_buffer
+ (const CChatRoomCreateInviteLinkRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomCreateInviteLinkRequest *
+ cchat_room__create_invite_link__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__create_invite_link__request__free_unpacked
+ (CChatRoomCreateInviteLinkRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__create_invite_link__response__get_packed_size
+ (const CChatRoomCreateInviteLinkResponse *message);
+size_t cchat_room__create_invite_link__response__pack
+ (const CChatRoomCreateInviteLinkResponse *message,
+ uint8_t *out);
+size_t cchat_room__create_invite_link__response__pack_to_buffer
+ (const CChatRoomCreateInviteLinkResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomCreateInviteLinkResponse *
+ cchat_room__create_invite_link__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__create_invite_link__response__free_unpacked
+ (CChatRoomCreateInviteLinkResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_invite_link_info__request__get_packed_size
+ (const CChatRoomGetInviteLinkInfoRequest *message);
+size_t cchat_room__get_invite_link_info__request__pack
+ (const CChatRoomGetInviteLinkInfoRequest *message,
+ uint8_t *out);
+size_t cchat_room__get_invite_link_info__request__pack_to_buffer
+ (const CChatRoomGetInviteLinkInfoRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetInviteLinkInfoRequest *
+ cchat_room__get_invite_link_info__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_invite_link_info__request__free_unpacked
+ (CChatRoomGetInviteLinkInfoRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_invite_link_info__response__get_packed_size
+ (const CChatRoomGetInviteLinkInfoResponse *message);
+size_t cchat_room__get_invite_link_info__response__pack
+ (const CChatRoomGetInviteLinkInfoResponse *message,
+ uint8_t *out);
+size_t cchat_room__get_invite_link_info__response__pack_to_buffer
+ (const CChatRoomGetInviteLinkInfoResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetInviteLinkInfoResponse *
+ cchat_room__get_invite_link_info__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_invite_link_info__response__free_unpacked
+ (CChatRoomGetInviteLinkInfoResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_invite_info__request__get_packed_size
+ (const CChatRoomGetInviteInfoRequest *message);
+size_t cchat_room__get_invite_info__request__pack
+ (const CChatRoomGetInviteInfoRequest *message,
+ uint8_t *out);
+size_t cchat_room__get_invite_info__request__pack_to_buffer
+ (const CChatRoomGetInviteInfoRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetInviteInfoRequest *
+ cchat_room__get_invite_info__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_invite_info__request__free_unpacked
+ (CChatRoomGetInviteInfoRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_invite_info__response__get_packed_size
+ (const CChatRoomGetInviteInfoResponse *message);
+size_t cchat_room__get_invite_info__response__pack
+ (const CChatRoomGetInviteInfoResponse *message,
+ uint8_t *out);
+size_t cchat_room__get_invite_info__response__pack_to_buffer
+ (const CChatRoomGetInviteInfoResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetInviteInfoResponse *
+ cchat_room__get_invite_info__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_invite_info__response__free_unpacked
+ (CChatRoomGetInviteInfoResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_invite_links_for_group__request__get_packed_size
+ (const CChatRoomGetInviteLinksForGroupRequest *message);
+size_t cchat_room__get_invite_links_for_group__request__pack
+ (const CChatRoomGetInviteLinksForGroupRequest *message,
+ uint8_t *out);
+size_t cchat_room__get_invite_links_for_group__request__pack_to_buffer
+ (const CChatRoomGetInviteLinksForGroupRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetInviteLinksForGroupRequest *
+ cchat_room__get_invite_links_for_group__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_invite_links_for_group__request__free_unpacked
+ (CChatRoomGetInviteLinksForGroupRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_invite_links_for_group__response__get_packed_size
+ (const CChatRoomGetInviteLinksForGroupResponse *message);
+size_t cchat_room__get_invite_links_for_group__response__pack
+ (const CChatRoomGetInviteLinksForGroupResponse *message,
+ uint8_t *out);
+size_t cchat_room__get_invite_links_for_group__response__pack_to_buffer
+ (const CChatRoomGetInviteLinksForGroupResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetInviteLinksForGroupResponse *
+ cchat_room__get_invite_links_for_group__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_invite_links_for_group__response__free_unpacked
+ (CChatRoomGetInviteLinksForGroupResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_ban_list__request__get_packed_size
+ (const CChatRoomGetBanListRequest *message);
+size_t cchat_room__get_ban_list__request__pack
+ (const CChatRoomGetBanListRequest *message,
+ uint8_t *out);
+size_t cchat_room__get_ban_list__request__pack_to_buffer
+ (const CChatRoomGetBanListRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetBanListRequest *
+ cchat_room__get_ban_list__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_ban_list__request__free_unpacked
+ (CChatRoomGetBanListRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_ban_list__response__get_packed_size
+ (const CChatRoomGetBanListResponse *message);
+size_t cchat_room__get_ban_list__response__pack
+ (const CChatRoomGetBanListResponse *message,
+ uint8_t *out);
+size_t cchat_room__get_ban_list__response__pack_to_buffer
+ (const CChatRoomGetBanListResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetBanListResponse *
+ cchat_room__get_ban_list__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_ban_list__response__free_unpacked
+ (CChatRoomGetBanListResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_invite_list__request__get_packed_size
+ (const CChatRoomGetInviteListRequest *message);
+size_t cchat_room__get_invite_list__request__pack
+ (const CChatRoomGetInviteListRequest *message,
+ uint8_t *out);
+size_t cchat_room__get_invite_list__request__pack_to_buffer
+ (const CChatRoomGetInviteListRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetInviteListRequest *
+ cchat_room__get_invite_list__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_invite_list__request__free_unpacked
+ (CChatRoomGetInviteListRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room_group_invite__get_packed_size
+ (const CChatRoomGroupInvite *message);
+size_t cchat_room_group_invite__pack
+ (const CChatRoomGroupInvite *message,
+ uint8_t *out);
+size_t cchat_room_group_invite__pack_to_buffer
+ (const CChatRoomGroupInvite *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGroupInvite *
+ cchat_room_group_invite__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room_group_invite__free_unpacked
+ (CChatRoomGroupInvite *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_invite_list__response__get_packed_size
+ (const CChatRoomGetInviteListResponse *message);
+size_t cchat_room__get_invite_list__response__pack
+ (const CChatRoomGetInviteListResponse *message,
+ uint8_t *out);
+size_t cchat_room__get_invite_list__response__pack_to_buffer
+ (const CChatRoomGetInviteListResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetInviteListResponse *
+ cchat_room__get_invite_list__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_invite_list__response__free_unpacked
+ (CChatRoomGetInviteListResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__delete_invite_link__request__get_packed_size
+ (const CChatRoomDeleteInviteLinkRequest *message);
+size_t cchat_room__delete_invite_link__request__pack
+ (const CChatRoomDeleteInviteLinkRequest *message,
+ uint8_t *out);
+size_t cchat_room__delete_invite_link__request__pack_to_buffer
+ (const CChatRoomDeleteInviteLinkRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomDeleteInviteLinkRequest *
+ cchat_room__delete_invite_link__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__delete_invite_link__request__free_unpacked
+ (CChatRoomDeleteInviteLinkRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__delete_invite_link__response__get_packed_size
+ (const CChatRoomDeleteInviteLinkResponse *message);
+size_t cchat_room__delete_invite_link__response__pack
+ (const CChatRoomDeleteInviteLinkResponse *message,
+ uint8_t *out);
+size_t cchat_room__delete_invite_link__response__pack_to_buffer
+ (const CChatRoomDeleteInviteLinkResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomDeleteInviteLinkResponse *
+ cchat_room__delete_invite_link__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__delete_invite_link__response__free_unpacked
+ (CChatRoomDeleteInviteLinkResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_session_active_chat_room_groups__request__get_packed_size
+ (const CChatRoomSetSessionActiveChatRoomGroupsRequest *message);
+size_t cchat_room__set_session_active_chat_room_groups__request__pack
+ (const CChatRoomSetSessionActiveChatRoomGroupsRequest *message,
+ uint8_t *out);
+size_t cchat_room__set_session_active_chat_room_groups__request__pack_to_buffer
+ (const CChatRoomSetSessionActiveChatRoomGroupsRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetSessionActiveChatRoomGroupsRequest *
+ cchat_room__set_session_active_chat_room_groups__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_session_active_chat_room_groups__request__free_unpacked
+ (CChatRoomSetSessionActiveChatRoomGroupsRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_session_active_chat_room_groups__response__get_packed_size
+ (const CChatRoomSetSessionActiveChatRoomGroupsResponse *message);
+size_t cchat_room__set_session_active_chat_room_groups__response__pack
+ (const CChatRoomSetSessionActiveChatRoomGroupsResponse *message,
+ uint8_t *out);
+size_t cchat_room__set_session_active_chat_room_groups__response__pack_to_buffer
+ (const CChatRoomSetSessionActiveChatRoomGroupsResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetSessionActiveChatRoomGroupsResponse *
+ cchat_room__set_session_active_chat_room_groups__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_session_active_chat_room_groups__response__free_unpacked
+ (CChatRoomSetSessionActiveChatRoomGroupsResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_user_chat_group_preferences__request__get_packed_size
+ (const CChatRoomSetUserChatGroupPreferencesRequest *message);
+size_t cchat_room__set_user_chat_group_preferences__request__pack
+ (const CChatRoomSetUserChatGroupPreferencesRequest *message,
+ uint8_t *out);
+size_t cchat_room__set_user_chat_group_preferences__request__pack_to_buffer
+ (const CChatRoomSetUserChatGroupPreferencesRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetUserChatGroupPreferencesRequest *
+ cchat_room__set_user_chat_group_preferences__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_user_chat_group_preferences__request__free_unpacked
+ (CChatRoomSetUserChatGroupPreferencesRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__set_user_chat_group_preferences__response__get_packed_size
+ (const CChatRoomSetUserChatGroupPreferencesResponse *message);
+size_t cchat_room__set_user_chat_group_preferences__response__pack
+ (const CChatRoomSetUserChatGroupPreferencesResponse *message,
+ uint8_t *out);
+size_t cchat_room__set_user_chat_group_preferences__response__pack_to_buffer
+ (const CChatRoomSetUserChatGroupPreferencesResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSetUserChatGroupPreferencesResponse *
+ cchat_room__set_user_chat_group_preferences__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__set_user_chat_group_preferences__response__free_unpacked
+ (CChatRoomSetUserChatGroupPreferencesResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__delete_chat_messages__request__get_packed_size
+ (const CChatRoomDeleteChatMessagesRequest *message);
+size_t cchat_room__delete_chat_messages__request__pack
+ (const CChatRoomDeleteChatMessagesRequest *message,
+ uint8_t *out);
+size_t cchat_room__delete_chat_messages__request__pack_to_buffer
+ (const CChatRoomDeleteChatMessagesRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomDeleteChatMessagesRequest *
+ cchat_room__delete_chat_messages__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__delete_chat_messages__request__free_unpacked
+ (CChatRoomDeleteChatMessagesRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__delete_chat_messages__response__get_packed_size
+ (const CChatRoomDeleteChatMessagesResponse *message);
+size_t cchat_room__delete_chat_messages__response__pack
+ (const CChatRoomDeleteChatMessagesResponse *message,
+ uint8_t *out);
+size_t cchat_room__delete_chat_messages__response__pack_to_buffer
+ (const CChatRoomDeleteChatMessagesResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomDeleteChatMessagesResponse *
+ cchat_room__delete_chat_messages__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__delete_chat_messages__response__free_unpacked
+ (CChatRoomDeleteChatMessagesResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__update_member_list_view__notification__get_packed_size
+ (const CChatRoomUpdateMemberListViewNotification *message);
+size_t cchat_room__update_member_list_view__notification__pack
+ (const CChatRoomUpdateMemberListViewNotification *message,
+ uint8_t *out);
+size_t cchat_room__update_member_list_view__notification__pack_to_buffer
+ (const CChatRoomUpdateMemberListViewNotification *message,
+ ProtobufCBuffer *buffer);
+CChatRoomUpdateMemberListViewNotification *
+ cchat_room__update_member_list_view__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__update_member_list_view__notification__free_unpacked
+ (CChatRoomUpdateMemberListViewNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__search_members__request__get_packed_size
+ (const CChatRoomSearchMembersRequest *message);
+size_t cchat_room__search_members__request__pack
+ (const CChatRoomSearchMembersRequest *message,
+ uint8_t *out);
+size_t cchat_room__search_members__request__pack_to_buffer
+ (const CChatRoomSearchMembersRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSearchMembersRequest *
+ cchat_room__search_members__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__search_members__request__free_unpacked
+ (CChatRoomSearchMembersRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__search_members__response__get_packed_size
+ (const CChatRoomSearchMembersResponse *message);
+size_t cchat_room__search_members__response__pack
+ (const CChatRoomSearchMembersResponse *message,
+ uint8_t *out);
+size_t cchat_room__search_members__response__pack_to_buffer
+ (const CChatRoomSearchMembersResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomSearchMembersResponse *
+ cchat_room__search_members__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__search_members__response__free_unpacked
+ (CChatRoomSearchMembersResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__update_message_reaction__request__get_packed_size
+ (const CChatRoomUpdateMessageReactionRequest *message);
+size_t cchat_room__update_message_reaction__request__pack
+ (const CChatRoomUpdateMessageReactionRequest *message,
+ uint8_t *out);
+size_t cchat_room__update_message_reaction__request__pack_to_buffer
+ (const CChatRoomUpdateMessageReactionRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomUpdateMessageReactionRequest *
+ cchat_room__update_message_reaction__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__update_message_reaction__request__free_unpacked
+ (CChatRoomUpdateMessageReactionRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__update_message_reaction__response__get_packed_size
+ (const CChatRoomUpdateMessageReactionResponse *message);
+size_t cchat_room__update_message_reaction__response__pack
+ (const CChatRoomUpdateMessageReactionResponse *message,
+ uint8_t *out);
+size_t cchat_room__update_message_reaction__response__pack_to_buffer
+ (const CChatRoomUpdateMessageReactionResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomUpdateMessageReactionResponse *
+ cchat_room__update_message_reaction__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__update_message_reaction__response__free_unpacked
+ (CChatRoomUpdateMessageReactionResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_message_reaction_reactors__request__get_packed_size
+ (const CChatRoomGetMessageReactionReactorsRequest *message);
+size_t cchat_room__get_message_reaction_reactors__request__pack
+ (const CChatRoomGetMessageReactionReactorsRequest *message,
+ uint8_t *out);
+size_t cchat_room__get_message_reaction_reactors__request__pack_to_buffer
+ (const CChatRoomGetMessageReactionReactorsRequest *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetMessageReactionReactorsRequest *
+ cchat_room__get_message_reaction_reactors__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_message_reaction_reactors__request__free_unpacked
+ (CChatRoomGetMessageReactionReactorsRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__get_message_reaction_reactors__response__get_packed_size
+ (const CChatRoomGetMessageReactionReactorsResponse *message);
+size_t cchat_room__get_message_reaction_reactors__response__pack
+ (const CChatRoomGetMessageReactionReactorsResponse *message,
+ uint8_t *out);
+size_t cchat_room__get_message_reaction_reactors__response__pack_to_buffer
+ (const CChatRoomGetMessageReactionReactorsResponse *message,
+ ProtobufCBuffer *buffer);
+CChatRoomGetMessageReactionReactorsResponse *
+ cchat_room__get_message_reaction_reactors__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__get_message_reaction_reactors__response__free_unpacked
+ (CChatRoomGetMessageReactionReactorsResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cclan_chat_rooms__get_clan_chat_room_info__request__get_packed_size
+ (const CClanChatRoomsGetClanChatRoomInfoRequest *message);
+size_t cclan_chat_rooms__get_clan_chat_room_info__request__pack
+ (const CClanChatRoomsGetClanChatRoomInfoRequest *message,
+ uint8_t *out);
+size_t cclan_chat_rooms__get_clan_chat_room_info__request__pack_to_buffer
+ (const CClanChatRoomsGetClanChatRoomInfoRequest *message,
+ ProtobufCBuffer *buffer);
+CClanChatRoomsGetClanChatRoomInfoRequest *
+ cclan_chat_rooms__get_clan_chat_room_info__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cclan_chat_rooms__get_clan_chat_room_info__request__free_unpacked
+ (CClanChatRoomsGetClanChatRoomInfoRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cclan_chat_rooms__get_clan_chat_room_info__response__get_packed_size
+ (const CClanChatRoomsGetClanChatRoomInfoResponse *message);
+size_t cclan_chat_rooms__get_clan_chat_room_info__response__pack
+ (const CClanChatRoomsGetClanChatRoomInfoResponse *message,
+ uint8_t *out);
+size_t cclan_chat_rooms__get_clan_chat_room_info__response__pack_to_buffer
+ (const CClanChatRoomsGetClanChatRoomInfoResponse *message,
+ ProtobufCBuffer *buffer);
+CClanChatRoomsGetClanChatRoomInfoResponse *
+ cclan_chat_rooms__get_clan_chat_room_info__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cclan_chat_rooms__get_clan_chat_room_info__response__free_unpacked
+ (CClanChatRoomsGetClanChatRoomInfoResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cclan_chat_rooms__set_clan_chat_room_private__request__get_packed_size
+ (const CClanChatRoomsSetClanChatRoomPrivateRequest *message);
+size_t cclan_chat_rooms__set_clan_chat_room_private__request__pack
+ (const CClanChatRoomsSetClanChatRoomPrivateRequest *message,
+ uint8_t *out);
+size_t cclan_chat_rooms__set_clan_chat_room_private__request__pack_to_buffer
+ (const CClanChatRoomsSetClanChatRoomPrivateRequest *message,
+ ProtobufCBuffer *buffer);
+CClanChatRoomsSetClanChatRoomPrivateRequest *
+ cclan_chat_rooms__set_clan_chat_room_private__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cclan_chat_rooms__set_clan_chat_room_private__request__free_unpacked
+ (CClanChatRoomsSetClanChatRoomPrivateRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cclan_chat_rooms__set_clan_chat_room_private__response__get_packed_size
+ (const CClanChatRoomsSetClanChatRoomPrivateResponse *message);
+size_t cclan_chat_rooms__set_clan_chat_room_private__response__pack
+ (const CClanChatRoomsSetClanChatRoomPrivateResponse *message,
+ uint8_t *out);
+size_t cclan_chat_rooms__set_clan_chat_room_private__response__pack_to_buffer
+ (const CClanChatRoomsSetClanChatRoomPrivateResponse *message,
+ ProtobufCBuffer *buffer);
+CClanChatRoomsSetClanChatRoomPrivateResponse *
+ cclan_chat_rooms__set_clan_chat_room_private__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cclan_chat_rooms__set_clan_chat_room_private__response__free_unpacked
+ (CClanChatRoomsSetClanChatRoomPrivateResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_mentions__get_packed_size
+ (const CChatMentions *message);
+size_t cchat_mentions__pack
+ (const CChatMentions *message,
+ uint8_t *out);
+size_t cchat_mentions__pack_to_buffer
+ (const CChatMentions *message,
+ ProtobufCBuffer *buffer);
+CChatMentions *
+ cchat_mentions__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_mentions__free_unpacked
+ (CChatMentions *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__incoming_chat_message__notification__get_packed_size
+ (const CChatRoomIncomingChatMessageNotification *message);
+size_t cchat_room__incoming_chat_message__notification__pack
+ (const CChatRoomIncomingChatMessageNotification *message,
+ uint8_t *out);
+size_t cchat_room__incoming_chat_message__notification__pack_to_buffer
+ (const CChatRoomIncomingChatMessageNotification *message,
+ ProtobufCBuffer *buffer);
+CChatRoomIncomingChatMessageNotification *
+ cchat_room__incoming_chat_message__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__incoming_chat_message__notification__free_unpacked
+ (CChatRoomIncomingChatMessageNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__chat_message_modified__notification__get_packed_size
+ (const CChatRoomChatMessageModifiedNotification *message);
+size_t cchat_room__chat_message_modified__notification__pack
+ (const CChatRoomChatMessageModifiedNotification *message,
+ uint8_t *out);
+size_t cchat_room__chat_message_modified__notification__pack_to_buffer
+ (const CChatRoomChatMessageModifiedNotification *message,
+ ProtobufCBuffer *buffer);
+CChatRoomChatMessageModifiedNotification *
+ cchat_room__chat_message_modified__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__chat_message_modified__notification__free_unpacked
+ (CChatRoomChatMessageModifiedNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__member_state_change__notification__get_packed_size
+ (const CChatRoomMemberStateChangeNotification *message);
+size_t cchat_room__member_state_change__notification__pack
+ (const CChatRoomMemberStateChangeNotification *message,
+ uint8_t *out);
+size_t cchat_room__member_state_change__notification__pack_to_buffer
+ (const CChatRoomMemberStateChangeNotification *message,
+ ProtobufCBuffer *buffer);
+CChatRoomMemberStateChangeNotification *
+ cchat_room__member_state_change__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__member_state_change__notification__free_unpacked
+ (CChatRoomMemberStateChangeNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__chat_room_header_state__notification__get_packed_size
+ (const CChatRoomChatRoomHeaderStateNotification *message);
+size_t cchat_room__chat_room_header_state__notification__pack
+ (const CChatRoomChatRoomHeaderStateNotification *message,
+ uint8_t *out);
+size_t cchat_room__chat_room_header_state__notification__pack_to_buffer
+ (const CChatRoomChatRoomHeaderStateNotification *message,
+ ProtobufCBuffer *buffer);
+CChatRoomChatRoomHeaderStateNotification *
+ cchat_room__chat_room_header_state__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__chat_room_header_state__notification__free_unpacked
+ (CChatRoomChatRoomHeaderStateNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__chat_room_group_rooms_change__notification__get_packed_size
+ (const CChatRoomChatRoomGroupRoomsChangeNotification *message);
+size_t cchat_room__chat_room_group_rooms_change__notification__pack
+ (const CChatRoomChatRoomGroupRoomsChangeNotification *message,
+ uint8_t *out);
+size_t cchat_room__chat_room_group_rooms_change__notification__pack_to_buffer
+ (const CChatRoomChatRoomGroupRoomsChangeNotification *message,
+ ProtobufCBuffer *buffer);
+CChatRoomChatRoomGroupRoomsChangeNotification *
+ cchat_room__chat_room_group_rooms_change__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__chat_room_group_rooms_change__notification__free_unpacked
+ (CChatRoomChatRoomGroupRoomsChangeNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__get_packed_size
+ (const CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *message);
+size_t cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__pack
+ (const CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *message,
+ uint8_t *out);
+size_t cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__pack_to_buffer
+ (const CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *message,
+ ProtobufCBuffer *buffer);
+CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *
+ cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__notify_should_rejoin_chat_room_voice_chat__notification__free_unpacked
+ (CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *message,
+ ProtobufCAllocator *allocator);
+size_t chat_room_client__notify_chat_group_user_state_changed__notification__get_packed_size
+ (const ChatRoomClientNotifyChatGroupUserStateChangedNotification *message);
+size_t chat_room_client__notify_chat_group_user_state_changed__notification__pack
+ (const ChatRoomClientNotifyChatGroupUserStateChangedNotification *message,
+ uint8_t *out);
+size_t chat_room_client__notify_chat_group_user_state_changed__notification__pack_to_buffer
+ (const ChatRoomClientNotifyChatGroupUserStateChangedNotification *message,
+ ProtobufCBuffer *buffer);
+ChatRoomClientNotifyChatGroupUserStateChangedNotification *
+ chat_room_client__notify_chat_group_user_state_changed__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void chat_room_client__notify_chat_group_user_state_changed__notification__free_unpacked
+ (ChatRoomClientNotifyChatGroupUserStateChangedNotification *message,
+ ProtobufCAllocator *allocator);
+size_t chat_room_client__notify_chat_room_disconnect__notification__get_packed_size
+ (const ChatRoomClientNotifyChatRoomDisconnectNotification *message);
+size_t chat_room_client__notify_chat_room_disconnect__notification__pack
+ (const ChatRoomClientNotifyChatRoomDisconnectNotification *message,
+ uint8_t *out);
+size_t chat_room_client__notify_chat_room_disconnect__notification__pack_to_buffer
+ (const ChatRoomClientNotifyChatRoomDisconnectNotification *message,
+ ProtobufCBuffer *buffer);
+ChatRoomClientNotifyChatRoomDisconnectNotification *
+ chat_room_client__notify_chat_room_disconnect__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void chat_room_client__notify_chat_room_disconnect__notification__free_unpacked
+ (ChatRoomClientNotifyChatRoomDisconnectNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room_member_list_view__get_packed_size
+ (const CChatRoomMemberListView *message);
+size_t cchat_room_member_list_view__pack
+ (const CChatRoomMemberListView *message,
+ uint8_t *out);
+size_t cchat_room_member_list_view__pack_to_buffer
+ (const CChatRoomMemberListView *message,
+ ProtobufCBuffer *buffer);
+CChatRoomMemberListView *
+ cchat_room_member_list_view__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room_member_list_view__free_unpacked
+ (CChatRoomMemberListView *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room_member_summary_counts__get_packed_size
+ (const CChatRoomMemberSummaryCounts *message);
+size_t cchat_room_member_summary_counts__pack
+ (const CChatRoomMemberSummaryCounts *message,
+ uint8_t *out);
+size_t cchat_room_member_summary_counts__pack_to_buffer
+ (const CChatRoomMemberSummaryCounts *message,
+ ProtobufCBuffer *buffer);
+CChatRoomMemberSummaryCounts *
+ cchat_room_member_summary_counts__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room_member_summary_counts__free_unpacked
+ (CChatRoomMemberSummaryCounts *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room_client__member_list_view_updated__notification__get_packed_size
+ (const CChatRoomClientMemberListViewUpdatedNotification *message);
+size_t cchat_room_client__member_list_view_updated__notification__pack
+ (const CChatRoomClientMemberListViewUpdatedNotification *message,
+ uint8_t *out);
+size_t cchat_room_client__member_list_view_updated__notification__pack_to_buffer
+ (const CChatRoomClientMemberListViewUpdatedNotification *message,
+ ProtobufCBuffer *buffer);
+CChatRoomClientMemberListViewUpdatedNotification *
+ cchat_room_client__member_list_view_updated__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room_client__member_list_view_updated__notification__free_unpacked
+ (CChatRoomClientMemberListViewUpdatedNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_room__message_reaction__notification__get_packed_size
+ (const CChatRoomMessageReactionNotification *message);
+size_t cchat_room__message_reaction__notification__pack
+ (const CChatRoomMessageReactionNotification *message,
+ uint8_t *out);
+size_t cchat_room__message_reaction__notification__pack_to_buffer
+ (const CChatRoomMessageReactionNotification *message,
+ ProtobufCBuffer *buffer);
+CChatRoomMessageReactionNotification *
+ cchat_room__message_reaction__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_room__message_reaction__notification__free_unpacked
+ (CChatRoomMessageReactionNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_usability__client_usability_metrics__notification__get_packed_size
+ (const CChatUsabilityClientUsabilityMetricsNotification *message);
+size_t cchat_usability__client_usability_metrics__notification__pack
+ (const CChatUsabilityClientUsabilityMetricsNotification *message,
+ uint8_t *out);
+size_t cchat_usability__client_usability_metrics__notification__pack_to_buffer
+ (const CChatUsabilityClientUsabilityMetricsNotification *message,
+ ProtobufCBuffer *buffer);
+CChatUsabilityClientUsabilityMetricsNotification *
+ cchat_usability__client_usability_metrics__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_usability__client_usability_metrics__notification__free_unpacked
+ (CChatUsabilityClientUsabilityMetricsNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cchat_usability__request_client_usability_metrics__notification__get_packed_size
+ (const CChatUsabilityRequestClientUsabilityMetricsNotification *message);
+size_t cchat_usability__request_client_usability_metrics__notification__pack
+ (const CChatUsabilityRequestClientUsabilityMetricsNotification *message,
+ uint8_t *out);
+size_t cchat_usability__request_client_usability_metrics__notification__pack_to_buffer
+ (const CChatUsabilityRequestClientUsabilityMetricsNotification *message,
+ ProtobufCBuffer *buffer);
+CChatUsabilityRequestClientUsabilityMetricsNotification *
+ cchat_usability__request_client_usability_metrics__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cchat_usability__request_client_usability_metrics__notification__free_unpacked
+ (CChatUsabilityRequestClientUsabilityMetricsNotification *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*CChatRequestFriendPersonaStatesRequest_Closure)
+ (const CChatRequestFriendPersonaStatesRequest *message,
+ void *closure_data);
+typedef void (*CChatRequestFriendPersonaStatesResponse_Closure)
+ (const CChatRequestFriendPersonaStatesResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomCreateChatRoomGroupRequest_Closure)
+ (const CChatRoomCreateChatRoomGroupRequest *message,
+ void *closure_data);
+typedef void (*CChatRole_Closure)
+ (const CChatRole *message,
+ void *closure_data);
+typedef void (*CChatRoleActions_Closure)
+ (const CChatRoleActions *message,
+ void *closure_data);
+typedef void (*CChatPartyBeacon_Closure)
+ (const CChatPartyBeacon *message,
+ void *closure_data);
+typedef void (*CChatRoomGroupHeaderState_Closure)
+ (const CChatRoomGroupHeaderState *message,
+ void *closure_data);
+typedef void (*CChatRoomMember_Closure)
+ (const CChatRoomMember *message,
+ void *closure_data);
+typedef void (*CChatRoomState_Closure)
+ (const CChatRoomState *message,
+ void *closure_data);
+typedef void (*CChatRoomGroupState_Closure)
+ (const CChatRoomGroupState *message,
+ void *closure_data);
+typedef void (*CUserChatRoomState_Closure)
+ (const CUserChatRoomState *message,
+ void *closure_data);
+typedef void (*CUserChatRoomGroupState_Closure)
+ (const CUserChatRoomGroupState *message,
+ void *closure_data);
+typedef void (*CChatRoomCreateChatRoomGroupResponse_Closure)
+ (const CChatRoomCreateChatRoomGroupResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomSaveChatRoomGroupRequest_Closure)
+ (const CChatRoomSaveChatRoomGroupRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomSaveChatRoomGroupResponse_Closure)
+ (const CChatRoomSaveChatRoomGroupResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomRenameChatRoomGroupRequest_Closure)
+ (const CChatRoomRenameChatRoomGroupRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomRenameChatRoomGroupResponse_Closure)
+ (const CChatRoomRenameChatRoomGroupResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomSetChatRoomGroupTaglineRequest_Closure)
+ (const CChatRoomSetChatRoomGroupTaglineRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomSetChatRoomGroupTaglineResponse_Closure)
+ (const CChatRoomSetChatRoomGroupTaglineResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomSetChatRoomGroupAvatarRequest_Closure)
+ (const CChatRoomSetChatRoomGroupAvatarRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomSetChatRoomGroupAvatarResponse_Closure)
+ (const CChatRoomSetChatRoomGroupAvatarResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomSetChatRoomGroupWatchingBroadcastRequest_Closure)
+ (const CChatRoomSetChatRoomGroupWatchingBroadcastRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomSetChatRoomGroupWatchingBroadcastResponse_Closure)
+ (const CChatRoomSetChatRoomGroupWatchingBroadcastResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomJoinMiniGameForChatRoomGroupRequest_Closure)
+ (const CChatRoomJoinMiniGameForChatRoomGroupRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomJoinMiniGameForChatRoomGroupResponse_Closure)
+ (const CChatRoomJoinMiniGameForChatRoomGroupResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomEndMiniGameForChatRoomGroupRequest_Closure)
+ (const CChatRoomEndMiniGameForChatRoomGroupRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomEndMiniGameForChatRoomGroupResponse_Closure)
+ (const CChatRoomEndMiniGameForChatRoomGroupResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomMuteUserRequest_Closure)
+ (const CChatRoomMuteUserRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomMuteUserResponse_Closure)
+ (const CChatRoomMuteUserResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomKickUserRequest_Closure)
+ (const CChatRoomKickUserRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomKickUserResponse_Closure)
+ (const CChatRoomKickUserResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomSetUserBanStateRequest_Closure)
+ (const CChatRoomSetUserBanStateRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomSetUserBanStateResponse_Closure)
+ (const CChatRoomSetUserBanStateResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomRevokeInviteRequest_Closure)
+ (const CChatRoomRevokeInviteRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomRevokeInviteResponse_Closure)
+ (const CChatRoomRevokeInviteResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomCreateRoleRequest_Closure)
+ (const CChatRoomCreateRoleRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomCreateRoleResponse_Closure)
+ (const CChatRoomCreateRoleResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomGetRolesRequest_Closure)
+ (const CChatRoomGetRolesRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomGetRolesResponse_Closure)
+ (const CChatRoomGetRolesResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomRenameRoleRequest_Closure)
+ (const CChatRoomRenameRoleRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomRenameRoleResponse_Closure)
+ (const CChatRoomRenameRoleResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomReorderRoleRequest_Closure)
+ (const CChatRoomReorderRoleRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomReorderRoleResponse_Closure)
+ (const CChatRoomReorderRoleResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomDeleteRoleRequest_Closure)
+ (const CChatRoomDeleteRoleRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomDeleteRoleResponse_Closure)
+ (const CChatRoomDeleteRoleResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomGetRoleActionsRequest_Closure)
+ (const CChatRoomGetRoleActionsRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomGetRoleActionsResponse_Closure)
+ (const CChatRoomGetRoleActionsResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomReplaceRoleActionsRequest_Closure)
+ (const CChatRoomReplaceRoleActionsRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomReplaceRoleActionsResponse_Closure)
+ (const CChatRoomReplaceRoleActionsResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomAddRoleToUserRequest_Closure)
+ (const CChatRoomAddRoleToUserRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomAddRoleToUserResponse_Closure)
+ (const CChatRoomAddRoleToUserResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomGetRolesForUserRequest_Closure)
+ (const CChatRoomGetRolesForUserRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomGetRolesForUserResponse_Closure)
+ (const CChatRoomGetRolesForUserResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomDeleteRoleFromUserRequest_Closure)
+ (const CChatRoomDeleteRoleFromUserRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomDeleteRoleFromUserResponse_Closure)
+ (const CChatRoomDeleteRoleFromUserResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomJoinChatRoomGroupRequest_Closure)
+ (const CChatRoomJoinChatRoomGroupRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomJoinChatRoomGroupResponse_Closure)
+ (const CChatRoomJoinChatRoomGroupResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomInviteFriendToChatRoomGroupRequest_Closure)
+ (const CChatRoomInviteFriendToChatRoomGroupRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomInviteFriendToChatRoomGroupResponse_Closure)
+ (const CChatRoomInviteFriendToChatRoomGroupResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomLeaveChatRoomGroupRequest_Closure)
+ (const CChatRoomLeaveChatRoomGroupRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomLeaveChatRoomGroupResponse_Closure)
+ (const CChatRoomLeaveChatRoomGroupResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomCreateChatRoomRequest_Closure)
+ (const CChatRoomCreateChatRoomRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomCreateChatRoomResponse_Closure)
+ (const CChatRoomCreateChatRoomResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomDeleteChatRoomRequest_Closure)
+ (const CChatRoomDeleteChatRoomRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomDeleteChatRoomResponse_Closure)
+ (const CChatRoomDeleteChatRoomResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomRenameChatRoomRequest_Closure)
+ (const CChatRoomRenameChatRoomRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomRenameChatRoomResponse_Closure)
+ (const CChatRoomRenameChatRoomResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomReorderChatRoomRequest_Closure)
+ (const CChatRoomReorderChatRoomRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomReorderChatRoomResponse_Closure)
+ (const CChatRoomReorderChatRoomResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomSendChatMessageRequest_Closure)
+ (const CChatRoomSendChatMessageRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomSendChatMessageResponse_Closure)
+ (const CChatRoomSendChatMessageResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomJoinVoiceChatRequest_Closure)
+ (const CChatRoomJoinVoiceChatRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomJoinVoiceChatResponse_Closure)
+ (const CChatRoomJoinVoiceChatResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomLeaveVoiceChatRequest_Closure)
+ (const CChatRoomLeaveVoiceChatRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomLeaveVoiceChatResponse_Closure)
+ (const CChatRoomLeaveVoiceChatResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomGetMessageHistoryRequest_Closure)
+ (const CChatRoomGetMessageHistoryRequest *message,
+ void *closure_data);
+typedef void (*ServerMessage_Closure)
+ (const ServerMessage *message,
+ void *closure_data);
+typedef void (*CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction_Closure)
+ (const CChatRoomGetMessageHistoryResponse__ChatMessage__MessageReaction *message,
+ void *closure_data);
+typedef void (*CChatRoomGetMessageHistoryResponse__ChatMessage_Closure)
+ (const CChatRoomGetMessageHistoryResponse__ChatMessage *message,
+ void *closure_data);
+typedef void (*CChatRoomGetMessageHistoryResponse_Closure)
+ (const CChatRoomGetMessageHistoryResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomGetMyChatRoomGroupsRequest_Closure)
+ (const CChatRoomGetMyChatRoomGroupsRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomGetChatRoomGroupSummaryResponse_Closure)
+ (const CChatRoomGetChatRoomGroupSummaryResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomSummaryPair_Closure)
+ (const CChatRoomSummaryPair *message,
+ void *closure_data);
+typedef void (*CChatRoomGetMyChatRoomGroupsResponse_Closure)
+ (const CChatRoomGetMyChatRoomGroupsResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomGetChatRoomGroupStateRequest_Closure)
+ (const CChatRoomGetChatRoomGroupStateRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomGetChatRoomGroupStateResponse_Closure)
+ (const CChatRoomGetChatRoomGroupStateResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomGetChatRoomGroupSummaryRequest_Closure)
+ (const CChatRoomGetChatRoomGroupSummaryRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomSetAppChatRoomGroupForceActiveRequest_Closure)
+ (const CChatRoomSetAppChatRoomGroupForceActiveRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomSetAppChatRoomGroupForceActiveResponse_Closure)
+ (const CChatRoomSetAppChatRoomGroupForceActiveResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomSetAppChatRoomGroupStopForceActiveNotification_Closure)
+ (const CChatRoomSetAppChatRoomGroupStopForceActiveNotification *message,
+ void *closure_data);
+typedef void (*CChatRoomAckChatMessageNotification_Closure)
+ (const CChatRoomAckChatMessageNotification *message,
+ void *closure_data);
+typedef void (*CChatRoomCreateInviteLinkRequest_Closure)
+ (const CChatRoomCreateInviteLinkRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomCreateInviteLinkResponse_Closure)
+ (const CChatRoomCreateInviteLinkResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomGetInviteLinkInfoRequest_Closure)
+ (const CChatRoomGetInviteLinkInfoRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomGetInviteLinkInfoResponse_Closure)
+ (const CChatRoomGetInviteLinkInfoResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomGetInviteInfoRequest_Closure)
+ (const CChatRoomGetInviteInfoRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomGetInviteInfoResponse_Closure)
+ (const CChatRoomGetInviteInfoResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomGetInviteLinksForGroupRequest_Closure)
+ (const CChatRoomGetInviteLinksForGroupRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomGetInviteLinksForGroupResponse__LinkInfo_Closure)
+ (const CChatRoomGetInviteLinksForGroupResponse__LinkInfo *message,
+ void *closure_data);
+typedef void (*CChatRoomGetInviteLinksForGroupResponse_Closure)
+ (const CChatRoomGetInviteLinksForGroupResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomGetBanListRequest_Closure)
+ (const CChatRoomGetBanListRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomGetBanListResponse__BanInfo_Closure)
+ (const CChatRoomGetBanListResponse__BanInfo *message,
+ void *closure_data);
+typedef void (*CChatRoomGetBanListResponse_Closure)
+ (const CChatRoomGetBanListResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomGetInviteListRequest_Closure)
+ (const CChatRoomGetInviteListRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomGroupInvite_Closure)
+ (const CChatRoomGroupInvite *message,
+ void *closure_data);
+typedef void (*CChatRoomGetInviteListResponse_Closure)
+ (const CChatRoomGetInviteListResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomDeleteInviteLinkRequest_Closure)
+ (const CChatRoomDeleteInviteLinkRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomDeleteInviteLinkResponse_Closure)
+ (const CChatRoomDeleteInviteLinkResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomSetSessionActiveChatRoomGroupsRequest_Closure)
+ (const CChatRoomSetSessionActiveChatRoomGroupsRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomSetSessionActiveChatRoomGroupsResponse_Closure)
+ (const CChatRoomSetSessionActiveChatRoomGroupsResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomSetUserChatGroupPreferencesRequest__ChatGroupPreferences_Closure)
+ (const CChatRoomSetUserChatGroupPreferencesRequest__ChatGroupPreferences *message,
+ void *closure_data);
+typedef void (*CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences_Closure)
+ (const CChatRoomSetUserChatGroupPreferencesRequest__ChatRoomPreferences *message,
+ void *closure_data);
+typedef void (*CChatRoomSetUserChatGroupPreferencesRequest_Closure)
+ (const CChatRoomSetUserChatGroupPreferencesRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomSetUserChatGroupPreferencesResponse_Closure)
+ (const CChatRoomSetUserChatGroupPreferencesResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomDeleteChatMessagesRequest__Message_Closure)
+ (const CChatRoomDeleteChatMessagesRequest__Message *message,
+ void *closure_data);
+typedef void (*CChatRoomDeleteChatMessagesRequest_Closure)
+ (const CChatRoomDeleteChatMessagesRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomDeleteChatMessagesResponse_Closure)
+ (const CChatRoomDeleteChatMessagesResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomUpdateMemberListViewNotification_Closure)
+ (const CChatRoomUpdateMemberListViewNotification *message,
+ void *closure_data);
+typedef void (*CChatRoomSearchMembersRequest_Closure)
+ (const CChatRoomSearchMembersRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomSearchMembersResponse__MemberMatch_Closure)
+ (const CChatRoomSearchMembersResponse__MemberMatch *message,
+ void *closure_data);
+typedef void (*CChatRoomSearchMembersResponse_Closure)
+ (const CChatRoomSearchMembersResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomUpdateMessageReactionRequest_Closure)
+ (const CChatRoomUpdateMessageReactionRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomUpdateMessageReactionResponse_Closure)
+ (const CChatRoomUpdateMessageReactionResponse *message,
+ void *closure_data);
+typedef void (*CChatRoomGetMessageReactionReactorsRequest_Closure)
+ (const CChatRoomGetMessageReactionReactorsRequest *message,
+ void *closure_data);
+typedef void (*CChatRoomGetMessageReactionReactorsResponse_Closure)
+ (const CChatRoomGetMessageReactionReactorsResponse *message,
+ void *closure_data);
+typedef void (*CClanChatRoomsGetClanChatRoomInfoRequest_Closure)
+ (const CClanChatRoomsGetClanChatRoomInfoRequest *message,
+ void *closure_data);
+typedef void (*CClanChatRoomsGetClanChatRoomInfoResponse_Closure)
+ (const CClanChatRoomsGetClanChatRoomInfoResponse *message,
+ void *closure_data);
+typedef void (*CClanChatRoomsSetClanChatRoomPrivateRequest_Closure)
+ (const CClanChatRoomsSetClanChatRoomPrivateRequest *message,
+ void *closure_data);
+typedef void (*CClanChatRoomsSetClanChatRoomPrivateResponse_Closure)
+ (const CClanChatRoomsSetClanChatRoomPrivateResponse *message,
+ void *closure_data);
+typedef void (*CChatMentions_Closure)
+ (const CChatMentions *message,
+ void *closure_data);
+typedef void (*CChatRoomIncomingChatMessageNotification_Closure)
+ (const CChatRoomIncomingChatMessageNotification *message,
+ void *closure_data);
+typedef void (*CChatRoomChatMessageModifiedNotification__ChatMessage_Closure)
+ (const CChatRoomChatMessageModifiedNotification__ChatMessage *message,
+ void *closure_data);
+typedef void (*CChatRoomChatMessageModifiedNotification_Closure)
+ (const CChatRoomChatMessageModifiedNotification *message,
+ void *closure_data);
+typedef void (*CChatRoomMemberStateChangeNotification_Closure)
+ (const CChatRoomMemberStateChangeNotification *message,
+ void *closure_data);
+typedef void (*CChatRoomChatRoomHeaderStateNotification_Closure)
+ (const CChatRoomChatRoomHeaderStateNotification *message,
+ void *closure_data);
+typedef void (*CChatRoomChatRoomGroupRoomsChangeNotification_Closure)
+ (const CChatRoomChatRoomGroupRoomsChangeNotification *message,
+ void *closure_data);
+typedef void (*CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification_Closure)
+ (const CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *message,
+ void *closure_data);
+typedef void (*ChatRoomClientNotifyChatGroupUserStateChangedNotification_Closure)
+ (const ChatRoomClientNotifyChatGroupUserStateChangedNotification *message,
+ void *closure_data);
+typedef void (*ChatRoomClientNotifyChatRoomDisconnectNotification_Closure)
+ (const ChatRoomClientNotifyChatRoomDisconnectNotification *message,
+ void *closure_data);
+typedef void (*CChatRoomMemberListView_Closure)
+ (const CChatRoomMemberListView *message,
+ void *closure_data);
+typedef void (*CChatRoomMemberSummaryCounts_Closure)
+ (const CChatRoomMemberSummaryCounts *message,
+ void *closure_data);
+typedef void (*CChatRoomClientMemberListViewUpdatedNotification__MemberListViewEntry_Closure)
+ (const CChatRoomClientMemberListViewUpdatedNotification__MemberListViewEntry *message,
+ void *closure_data);
+typedef void (*CChatRoomClientMemberListViewUpdatedNotification_Closure)
+ (const CChatRoomClientMemberListViewUpdatedNotification *message,
+ void *closure_data);
+typedef void (*CChatRoomMessageReactionNotification_Closure)
+ (const CChatRoomMessageReactionNotification *message,
+ void *closure_data);
+typedef void (*CChatUsabilityClientUsabilityMetricsNotification__Settings_Closure)
+ (const CChatUsabilityClientUsabilityMetricsNotification__Settings *message,
+ void *closure_data);
+typedef void (*CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings_Closure)
+ (const CChatUsabilityClientUsabilityMetricsNotification__VoiceSettings *message,
+ void *closure_data);
+typedef void (*CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState_Closure)
+ (const CChatUsabilityClientUsabilityMetricsNotification__UIState__CategoryCollapseState *message,
+ void *closure_data);
+typedef void (*CChatUsabilityClientUsabilityMetricsNotification__UIState_Closure)
+ (const CChatUsabilityClientUsabilityMetricsNotification__UIState *message,
+ void *closure_data);
+typedef void (*CChatUsabilityClientUsabilityMetricsNotification__Metrics_Closure)
+ (const CChatUsabilityClientUsabilityMetricsNotification__Metrics *message,
+ void *closure_data);
+typedef void (*CChatUsabilityClientUsabilityMetricsNotification_Closure)
+ (const CChatUsabilityClientUsabilityMetricsNotification *message,
+ void *closure_data);
+typedef void (*CChatUsabilityRequestClientUsabilityMetricsNotification_Closure)
+ (const CChatUsabilityRequestClientUsabilityMetricsNotification *message,
+ void *closure_data);
+
+/* --- services --- */
+
+typedef struct Chat_Service Chat_Service;
+struct Chat_Service
+{
+ ProtobufCService base;
+ void (*request_friend_persona_states)(Chat_Service *service,
+ const CChatRequestFriendPersonaStatesRequest *input,
+ CChatRequestFriendPersonaStatesResponse_Closure closure,
+ void *closure_data);
+};
+typedef void (*Chat_ServiceDestroy)(Chat_Service *);
+void chat__init (Chat_Service *service,
+ Chat_ServiceDestroy destroy);
+#define CHAT__BASE_INIT \
+ { &chat__descriptor, protobuf_c_service_invoke_internal, NULL }
+#define CHAT__INIT(function_prefix__) \
+ { CHAT__BASE_INIT,\
+ function_prefix__ ## request_friend_persona_states }
+void chat__request_friend_persona_states(ProtobufCService *service,
+ const CChatRequestFriendPersonaStatesRequest *input,
+ CChatRequestFriendPersonaStatesResponse_Closure closure,
+ void *closure_data);
+typedef struct ChatRoom_Service ChatRoom_Service;
+struct ChatRoom_Service
+{
+ ProtobufCService base;
+ void (*create_chat_room_group)(ChatRoom_Service *service,
+ const CChatRoomCreateChatRoomGroupRequest *input,
+ CChatRoomCreateChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+ void (*save_chat_room_group)(ChatRoom_Service *service,
+ const CChatRoomSaveChatRoomGroupRequest *input,
+ CChatRoomSaveChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+ void (*rename_chat_room_group)(ChatRoom_Service *service,
+ const CChatRoomRenameChatRoomGroupRequest *input,
+ CChatRoomRenameChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+ void (*set_chat_room_group_tagline)(ChatRoom_Service *service,
+ const CChatRoomSetChatRoomGroupTaglineRequest *input,
+ CChatRoomSetChatRoomGroupTaglineResponse_Closure closure,
+ void *closure_data);
+ void (*set_chat_room_group_avatar)(ChatRoom_Service *service,
+ const CChatRoomSetChatRoomGroupAvatarRequest *input,
+ CChatRoomSetChatRoomGroupAvatarResponse_Closure closure,
+ void *closure_data);
+ void (*set_chat_room_group_watching_broadcast)(ChatRoom_Service *service,
+ const CChatRoomSetChatRoomGroupWatchingBroadcastRequest *input,
+ CChatRoomSetChatRoomGroupWatchingBroadcastResponse_Closure closure,
+ void *closure_data);
+ void (*join_mini_game_for_chat_room_group)(ChatRoom_Service *service,
+ const CChatRoomJoinMiniGameForChatRoomGroupRequest *input,
+ CChatRoomJoinMiniGameForChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+ void (*end_mini_game_for_chat_room_group)(ChatRoom_Service *service,
+ const CChatRoomEndMiniGameForChatRoomGroupRequest *input,
+ CChatRoomEndMiniGameForChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+ void (*mute_user_in_group)(ChatRoom_Service *service,
+ const CChatRoomMuteUserRequest *input,
+ CChatRoomMuteUserResponse_Closure closure,
+ void *closure_data);
+ void (*kick_user_from_group)(ChatRoom_Service *service,
+ const CChatRoomKickUserRequest *input,
+ CChatRoomKickUserResponse_Closure closure,
+ void *closure_data);
+ void (*set_user_ban_state)(ChatRoom_Service *service,
+ const CChatRoomSetUserBanStateRequest *input,
+ CChatRoomSetUserBanStateResponse_Closure closure,
+ void *closure_data);
+ void (*revoke_invite_to_group)(ChatRoom_Service *service,
+ const CChatRoomRevokeInviteRequest *input,
+ CChatRoomRevokeInviteResponse_Closure closure,
+ void *closure_data);
+ void (*create_role)(ChatRoom_Service *service,
+ const CChatRoomCreateRoleRequest *input,
+ CChatRoomCreateRoleResponse_Closure closure,
+ void *closure_data);
+ void (*get_roles)(ChatRoom_Service *service,
+ const CChatRoomGetRolesRequest *input,
+ CChatRoomGetRolesResponse_Closure closure,
+ void *closure_data);
+ void (*rename_role)(ChatRoom_Service *service,
+ const CChatRoomRenameRoleRequest *input,
+ CChatRoomRenameRoleResponse_Closure closure,
+ void *closure_data);
+ void (*reorder_role)(ChatRoom_Service *service,
+ const CChatRoomReorderRoleRequest *input,
+ CChatRoomReorderRoleResponse_Closure closure,
+ void *closure_data);
+ void (*delete_role)(ChatRoom_Service *service,
+ const CChatRoomDeleteRoleRequest *input,
+ CChatRoomDeleteRoleResponse_Closure closure,
+ void *closure_data);
+ void (*get_role_actions)(ChatRoom_Service *service,
+ const CChatRoomGetRoleActionsRequest *input,
+ CChatRoomGetRoleActionsResponse_Closure closure,
+ void *closure_data);
+ void (*replace_role_actions)(ChatRoom_Service *service,
+ const CChatRoomReplaceRoleActionsRequest *input,
+ CChatRoomReplaceRoleActionsResponse_Closure closure,
+ void *closure_data);
+ void (*add_role_to_user)(ChatRoom_Service *service,
+ const CChatRoomAddRoleToUserRequest *input,
+ CChatRoomAddRoleToUserResponse_Closure closure,
+ void *closure_data);
+ void (*get_roles_for_user)(ChatRoom_Service *service,
+ const CChatRoomGetRolesForUserRequest *input,
+ CChatRoomGetRolesForUserResponse_Closure closure,
+ void *closure_data);
+ void (*delete_role_from_user)(ChatRoom_Service *service,
+ const CChatRoomDeleteRoleFromUserRequest *input,
+ CChatRoomDeleteRoleFromUserResponse_Closure closure,
+ void *closure_data);
+ void (*join_chat_room_group)(ChatRoom_Service *service,
+ const CChatRoomJoinChatRoomGroupRequest *input,
+ CChatRoomJoinChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+ void (*invite_friend_to_chat_room_group)(ChatRoom_Service *service,
+ const CChatRoomInviteFriendToChatRoomGroupRequest *input,
+ CChatRoomInviteFriendToChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+ void (*leave_chat_room_group)(ChatRoom_Service *service,
+ const CChatRoomLeaveChatRoomGroupRequest *input,
+ CChatRoomLeaveChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+ void (*create_chat_room)(ChatRoom_Service *service,
+ const CChatRoomCreateChatRoomRequest *input,
+ CChatRoomCreateChatRoomResponse_Closure closure,
+ void *closure_data);
+ void (*delete_chat_room)(ChatRoom_Service *service,
+ const CChatRoomDeleteChatRoomRequest *input,
+ CChatRoomDeleteChatRoomResponse_Closure closure,
+ void *closure_data);
+ void (*rename_chat_room)(ChatRoom_Service *service,
+ const CChatRoomRenameChatRoomRequest *input,
+ CChatRoomRenameChatRoomResponse_Closure closure,
+ void *closure_data);
+ void (*reorder_chat_room)(ChatRoom_Service *service,
+ const CChatRoomReorderChatRoomRequest *input,
+ CChatRoomReorderChatRoomResponse_Closure closure,
+ void *closure_data);
+ void (*send_chat_message)(ChatRoom_Service *service,
+ const CChatRoomSendChatMessageRequest *input,
+ CChatRoomSendChatMessageResponse_Closure closure,
+ void *closure_data);
+ void (*join_voice_chat)(ChatRoom_Service *service,
+ const CChatRoomJoinVoiceChatRequest *input,
+ CChatRoomJoinVoiceChatResponse_Closure closure,
+ void *closure_data);
+ void (*leave_voice_chat)(ChatRoom_Service *service,
+ const CChatRoomLeaveVoiceChatRequest *input,
+ CChatRoomLeaveVoiceChatResponse_Closure closure,
+ void *closure_data);
+ void (*get_message_history)(ChatRoom_Service *service,
+ const CChatRoomGetMessageHistoryRequest *input,
+ CChatRoomGetMessageHistoryResponse_Closure closure,
+ void *closure_data);
+ void (*get_my_chat_room_groups)(ChatRoom_Service *service,
+ const CChatRoomGetMyChatRoomGroupsRequest *input,
+ CChatRoomGetMyChatRoomGroupsResponse_Closure closure,
+ void *closure_data);
+ void (*get_chat_room_group_state)(ChatRoom_Service *service,
+ const CChatRoomGetChatRoomGroupStateRequest *input,
+ CChatRoomGetChatRoomGroupStateResponse_Closure closure,
+ void *closure_data);
+ void (*get_chat_room_group_summary)(ChatRoom_Service *service,
+ const CChatRoomGetChatRoomGroupSummaryRequest *input,
+ CChatRoomGetChatRoomGroupSummaryResponse_Closure closure,
+ void *closure_data);
+ void (*set_app_chat_room_group_force_active)(ChatRoom_Service *service,
+ const CChatRoomSetAppChatRoomGroupForceActiveRequest *input,
+ CChatRoomSetAppChatRoomGroupForceActiveResponse_Closure closure,
+ void *closure_data);
+ void (*set_app_chat_room_group_stop_force_active)(ChatRoom_Service *service,
+ const CChatRoomSetAppChatRoomGroupStopForceActiveNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*ack_chat_message)(ChatRoom_Service *service,
+ const CChatRoomAckChatMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*create_invite_link)(ChatRoom_Service *service,
+ const CChatRoomCreateInviteLinkRequest *input,
+ CChatRoomCreateInviteLinkResponse_Closure closure,
+ void *closure_data);
+ void (*get_invite_link_info)(ChatRoom_Service *service,
+ const CChatRoomGetInviteLinkInfoRequest *input,
+ CChatRoomGetInviteLinkInfoResponse_Closure closure,
+ void *closure_data);
+ void (*get_invite_info)(ChatRoom_Service *service,
+ const CChatRoomGetInviteInfoRequest *input,
+ CChatRoomGetInviteInfoResponse_Closure closure,
+ void *closure_data);
+ void (*get_invite_links_for_group)(ChatRoom_Service *service,
+ const CChatRoomGetInviteLinksForGroupRequest *input,
+ CChatRoomGetInviteLinksForGroupResponse_Closure closure,
+ void *closure_data);
+ void (*get_ban_list)(ChatRoom_Service *service,
+ const CChatRoomGetBanListRequest *input,
+ CChatRoomGetBanListResponse_Closure closure,
+ void *closure_data);
+ void (*get_invite_list)(ChatRoom_Service *service,
+ const CChatRoomGetInviteListRequest *input,
+ CChatRoomGetInviteListResponse_Closure closure,
+ void *closure_data);
+ void (*delete_invite_link)(ChatRoom_Service *service,
+ const CChatRoomDeleteInviteLinkRequest *input,
+ CChatRoomDeleteInviteLinkResponse_Closure closure,
+ void *closure_data);
+ void (*set_session_active_chat_room_groups)(ChatRoom_Service *service,
+ const CChatRoomSetSessionActiveChatRoomGroupsRequest *input,
+ CChatRoomSetSessionActiveChatRoomGroupsResponse_Closure closure,
+ void *closure_data);
+ void (*set_user_chat_group_preferences)(ChatRoom_Service *service,
+ const CChatRoomSetUserChatGroupPreferencesRequest *input,
+ CChatRoomSetUserChatGroupPreferencesResponse_Closure closure,
+ void *closure_data);
+ void (*delete_chat_messages)(ChatRoom_Service *service,
+ const CChatRoomDeleteChatMessagesRequest *input,
+ CChatRoomDeleteChatMessagesResponse_Closure closure,
+ void *closure_data);
+ void (*update_member_list_view)(ChatRoom_Service *service,
+ const CChatRoomUpdateMemberListViewNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*search_members)(ChatRoom_Service *service,
+ const CChatRoomSearchMembersRequest *input,
+ CChatRoomSearchMembersResponse_Closure closure,
+ void *closure_data);
+ void (*update_message_reaction)(ChatRoom_Service *service,
+ const CChatRoomUpdateMessageReactionRequest *input,
+ CChatRoomUpdateMessageReactionResponse_Closure closure,
+ void *closure_data);
+ void (*get_message_reaction_reactors)(ChatRoom_Service *service,
+ const CChatRoomGetMessageReactionReactorsRequest *input,
+ CChatRoomGetMessageReactionReactorsResponse_Closure closure,
+ void *closure_data);
+};
+typedef void (*ChatRoom_ServiceDestroy)(ChatRoom_Service *);
+void chat_room__init (ChatRoom_Service *service,
+ ChatRoom_ServiceDestroy destroy);
+#define CHAT_ROOM__BASE_INIT \
+ { &chat_room__descriptor, protobuf_c_service_invoke_internal, NULL }
+#define CHAT_ROOM__INIT(function_prefix__) \
+ { CHAT_ROOM__BASE_INIT,\
+ function_prefix__ ## create_chat_room_group,\
+ function_prefix__ ## save_chat_room_group,\
+ function_prefix__ ## rename_chat_room_group,\
+ function_prefix__ ## set_chat_room_group_tagline,\
+ function_prefix__ ## set_chat_room_group_avatar,\
+ function_prefix__ ## set_chat_room_group_watching_broadcast,\
+ function_prefix__ ## join_mini_game_for_chat_room_group,\
+ function_prefix__ ## end_mini_game_for_chat_room_group,\
+ function_prefix__ ## mute_user_in_group,\
+ function_prefix__ ## kick_user_from_group,\
+ function_prefix__ ## set_user_ban_state,\
+ function_prefix__ ## revoke_invite_to_group,\
+ function_prefix__ ## create_role,\
+ function_prefix__ ## get_roles,\
+ function_prefix__ ## rename_role,\
+ function_prefix__ ## reorder_role,\
+ function_prefix__ ## delete_role,\
+ function_prefix__ ## get_role_actions,\
+ function_prefix__ ## replace_role_actions,\
+ function_prefix__ ## add_role_to_user,\
+ function_prefix__ ## get_roles_for_user,\
+ function_prefix__ ## delete_role_from_user,\
+ function_prefix__ ## join_chat_room_group,\
+ function_prefix__ ## invite_friend_to_chat_room_group,\
+ function_prefix__ ## leave_chat_room_group,\
+ function_prefix__ ## create_chat_room,\
+ function_prefix__ ## delete_chat_room,\
+ function_prefix__ ## rename_chat_room,\
+ function_prefix__ ## reorder_chat_room,\
+ function_prefix__ ## send_chat_message,\
+ function_prefix__ ## join_voice_chat,\
+ function_prefix__ ## leave_voice_chat,\
+ function_prefix__ ## get_message_history,\
+ function_prefix__ ## get_my_chat_room_groups,\
+ function_prefix__ ## get_chat_room_group_state,\
+ function_prefix__ ## get_chat_room_group_summary,\
+ function_prefix__ ## set_app_chat_room_group_force_active,\
+ function_prefix__ ## set_app_chat_room_group_stop_force_active,\
+ function_prefix__ ## ack_chat_message,\
+ function_prefix__ ## create_invite_link,\
+ function_prefix__ ## get_invite_link_info,\
+ function_prefix__ ## get_invite_info,\
+ function_prefix__ ## get_invite_links_for_group,\
+ function_prefix__ ## get_ban_list,\
+ function_prefix__ ## get_invite_list,\
+ function_prefix__ ## delete_invite_link,\
+ function_prefix__ ## set_session_active_chat_room_groups,\
+ function_prefix__ ## set_user_chat_group_preferences,\
+ function_prefix__ ## delete_chat_messages,\
+ function_prefix__ ## update_member_list_view,\
+ function_prefix__ ## search_members,\
+ function_prefix__ ## update_message_reaction,\
+ function_prefix__ ## get_message_reaction_reactors }
+void chat_room__create_chat_room_group(ProtobufCService *service,
+ const CChatRoomCreateChatRoomGroupRequest *input,
+ CChatRoomCreateChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+void chat_room__save_chat_room_group(ProtobufCService *service,
+ const CChatRoomSaveChatRoomGroupRequest *input,
+ CChatRoomSaveChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+void chat_room__rename_chat_room_group(ProtobufCService *service,
+ const CChatRoomRenameChatRoomGroupRequest *input,
+ CChatRoomRenameChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+void chat_room__set_chat_room_group_tagline(ProtobufCService *service,
+ const CChatRoomSetChatRoomGroupTaglineRequest *input,
+ CChatRoomSetChatRoomGroupTaglineResponse_Closure closure,
+ void *closure_data);
+void chat_room__set_chat_room_group_avatar(ProtobufCService *service,
+ const CChatRoomSetChatRoomGroupAvatarRequest *input,
+ CChatRoomSetChatRoomGroupAvatarResponse_Closure closure,
+ void *closure_data);
+void chat_room__set_chat_room_group_watching_broadcast(ProtobufCService *service,
+ const CChatRoomSetChatRoomGroupWatchingBroadcastRequest *input,
+ CChatRoomSetChatRoomGroupWatchingBroadcastResponse_Closure closure,
+ void *closure_data);
+void chat_room__join_mini_game_for_chat_room_group(ProtobufCService *service,
+ const CChatRoomJoinMiniGameForChatRoomGroupRequest *input,
+ CChatRoomJoinMiniGameForChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+void chat_room__end_mini_game_for_chat_room_group(ProtobufCService *service,
+ const CChatRoomEndMiniGameForChatRoomGroupRequest *input,
+ CChatRoomEndMiniGameForChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+void chat_room__mute_user_in_group(ProtobufCService *service,
+ const CChatRoomMuteUserRequest *input,
+ CChatRoomMuteUserResponse_Closure closure,
+ void *closure_data);
+void chat_room__kick_user_from_group(ProtobufCService *service,
+ const CChatRoomKickUserRequest *input,
+ CChatRoomKickUserResponse_Closure closure,
+ void *closure_data);
+void chat_room__set_user_ban_state(ProtobufCService *service,
+ const CChatRoomSetUserBanStateRequest *input,
+ CChatRoomSetUserBanStateResponse_Closure closure,
+ void *closure_data);
+void chat_room__revoke_invite_to_group(ProtobufCService *service,
+ const CChatRoomRevokeInviteRequest *input,
+ CChatRoomRevokeInviteResponse_Closure closure,
+ void *closure_data);
+void chat_room__create_role(ProtobufCService *service,
+ const CChatRoomCreateRoleRequest *input,
+ CChatRoomCreateRoleResponse_Closure closure,
+ void *closure_data);
+void chat_room__get_roles(ProtobufCService *service,
+ const CChatRoomGetRolesRequest *input,
+ CChatRoomGetRolesResponse_Closure closure,
+ void *closure_data);
+void chat_room__rename_role(ProtobufCService *service,
+ const CChatRoomRenameRoleRequest *input,
+ CChatRoomRenameRoleResponse_Closure closure,
+ void *closure_data);
+void chat_room__reorder_role(ProtobufCService *service,
+ const CChatRoomReorderRoleRequest *input,
+ CChatRoomReorderRoleResponse_Closure closure,
+ void *closure_data);
+void chat_room__delete_role(ProtobufCService *service,
+ const CChatRoomDeleteRoleRequest *input,
+ CChatRoomDeleteRoleResponse_Closure closure,
+ void *closure_data);
+void chat_room__get_role_actions(ProtobufCService *service,
+ const CChatRoomGetRoleActionsRequest *input,
+ CChatRoomGetRoleActionsResponse_Closure closure,
+ void *closure_data);
+void chat_room__replace_role_actions(ProtobufCService *service,
+ const CChatRoomReplaceRoleActionsRequest *input,
+ CChatRoomReplaceRoleActionsResponse_Closure closure,
+ void *closure_data);
+void chat_room__add_role_to_user(ProtobufCService *service,
+ const CChatRoomAddRoleToUserRequest *input,
+ CChatRoomAddRoleToUserResponse_Closure closure,
+ void *closure_data);
+void chat_room__get_roles_for_user(ProtobufCService *service,
+ const CChatRoomGetRolesForUserRequest *input,
+ CChatRoomGetRolesForUserResponse_Closure closure,
+ void *closure_data);
+void chat_room__delete_role_from_user(ProtobufCService *service,
+ const CChatRoomDeleteRoleFromUserRequest *input,
+ CChatRoomDeleteRoleFromUserResponse_Closure closure,
+ void *closure_data);
+void chat_room__join_chat_room_group(ProtobufCService *service,
+ const CChatRoomJoinChatRoomGroupRequest *input,
+ CChatRoomJoinChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+void chat_room__invite_friend_to_chat_room_group(ProtobufCService *service,
+ const CChatRoomInviteFriendToChatRoomGroupRequest *input,
+ CChatRoomInviteFriendToChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+void chat_room__leave_chat_room_group(ProtobufCService *service,
+ const CChatRoomLeaveChatRoomGroupRequest *input,
+ CChatRoomLeaveChatRoomGroupResponse_Closure closure,
+ void *closure_data);
+void chat_room__create_chat_room(ProtobufCService *service,
+ const CChatRoomCreateChatRoomRequest *input,
+ CChatRoomCreateChatRoomResponse_Closure closure,
+ void *closure_data);
+void chat_room__delete_chat_room(ProtobufCService *service,
+ const CChatRoomDeleteChatRoomRequest *input,
+ CChatRoomDeleteChatRoomResponse_Closure closure,
+ void *closure_data);
+void chat_room__rename_chat_room(ProtobufCService *service,
+ const CChatRoomRenameChatRoomRequest *input,
+ CChatRoomRenameChatRoomResponse_Closure closure,
+ void *closure_data);
+void chat_room__reorder_chat_room(ProtobufCService *service,
+ const CChatRoomReorderChatRoomRequest *input,
+ CChatRoomReorderChatRoomResponse_Closure closure,
+ void *closure_data);
+void chat_room__send_chat_message(ProtobufCService *service,
+ const CChatRoomSendChatMessageRequest *input,
+ CChatRoomSendChatMessageResponse_Closure closure,
+ void *closure_data);
+void chat_room__join_voice_chat(ProtobufCService *service,
+ const CChatRoomJoinVoiceChatRequest *input,
+ CChatRoomJoinVoiceChatResponse_Closure closure,
+ void *closure_data);
+void chat_room__leave_voice_chat(ProtobufCService *service,
+ const CChatRoomLeaveVoiceChatRequest *input,
+ CChatRoomLeaveVoiceChatResponse_Closure closure,
+ void *closure_data);
+void chat_room__get_message_history(ProtobufCService *service,
+ const CChatRoomGetMessageHistoryRequest *input,
+ CChatRoomGetMessageHistoryResponse_Closure closure,
+ void *closure_data);
+void chat_room__get_my_chat_room_groups(ProtobufCService *service,
+ const CChatRoomGetMyChatRoomGroupsRequest *input,
+ CChatRoomGetMyChatRoomGroupsResponse_Closure closure,
+ void *closure_data);
+void chat_room__get_chat_room_group_state(ProtobufCService *service,
+ const CChatRoomGetChatRoomGroupStateRequest *input,
+ CChatRoomGetChatRoomGroupStateResponse_Closure closure,
+ void *closure_data);
+void chat_room__get_chat_room_group_summary(ProtobufCService *service,
+ const CChatRoomGetChatRoomGroupSummaryRequest *input,
+ CChatRoomGetChatRoomGroupSummaryResponse_Closure closure,
+ void *closure_data);
+void chat_room__set_app_chat_room_group_force_active(ProtobufCService *service,
+ const CChatRoomSetAppChatRoomGroupForceActiveRequest *input,
+ CChatRoomSetAppChatRoomGroupForceActiveResponse_Closure closure,
+ void *closure_data);
+void chat_room__set_app_chat_room_group_stop_force_active(ProtobufCService *service,
+ const CChatRoomSetAppChatRoomGroupStopForceActiveNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void chat_room__ack_chat_message(ProtobufCService *service,
+ const CChatRoomAckChatMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void chat_room__create_invite_link(ProtobufCService *service,
+ const CChatRoomCreateInviteLinkRequest *input,
+ CChatRoomCreateInviteLinkResponse_Closure closure,
+ void *closure_data);
+void chat_room__get_invite_link_info(ProtobufCService *service,
+ const CChatRoomGetInviteLinkInfoRequest *input,
+ CChatRoomGetInviteLinkInfoResponse_Closure closure,
+ void *closure_data);
+void chat_room__get_invite_info(ProtobufCService *service,
+ const CChatRoomGetInviteInfoRequest *input,
+ CChatRoomGetInviteInfoResponse_Closure closure,
+ void *closure_data);
+void chat_room__get_invite_links_for_group(ProtobufCService *service,
+ const CChatRoomGetInviteLinksForGroupRequest *input,
+ CChatRoomGetInviteLinksForGroupResponse_Closure closure,
+ void *closure_data);
+void chat_room__get_ban_list(ProtobufCService *service,
+ const CChatRoomGetBanListRequest *input,
+ CChatRoomGetBanListResponse_Closure closure,
+ void *closure_data);
+void chat_room__get_invite_list(ProtobufCService *service,
+ const CChatRoomGetInviteListRequest *input,
+ CChatRoomGetInviteListResponse_Closure closure,
+ void *closure_data);
+void chat_room__delete_invite_link(ProtobufCService *service,
+ const CChatRoomDeleteInviteLinkRequest *input,
+ CChatRoomDeleteInviteLinkResponse_Closure closure,
+ void *closure_data);
+void chat_room__set_session_active_chat_room_groups(ProtobufCService *service,
+ const CChatRoomSetSessionActiveChatRoomGroupsRequest *input,
+ CChatRoomSetSessionActiveChatRoomGroupsResponse_Closure closure,
+ void *closure_data);
+void chat_room__set_user_chat_group_preferences(ProtobufCService *service,
+ const CChatRoomSetUserChatGroupPreferencesRequest *input,
+ CChatRoomSetUserChatGroupPreferencesResponse_Closure closure,
+ void *closure_data);
+void chat_room__delete_chat_messages(ProtobufCService *service,
+ const CChatRoomDeleteChatMessagesRequest *input,
+ CChatRoomDeleteChatMessagesResponse_Closure closure,
+ void *closure_data);
+void chat_room__update_member_list_view(ProtobufCService *service,
+ const CChatRoomUpdateMemberListViewNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void chat_room__search_members(ProtobufCService *service,
+ const CChatRoomSearchMembersRequest *input,
+ CChatRoomSearchMembersResponse_Closure closure,
+ void *closure_data);
+void chat_room__update_message_reaction(ProtobufCService *service,
+ const CChatRoomUpdateMessageReactionRequest *input,
+ CChatRoomUpdateMessageReactionResponse_Closure closure,
+ void *closure_data);
+void chat_room__get_message_reaction_reactors(ProtobufCService *service,
+ const CChatRoomGetMessageReactionReactorsRequest *input,
+ CChatRoomGetMessageReactionReactorsResponse_Closure closure,
+ void *closure_data);
+typedef struct ClanChatRooms_Service ClanChatRooms_Service;
+struct ClanChatRooms_Service
+{
+ ProtobufCService base;
+ void (*get_clan_chat_room_info)(ClanChatRooms_Service *service,
+ const CClanChatRoomsGetClanChatRoomInfoRequest *input,
+ CClanChatRoomsGetClanChatRoomInfoResponse_Closure closure,
+ void *closure_data);
+ void (*set_clan_chat_room_private)(ClanChatRooms_Service *service,
+ const CClanChatRoomsSetClanChatRoomPrivateRequest *input,
+ CClanChatRoomsSetClanChatRoomPrivateResponse_Closure closure,
+ void *closure_data);
+};
+typedef void (*ClanChatRooms_ServiceDestroy)(ClanChatRooms_Service *);
+void clan_chat_rooms__init (ClanChatRooms_Service *service,
+ ClanChatRooms_ServiceDestroy destroy);
+#define CLAN_CHAT_ROOMS__BASE_INIT \
+ { &clan_chat_rooms__descriptor, protobuf_c_service_invoke_internal, NULL }
+#define CLAN_CHAT_ROOMS__INIT(function_prefix__) \
+ { CLAN_CHAT_ROOMS__BASE_INIT,\
+ function_prefix__ ## get_clan_chat_room_info,\
+ function_prefix__ ## set_clan_chat_room_private }
+void clan_chat_rooms__get_clan_chat_room_info(ProtobufCService *service,
+ const CClanChatRoomsGetClanChatRoomInfoRequest *input,
+ CClanChatRoomsGetClanChatRoomInfoResponse_Closure closure,
+ void *closure_data);
+void clan_chat_rooms__set_clan_chat_room_private(ProtobufCService *service,
+ const CClanChatRoomsSetClanChatRoomPrivateRequest *input,
+ CClanChatRoomsSetClanChatRoomPrivateResponse_Closure closure,
+ void *closure_data);
+typedef struct ChatRoomClient_Service ChatRoomClient_Service;
+struct ChatRoomClient_Service
+{
+ ProtobufCService base;
+ void (*notify_incoming_chat_message)(ChatRoomClient_Service *service,
+ const CChatRoomIncomingChatMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*notify_chat_message_modified)(ChatRoomClient_Service *service,
+ const CChatRoomChatMessageModifiedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*notify_member_state_change)(ChatRoomClient_Service *service,
+ const CChatRoomMemberStateChangeNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*notify_chat_room_header_state_change)(ChatRoomClient_Service *service,
+ const CChatRoomChatRoomHeaderStateNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*notify_chat_room_group_rooms_change)(ChatRoomClient_Service *service,
+ const CChatRoomChatRoomGroupRoomsChangeNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*notify_should_rejoin_chat_room_voice_chat)(ChatRoomClient_Service *service,
+ const CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*notify_chat_group_user_state_changed)(ChatRoomClient_Service *service,
+ const ChatRoomClientNotifyChatGroupUserStateChangedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*notify_ack_chat_message_echo)(ChatRoomClient_Service *service,
+ const CChatRoomAckChatMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*notify_chat_room_disconnect)(ChatRoomClient_Service *service,
+ const ChatRoomClientNotifyChatRoomDisconnectNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*notify_member_list_view_updated)(ChatRoomClient_Service *service,
+ const CChatRoomClientMemberListViewUpdatedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*notify_message_reaction)(ChatRoomClient_Service *service,
+ const CChatRoomMessageReactionNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+};
+typedef void (*ChatRoomClient_ServiceDestroy)(ChatRoomClient_Service *);
+void chat_room_client__init (ChatRoomClient_Service *service,
+ ChatRoomClient_ServiceDestroy destroy);
+#define CHAT_ROOM_CLIENT__BASE_INIT \
+ { &chat_room_client__descriptor, protobuf_c_service_invoke_internal, NULL }
+#define CHAT_ROOM_CLIENT__INIT(function_prefix__) \
+ { CHAT_ROOM_CLIENT__BASE_INIT,\
+ function_prefix__ ## notify_incoming_chat_message,\
+ function_prefix__ ## notify_chat_message_modified,\
+ function_prefix__ ## notify_member_state_change,\
+ function_prefix__ ## notify_chat_room_header_state_change,\
+ function_prefix__ ## notify_chat_room_group_rooms_change,\
+ function_prefix__ ## notify_should_rejoin_chat_room_voice_chat,\
+ function_prefix__ ## notify_chat_group_user_state_changed,\
+ function_prefix__ ## notify_ack_chat_message_echo,\
+ function_prefix__ ## notify_chat_room_disconnect,\
+ function_prefix__ ## notify_member_list_view_updated,\
+ function_prefix__ ## notify_message_reaction }
+void chat_room_client__notify_incoming_chat_message(ProtobufCService *service,
+ const CChatRoomIncomingChatMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void chat_room_client__notify_chat_message_modified(ProtobufCService *service,
+ const CChatRoomChatMessageModifiedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void chat_room_client__notify_member_state_change(ProtobufCService *service,
+ const CChatRoomMemberStateChangeNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void chat_room_client__notify_chat_room_header_state_change(ProtobufCService *service,
+ const CChatRoomChatRoomHeaderStateNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void chat_room_client__notify_chat_room_group_rooms_change(ProtobufCService *service,
+ const CChatRoomChatRoomGroupRoomsChangeNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void chat_room_client__notify_should_rejoin_chat_room_voice_chat(ProtobufCService *service,
+ const CChatRoomNotifyShouldRejoinChatRoomVoiceChatNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void chat_room_client__notify_chat_group_user_state_changed(ProtobufCService *service,
+ const ChatRoomClientNotifyChatGroupUserStateChangedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void chat_room_client__notify_ack_chat_message_echo(ProtobufCService *service,
+ const CChatRoomAckChatMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void chat_room_client__notify_chat_room_disconnect(ProtobufCService *service,
+ const ChatRoomClientNotifyChatRoomDisconnectNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void chat_room_client__notify_member_list_view_updated(ProtobufCService *service,
+ const CChatRoomClientMemberListViewUpdatedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void chat_room_client__notify_message_reaction(ProtobufCService *service,
+ const CChatRoomMessageReactionNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+typedef struct ChatUsability_Service ChatUsability_Service;
+struct ChatUsability_Service
+{
+ ProtobufCService base;
+ void (*notify_client_usability_metrics)(ChatUsability_Service *service,
+ const CChatUsabilityClientUsabilityMetricsNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+};
+typedef void (*ChatUsability_ServiceDestroy)(ChatUsability_Service *);
+void chat_usability__init (ChatUsability_Service *service,
+ ChatUsability_ServiceDestroy destroy);
+#define CHAT_USABILITY__BASE_INIT \
+ { &chat_usability__descriptor, protobuf_c_service_invoke_internal, NULL }
+#define CHAT_USABILITY__INIT(function_prefix__) \
+ { CHAT_USABILITY__BASE_INIT,\
+ function_prefix__ ## notify_client_usability_metrics }
+void chat_usability__notify_client_usability_metrics(ProtobufCService *service,
+ const CChatUsabilityClientUsabilityMetricsNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+typedef struct ChatUsabilityClient_Service ChatUsabilityClient_Service;
+struct ChatUsabilityClient_Service
+{
+ ProtobufCService base;
+ void (*notify_request_client_usability_metrics)(ChatUsabilityClient_Service *service,
+ const CChatUsabilityRequestClientUsabilityMetricsNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+};
+typedef void (*ChatUsabilityClient_ServiceDestroy)(ChatUsabilityClient_Service *);
+void chat_usability_client__init (ChatUsabilityClient_Service *service,
+ ChatUsabilityClient_ServiceDestroy destroy);
+#define CHAT_USABILITY_CLIENT__BASE_INIT \
+ { &chat_usability_client__descriptor, protobuf_c_service_invoke_internal, NULL }
+#define CHAT_USABILITY_CLIENT__INIT(function_prefix__) \
+ { CHAT_USABILITY_CLIENT__BASE_INIT,\
+ function_prefix__ ## notify_request_client_usability_metrics }
+void chat_usability_client__notify_request_client_usability_metrics(ProtobufCService *service,
+ const CChatUsabilityRequestClientUsabilityMetricsNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_steammessages_5fchat_2esteamclient_2eproto__INCLUDED */
diff --git a/protocols/Steam/src/protobuf-c/steammessages_chat.steamclient.proto b/protocols/Steam/src/protobuf-c/steammessages_chat.steamclient.proto
new file mode 100644
index 0000000000..150367ebe6
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_chat.steamclient.proto
@@ -0,0 +1,1281 @@
+import "steammessages_base.proto";
+import "steammessages_unified_base.steamclient.proto";
+import "steammessages_clientserver_friends.proto";
+
+option cc_generic_services = true;
+
+enum EChatRoomJoinState {
+ k_EChatRoomJoinState_Default = 0;
+ k_EChatRoomJoinState_None = 1;
+ k_EChatRoomJoinState_Joined = 2;
+ k_EChatRoomJoinState_TestInvalid = 99;
+}
+
+enum EChatRoomGroupRank {
+ k_EChatRoomGroupRank_Default = 0;
+ k_EChatRoomGroupRank_Viewer = 10;
+ k_EChatRoomGroupRank_Guest = 15;
+ k_EChatRoomGroupRank_Member = 20;
+ k_EChatRoomGroupRank_Moderator = 30;
+ k_EChatRoomGroupRank_Officer = 40;
+ k_EChatRoomGroupRank_Owner = 50;
+ k_EChatRoomGroupRank_TestInvalid = 99;
+}
+
+enum EChatRoomNotificationLevel {
+ k_EChatroomNotificationLevel_Invalid = 0;
+ k_EChatroomNotificationLevel_None = 1;
+ k_EChatroomNotificationLevel_MentionMe = 2;
+ k_EChatroomNotificationLevel_MentionAll = 3;
+ k_EChatroomNotificationLevel_AllMessages = 4;
+}
+
+enum EChatRoomServerMessage {
+ k_EChatRoomServerMsg_Invalid = 0;
+ k_EChatRoomServerMsg_RenameChatRoom = 1;
+ k_EChatRoomServerMsg_Joined = 2;
+ k_EChatRoomServerMsg_Parted = 3;
+ k_EChatRoomServerMsg_Kicked = 4;
+ k_EChatRoomServerMsg_Invited = 5;
+ k_EChatRoomServerMsg_InviteDismissed = 8;
+ k_EChatRoomServerMsg_ChatRoomTaglineChanged = 9;
+ k_EChatRoomServerMsg_ChatRoomAvatarChanged = 10;
+ k_EChatRoomServerMsg_AppCustom = 11;
+}
+
+enum EChatRoomMessageReactionType {
+ k_EChatRoomMessageReactionType_Invalid = 0;
+ k_EChatRoomMessageReactionType_Emoticon = 1;
+ k_EChatRoomMessageReactionType_Sticker = 2;
+}
+
+enum EChatRoomMemberStateChange {
+ k_EChatRoomMemberStateChange_Invalid = 0;
+ k_EChatRoomMemberStateChange_Joined = 1;
+ k_EChatRoomMemberStateChange_Parted = 2;
+ k_EChatRoomMemberStateChange_Kicked = 3;
+ k_EChatRoomMemberStateChange_Invited = 4;
+ k_EChatRoomMemberStateChange_RankChanged = 7;
+ k_EChatRoomMemberStateChange_InviteDismissed = 8;
+ k_EChatRoomMemberStateChange_Muted = 9;
+ k_EChatRoomMemberStateChange_Banned = 10;
+ k_EChatRoomMemberStateChange_RolesChanged = 12;
+}
+
+message CChat_RequestFriendPersonaStates_Request {
+}
+
+message CChat_RequestFriendPersonaStates_Response {
+}
+
+message CChatRoom_CreateChatRoomGroup_Request {
+ optional fixed64 steamid_partner = 1;
+ optional fixed64 steamid_invited = 2;
+ optional string name = 3;
+ repeated fixed64 steamid_invitees = 4;
+ optional uint32 watching_broadcast_accountid = 6;
+ optional uint64 watching_broadcast_channel_id = 7;
+}
+
+message CChatRole {
+ optional uint64 role_id = 1;
+ optional string name = 2;
+ optional uint32 ordinal = 3;
+}
+
+message CChatRoleActions {
+ optional uint64 role_id = 1;
+ optional bool can_create_rename_delete_channel = 2;
+ optional bool can_kick = 3;
+ optional bool can_ban = 4;
+ optional bool can_invite = 5;
+ optional bool can_change_tagline_avatar_name = 6;
+ optional bool can_chat = 7;
+ optional bool can_view_history = 8;
+ optional bool can_change_group_roles = 9;
+ optional bool can_change_user_roles = 10;
+ optional bool can_mention_all = 11;
+ optional bool can_set_watching_broadcast = 12;
+}
+
+message CChatPartyBeacon {
+ optional uint32 app_id = 1;
+ optional fixed64 steamid_owner = 2;
+ optional fixed64 beacon_id = 3;
+ optional string game_metadata = 4;
+}
+
+message CChatRoomGroupHeaderState {
+ optional uint64 chat_group_id = 1;
+ optional string chat_name = 2;
+ optional uint32 clanid = 13;
+ optional uint32 accountid_owner = 14;
+ optional uint32 appid = 21;
+ optional string tagline = 15;
+ optional bytes avatar_sha = 16;
+ optional uint64 default_role_id = 17;
+ repeated .CChatRole roles = 18;
+ repeated .CChatRoleActions role_actions = 19;
+ optional uint32 watching_broadcast_accountid = 20;
+ repeated .CChatPartyBeacon party_beacons = 22;
+ optional uint64 watching_broadcast_channel_id = 23;
+ optional uint64 active_minigame_id = 24;
+ optional string avatar_ugc_url = 25;
+ optional bool disabled = 26;
+}
+
+message CChatRoomMember {
+ optional uint32 accountid = 1;
+ optional .EChatRoomJoinState state = 3 [default = k_EChatRoomJoinState_Default];
+ optional .EChatRoomGroupRank rank = 4 [default = k_EChatRoomGroupRank_Default];
+ optional uint32 time_kick_expire = 6;
+ repeated uint64 role_ids = 7;
+}
+
+message CChatRoomState {
+ optional uint64 chat_id = 1;
+ optional string chat_name = 2;
+ optional bool voice_allowed = 3;
+ repeated uint32 members_in_voice = 4;
+ optional uint32 time_last_message = 5;
+ optional uint32 sort_order = 6;
+ optional string last_message = 7;
+ optional uint32 accountid_last_message = 8;
+}
+
+message CChatRoomGroupState {
+ optional .CChatRoomGroupHeaderState header_state = 1;
+ repeated .CChatRoomMember members = 2;
+ optional uint64 default_chat_id = 4;
+ repeated .CChatRoomState chat_rooms = 5;
+ repeated .CChatRoomMember kicked = 7;
+}
+
+message CUserChatRoomState {
+ optional uint64 chat_id = 1;
+ optional uint32 time_joined = 2;
+ optional uint32 time_last_ack = 3;
+ optional .EChatRoomNotificationLevel desktop_notification_level = 4 [default = k_EChatroomNotificationLevel_Invalid];
+ optional .EChatRoomNotificationLevel mobile_notification_level = 5 [default = k_EChatroomNotificationLevel_Invalid];
+ optional uint32 time_last_mention = 6;
+ optional bool unread_indicator_muted = 7 [default = false];
+ optional uint32 time_first_unread = 8;
+}
+
+message CUserChatRoomGroupState {
+ optional uint64 chat_group_id = 1;
+ optional uint32 time_joined = 2;
+ repeated .CUserChatRoomState user_chat_room_state = 3;
+ optional .EChatRoomNotificationLevel desktop_notification_level = 4 [default = k_EChatroomNotificationLevel_Invalid];
+ optional .EChatRoomNotificationLevel mobile_notification_level = 5 [default = k_EChatroomNotificationLevel_Invalid];
+ optional uint32 time_last_group_ack = 6;
+ optional bool unread_indicator_muted = 7 [default = false];
+}
+
+message CChatRoom_CreateChatRoomGroup_Response {
+ optional uint64 chat_group_id = 1;
+ optional .CChatRoomGroupState state = 2;
+ optional .CUserChatRoomGroupState user_chat_state = 3;
+}
+
+message CChatRoom_SaveChatRoomGroup_Request {
+ optional uint64 chat_group_id = 1;
+ optional string name = 2;
+}
+
+message CChatRoom_SaveChatRoomGroup_Response {
+}
+
+message CChatRoom_RenameChatRoomGroup_Request {
+ optional uint64 chat_group_id = 1;
+ optional string name = 2;
+}
+
+message CChatRoom_RenameChatRoomGroup_Response {
+ optional string name = 1;
+}
+
+message CChatRoom_SetChatRoomGroupTagline_Request {
+ optional uint64 chat_group_id = 1;
+ optional string tagline = 2;
+}
+
+message CChatRoom_SetChatRoomGroupTagline_Response {
+}
+
+message CChatRoom_SetChatRoomGroupAvatar_Request {
+ optional uint64 chat_group_id = 1;
+ optional bytes avatar_sha = 2;
+}
+
+message CChatRoom_SetChatRoomGroupAvatar_Response {
+}
+
+message CChatRoom_SetChatRoomGroupWatchingBroadcast_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint32 watching_broadcast_accountid = 2;
+ optional uint64 watching_broadcast_channel_id = 3;
+}
+
+message CChatRoom_SetChatRoomGroupWatchingBroadcast_Response {
+}
+
+message CChatRoom_JoinMiniGameForChatRoomGroup_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+}
+
+message CChatRoom_JoinMiniGameForChatRoomGroup_Response {
+ optional uint64 minigame_id = 1;
+}
+
+message CChatRoom_EndMiniGameForChatRoomGroup_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+ optional uint64 minigame_id = 3;
+}
+
+message CChatRoom_EndMiniGameForChatRoomGroup_Response {
+}
+
+message CChatRoom_MuteUser_Request {
+ optional uint64 chat_group_id = 1;
+ optional fixed64 steamid = 2;
+ optional int32 expiration = 3;
+}
+
+message CChatRoom_MuteUser_Response {
+}
+
+message CChatRoom_KickUser_Request {
+ optional uint64 chat_group_id = 1;
+ optional fixed64 steamid = 2;
+ optional int32 expiration = 3;
+}
+
+message CChatRoom_KickUser_Response {
+}
+
+message CChatRoom_SetUserBanState_Request {
+ optional uint64 chat_group_id = 1;
+ optional fixed64 steamid = 2;
+ optional bool ban_state = 3;
+}
+
+message CChatRoom_SetUserBanState_Response {
+}
+
+message CChatRoom_RevokeInvite_Request {
+ optional uint64 chat_group_id = 1;
+ optional fixed64 steamid = 2;
+}
+
+message CChatRoom_RevokeInvite_Response {
+}
+
+message CChatRoom_CreateRole_Request {
+ optional uint64 chat_group_id = 1;
+ optional string name = 2;
+}
+
+message CChatRoom_CreateRole_Response {
+ optional .CChatRoleActions actions = 2;
+}
+
+message CChatRoom_GetRoles_Request {
+ optional uint64 chat_group_id = 1;
+}
+
+message CChatRoom_GetRoles_Response {
+ repeated .CChatRole roles = 1;
+}
+
+message CChatRoom_RenameRole_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 role_id = 2;
+ optional string name = 3;
+}
+
+message CChatRoom_RenameRole_Response {
+}
+
+message CChatRoom_ReorderRole_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 role_id = 2;
+ optional uint32 ordinal = 3;
+}
+
+message CChatRoom_ReorderRole_Response {
+}
+
+message CChatRoom_DeleteRole_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 role_id = 2;
+}
+
+message CChatRoom_DeleteRole_Response {
+}
+
+message CChatRoom_GetRoleActions_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 role_id = 2;
+}
+
+message CChatRoom_GetRoleActions_Response {
+ repeated .CChatRoleActions actions = 1;
+}
+
+message CChatRoom_ReplaceRoleActions_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 role_id = 2;
+ optional .CChatRoleActions actions = 4;
+}
+
+message CChatRoom_ReplaceRoleActions_Response {
+}
+
+message CChatRoom_AddRoleToUser_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 role_id = 3;
+ optional fixed64 steamid = 4;
+}
+
+message CChatRoom_AddRoleToUser_Response {
+}
+
+message CChatRoom_GetRolesForUser_Request {
+ optional uint64 chat_group_id = 1;
+ optional fixed64 steamid = 3;
+}
+
+message CChatRoom_GetRolesForUser_Response {
+ repeated uint64 role_ids = 1;
+}
+
+message CChatRoom_DeleteRoleFromUser_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 role_id = 3;
+ optional fixed64 steamid = 4;
+}
+
+message CChatRoom_DeleteRoleFromUser_Response {
+}
+
+message CChatRoom_JoinChatRoomGroup_Request {
+ optional uint64 chat_group_id = 1;
+ optional string invite_code = 2;
+ optional uint64 chat_id = 3;
+}
+
+message CChatRoom_JoinChatRoomGroup_Response {
+ optional .CChatRoomGroupState state = 1;
+ optional .CUserChatRoomGroupState user_chat_state = 3;
+ optional uint64 join_chat_id = 4;
+ optional uint32 time_expire = 5;
+}
+
+message CChatRoom_InviteFriendToChatRoomGroup_Request {
+ optional uint64 chat_group_id = 1;
+ optional fixed64 steamid = 2;
+ optional uint64 chat_id = 3;
+ optional bool skip_friendsui_check = 4;
+}
+
+message CChatRoom_InviteFriendToChatRoomGroup_Response {
+}
+
+message CChatRoom_LeaveChatRoomGroup_Request {
+ optional uint64 chat_group_id = 1;
+}
+
+message CChatRoom_LeaveChatRoomGroup_Response {
+}
+
+message CChatRoom_CreateChatRoom_Request {
+ optional uint64 chat_group_id = 1;
+ optional string name = 2;
+ optional bool allow_voice = 3;
+}
+
+message CChatRoom_CreateChatRoom_Response {
+ optional .CChatRoomState chat_room = 1;
+}
+
+message CChatRoom_DeleteChatRoom_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+}
+
+message CChatRoom_DeleteChatRoom_Response {
+}
+
+message CChatRoom_RenameChatRoom_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+ optional string name = 3;
+}
+
+message CChatRoom_RenameChatRoom_Response {
+}
+
+message CChatRoom_ReorderChatRoom_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+ optional uint64 move_after_chat_id = 3;
+}
+
+message CChatRoom_ReorderChatRoom_Response {
+}
+
+message CChatRoom_SendChatMessage_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+ optional string message = 3;
+ optional bool echo_to_sender = 4;
+}
+
+message CChatRoom_SendChatMessage_Response {
+ optional string modified_message = 1;
+ optional uint32 server_timestamp = 2;
+ optional uint32 ordinal = 3;
+ optional string message_without_bb_code = 4;
+}
+
+message CChatRoom_JoinVoiceChat_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+}
+
+message CChatRoom_JoinVoiceChat_Response {
+ optional uint64 voice_chatid = 1;
+}
+
+message CChatRoom_LeaveVoiceChat_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+}
+
+message CChatRoom_LeaveVoiceChat_Response {
+}
+
+message CChatRoom_GetMessageHistory_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+ optional uint32 last_time = 3;
+ optional uint32 last_ordinal = 4;
+ optional uint32 start_time = 5;
+ optional uint32 start_ordinal = 6;
+ optional uint32 max_count = 7;
+}
+
+message ServerMessage {
+ optional .EChatRoomServerMessage message = 1 [default = k_EChatRoomServerMsg_Invalid];
+ optional string string_param = 2;
+ optional uint32 accountid_param = 3;
+}
+
+message CChatRoom_GetMessageHistory_Response {
+ message ChatMessage {
+ message MessageReaction {
+ optional .EChatRoomMessageReactionType reaction_type = 1 [default = k_EChatRoomMessageReactionType_Invalid];
+ optional string reaction = 2;
+ optional uint32 num_reactors = 3;
+ optional bool has_user_reacted = 4;
+ }
+
+ optional uint32 sender = 1;
+ optional uint32 server_timestamp = 2;
+ optional string message = 3;
+ optional uint32 ordinal = 4;
+ optional .ServerMessage server_message = 5;
+ optional bool deleted = 6;
+ repeated .CChatRoom_GetMessageHistory_Response.ChatMessage.MessageReaction reactions = 7;
+ }
+
+ repeated .CChatRoom_GetMessageHistory_Response.ChatMessage messages = 1;
+ optional bool more_available = 4;
+}
+
+message CChatRoom_GetMyChatRoomGroups_Request {
+}
+
+message CChatRoom_GetChatRoomGroupSummary_Response {
+ optional uint64 chat_group_id = 1;
+ optional string chat_group_name = 2;
+ optional uint32 active_member_count = 3;
+ optional uint32 active_voice_member_count = 4;
+ optional uint64 default_chat_id = 5;
+ repeated .CChatRoomState chat_rooms = 6;
+ optional uint32 clanid = 7;
+ optional string chat_group_tagline = 8;
+ optional uint32 accountid_owner = 9;
+ repeated uint32 top_members = 10;
+ optional bytes chat_group_avatar_sha = 11;
+ optional .EChatRoomGroupRank rank = 12 [default = k_EChatRoomGroupRank_Default];
+ optional uint64 default_role_id = 13;
+ repeated uint64 role_ids = 14;
+ repeated .CChatRoleActions role_actions = 15;
+ optional uint32 watching_broadcast_accountid = 16;
+ optional uint32 appid = 17;
+ repeated .CChatPartyBeacon party_beacons = 18;
+ optional uint64 watching_broadcast_channel_id = 19;
+ optional uint64 active_minigame_id = 20;
+ optional string avatar_ugc_url = 21;
+ optional bool disabled = 22;
+}
+
+message CChatRoomSummaryPair {
+ optional .CUserChatRoomGroupState user_chat_group_state = 1;
+ optional .CChatRoom_GetChatRoomGroupSummary_Response group_summary = 2;
+}
+
+message CChatRoom_GetMyChatRoomGroups_Response {
+ repeated .CChatRoomSummaryPair chat_room_groups = 1;
+}
+
+message CChatRoom_GetChatRoomGroupState_Request {
+ optional uint64 chat_group_id = 1;
+}
+
+message CChatRoom_GetChatRoomGroupState_Response {
+ optional .CChatRoomGroupState state = 1;
+}
+
+message CChatRoom_GetChatRoomGroupSummary_Request {
+ optional uint64 chat_group_id = 1;
+}
+
+message CChatRoom_SetAppChatRoomGroupForceActive_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint32 requesting_app_id = 2;
+}
+
+message CChatRoom_SetAppChatRoomGroupForceActive_Response {
+ optional uint32 result = 1;
+ repeated uint32 accounts_in_channel = 2;
+}
+
+message CChatRoom_SetAppChatRoomGroupStopForceActive_Notification {
+ optional uint64 chat_group_id = 1;
+ optional uint32 requesting_app_id = 2;
+}
+
+message CChatRoom_AckChatMessage_Notification {
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+ optional uint32 timestamp = 3;
+}
+
+message CChatRoom_CreateInviteLink_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint32 seconds_valid = 2;
+ optional uint64 chat_id = 3;
+}
+
+message CChatRoom_CreateInviteLink_Response {
+ optional string invite_code = 1;
+ optional uint32 seconds_valid = 2;
+}
+
+message CChatRoom_GetInviteLinkInfo_Request {
+ optional string invite_code = 1;
+}
+
+message CChatRoom_GetInviteLinkInfo_Response {
+ optional fixed64 steamid_sender = 3;
+ optional uint32 time_expires = 4;
+ optional uint64 chat_id = 6;
+ optional .CChatRoom_GetChatRoomGroupSummary_Response group_summary = 8;
+ optional .CUserChatRoomGroupState user_chat_group_state = 9;
+ optional uint32 time_kick_expire = 10;
+ optional bool banned = 11;
+}
+
+message CChatRoom_GetInviteInfo_Request {
+ optional fixed64 steamid_invitee = 1;
+ optional uint64 chat_group_id = 2;
+ optional uint64 chat_id = 3;
+ optional string invite_code = 4;
+}
+
+message CChatRoom_GetInviteInfo_Response {
+ optional .CChatRoom_GetChatRoomGroupSummary_Response group_summary = 1;
+ optional uint32 time_kick_expire = 2;
+ optional bool banned = 3;
+}
+
+message CChatRoom_GetInviteLinksForGroup_Request {
+ optional uint64 chat_group_id = 1;
+}
+
+message CChatRoom_GetInviteLinksForGroup_Response {
+ message LinkInfo {
+ optional string invite_code = 1;
+ optional fixed64 steamid_creator = 2;
+ optional uint32 time_expires = 3;
+ optional uint64 chat_id = 4;
+ }
+
+ repeated .CChatRoom_GetInviteLinksForGroup_Response.LinkInfo invite_links = 1;
+}
+
+message CChatRoom_GetBanList_Request {
+ optional uint64 chat_group_id = 1;
+}
+
+message CChatRoom_GetBanList_Response {
+ message BanInfo {
+ optional uint32 accountid = 1;
+ optional uint32 accountid_actor = 2;
+ optional uint32 time_banned = 3;
+ optional string ban_reason = 4;
+ }
+
+ repeated .CChatRoom_GetBanList_Response.BanInfo bans = 1;
+}
+
+message CChatRoom_GetInviteList_Request {
+ optional uint64 chat_group_id = 1;
+}
+
+message CChatRoomGroupInvite {
+ optional uint32 accountid = 1;
+ optional uint32 accountid_actor = 2;
+ optional uint32 time_invited = 3;
+}
+
+message CChatRoom_GetInviteList_Response {
+ repeated .CChatRoomGroupInvite invites = 1;
+}
+
+message CChatRoom_DeleteInviteLink_Request {
+ optional uint64 chat_group_id = 1;
+ optional string invite_code = 2;
+}
+
+message CChatRoom_DeleteInviteLink_Response {
+}
+
+message CChatRoom_SetSessionActiveChatRoomGroups_Request {
+ repeated uint64 chat_group_ids = 1;
+ repeated uint64 chat_groups_data_requested = 2;
+ optional int32 virtualize_members_threshold = 3 [(description) = "If a chat room has more members than this threshold, we will opt in to a virtualized list"];
+}
+
+message CChatRoom_SetSessionActiveChatRoomGroups_Response {
+ repeated .CChatRoomGroupState chat_states = 1;
+ repeated uint64 virtualize_members_chat_group_ids = 2;
+}
+
+message CChatRoom_SetUserChatGroupPreferences_Request {
+ message ChatGroupPreferences {
+ optional .EChatRoomNotificationLevel desktop_notification_level = 1 [default = k_EChatroomNotificationLevel_Invalid];
+ optional .EChatRoomNotificationLevel mobile_notification_level = 2 [default = k_EChatroomNotificationLevel_Invalid];
+ optional bool unread_indicator_muted = 3;
+ }
+
+ message ChatRoomPreferences {
+ optional uint64 chat_id = 1;
+ optional .EChatRoomNotificationLevel desktop_notification_level = 2 [default = k_EChatroomNotificationLevel_Invalid];
+ optional .EChatRoomNotificationLevel mobile_notification_level = 3 [default = k_EChatroomNotificationLevel_Invalid];
+ optional bool unread_indicator_muted = 4;
+ }
+
+ optional uint64 chat_group_id = 1;
+ optional .CChatRoom_SetUserChatGroupPreferences_Request.ChatGroupPreferences chat_group_preferences = 2;
+ repeated .CChatRoom_SetUserChatGroupPreferences_Request.ChatRoomPreferences chat_room_preferences = 3;
+}
+
+message CChatRoom_SetUserChatGroupPreferences_Response {
+}
+
+message CChatRoom_DeleteChatMessages_Request {
+ message Message {
+ optional uint32 server_timestamp = 1;
+ optional uint32 ordinal = 2;
+ }
+
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+ repeated .CChatRoom_DeleteChatMessages_Request.Message messages = 3;
+}
+
+message CChatRoom_DeleteChatMessages_Response {
+}
+
+message CChatRoom_UpdateMemberListView_Notification {
+ optional uint64 chat_group_id = 1;
+ optional uint64 view_id = 2 [(description) = "Client-generated ID. Should send the same value on all requests for the same view"];
+ optional int32 start = 3;
+ optional int32 end = 4;
+ optional int32 client_changenumber = 5 [(description) = "Any updates from this call on will have this changenumber present. Can be used to guarantee in-order updates."];
+ optional bool delete_view = 6 [(description) = "Indicates this view has been deleted."];
+ repeated int32 persona_subscribe_accountids = 7;
+ repeated int32 persona_unsubscribe_accountids = 8;
+}
+
+message CChatRoom_SearchMembers_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 search_id = 2 [(description) = "Client-supplied id. For find-as-you-type searches, as search narrows the server will not return persona states previously returned for a given searchid."];
+ optional string search_text = 3;
+ optional int32 max_results = 4;
+}
+
+message CChatRoom_SearchMembers_Response {
+ message MemberMatch {
+ optional int32 accountid = 1;
+ optional .CMsgClientPersonaState.Friend persona = 2;
+ }
+
+ repeated .CChatRoom_SearchMembers_Response.MemberMatch matching_members = 1;
+ optional uint32 status_flags = 2;
+}
+
+message CChatRoom_UpdateMessageReaction_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+ optional uint32 server_timestamp = 3;
+ optional uint32 ordinal = 4;
+ optional .EChatRoomMessageReactionType reaction_type = 5 [default = k_EChatRoomMessageReactionType_Invalid];
+ optional string reaction = 6;
+ optional bool is_add = 7;
+}
+
+message CChatRoom_UpdateMessageReaction_Response {
+ optional uint32 num_reactors = 1;
+}
+
+message CChatRoom_GetMessageReactionReactors_Request {
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+ optional uint32 server_timestamp = 3;
+ optional uint32 ordinal = 4;
+ optional .EChatRoomMessageReactionType reaction_type = 5 [default = k_EChatRoomMessageReactionType_Invalid];
+ optional string reaction = 6;
+ optional uint32 limit = 7;
+}
+
+message CChatRoom_GetMessageReactionReactors_Response {
+ repeated uint32 reactors = 1;
+}
+
+message CClanChatRooms_GetClanChatRoomInfo_Request {
+ optional fixed64 steamid = 1;
+ optional bool autocreate = 2 [default = true, (description) = "Create a default chat room if none has been created before."];
+}
+
+message CClanChatRooms_GetClanChatRoomInfo_Response {
+ optional .CChatRoom_GetChatRoomGroupSummary_Response chat_group_summary = 1;
+}
+
+message CClanChatRooms_SetClanChatRoomPrivate_Request {
+ optional fixed64 steamid = 1;
+ optional bool chat_room_private = 2;
+}
+
+message CClanChatRooms_SetClanChatRoomPrivate_Response {
+ optional bool chat_room_private = 1;
+}
+
+message CChatMentions {
+ optional bool mention_all = 1;
+ optional bool mention_here = 2;
+ repeated uint32 mention_accountids = 3;
+}
+
+message CChatRoom_IncomingChatMessage_Notification {
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+ optional fixed64 steamid_sender = 3;
+ optional string message = 4;
+ optional uint32 timestamp = 5;
+ optional .CChatMentions mentions = 6;
+ optional uint32 ordinal = 7;
+ optional .ServerMessage server_message = 8;
+ optional string message_no_bbcode = 9;
+ optional string chat_name = 10 [(description) = "A name to use for the chat, intended for notifications"];
+}
+
+message CChatRoom_ChatMessageModified_Notification {
+ message ChatMessage {
+ optional uint32 server_timestamp = 1;
+ optional uint32 ordinal = 2;
+ optional bool deleted = 3;
+ }
+
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+ repeated .CChatRoom_ChatMessageModified_Notification.ChatMessage messages = 3;
+}
+
+message CChatRoom_MemberStateChange_Notification {
+ optional uint64 chat_group_id = 1;
+ optional .CChatRoomMember member = 2;
+ optional .EChatRoomMemberStateChange change = 3 [default = k_EChatRoomMemberStateChange_Invalid];
+}
+
+message CChatRoom_ChatRoomHeaderState_Notification {
+ optional .CChatRoomGroupHeaderState header_state = 1;
+}
+
+message CChatRoom_ChatRoomGroupRoomsChange_Notification {
+ optional uint64 chat_group_id = 1;
+ optional uint64 default_chat_id = 2;
+ repeated .CChatRoomState chat_rooms = 3;
+}
+
+message CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification {
+ optional uint64 chat_id = 1;
+ optional uint64 chat_group_id = 2;
+}
+
+message ChatRoomClient_NotifyChatGroupUserStateChanged_Notification {
+ optional uint64 chat_group_id = 1;
+ optional .CUserChatRoomGroupState user_chat_group_state = 2;
+ optional .CChatRoom_GetChatRoomGroupSummary_Response group_summary = 3;
+ optional .EChatRoomMemberStateChange user_action = 4 [default = k_EChatRoomMemberStateChange_Invalid];
+}
+
+message ChatRoomClient_NotifyChatRoomDisconnect_Notification {
+ repeated uint64 chat_group_ids = 1;
+}
+
+message CChatRoomMemberListView {
+ optional int32 start = 3;
+ optional int32 end = 4;
+ optional int32 total_count = 5;
+ optional int32 client_changenumber = 6 [(description) = "Value sent by the client on the last UpdateMemberListView call. "];
+ optional int32 server_changenumber = 7 [(description) = "Value incremented by the server on each MemberListViewUpdated call. "];
+}
+
+message CChatRoomMemberSummaryCounts {
+ optional int32 ingame = 1;
+ optional int32 online = 2;
+ optional int32 offline = 3;
+}
+
+message CChatRoomClient_MemberListViewUpdated_Notification {
+ message MemberListViewEntry {
+ optional int32 rank = 1;
+ optional uint32 accountid = 2;
+ optional .CMsgClientPersonaState.Friend persona = 3;
+ }
+
+ optional uint64 chat_group_id = 1;
+ optional uint64 view_id = 2 [(description) = "Thew view_id supplied when the client created the view. "];
+ optional .CChatRoomMemberListView view = 3;
+ repeated .CChatRoomClient_MemberListViewUpdated_Notification.MemberListViewEntry members = 4;
+ optional uint32 status_flags = 5;
+ optional .CChatRoomMemberSummaryCounts member_summary = 6;
+ repeated .CMsgClientPersonaState.Friend subscribed_personas = 7;
+}
+
+message CChatRoom_MessageReaction_Notification {
+ optional uint64 chat_group_id = 1;
+ optional uint64 chat_id = 2;
+ optional uint32 server_timestamp = 3;
+ optional uint32 ordinal = 4;
+ optional fixed64 reactor = 5;
+ optional .EChatRoomMessageReactionType reaction_type = 6 [default = k_EChatRoomMessageReactionType_Invalid];
+ optional string reaction = 7;
+ optional bool is_add = 8;
+}
+
+message CChatUsability_ClientUsabilityMetrics_Notification {
+ message Settings {
+ optional bool notifications_show_ingame = 1;
+ optional bool notifications_show_online = 2;
+ optional bool notifications_show_message = 3;
+ optional bool notifications_events_and_announcements = 4;
+ optional bool sounds_play_ingame = 5;
+ optional bool sounds_play_online = 6;
+ optional bool sounds_play_message = 7;
+ optional bool sounds_events_and_announcements = 8;
+ optional bool always_new_chat_window = 9;
+ optional bool force_alphabetic_friend_sorting = 10;
+ optional int32 chat_flash_mode = 11;
+ optional bool remember_open_chats = 12;
+ optional bool compact_quick_access = 13;
+ optional bool compact_friends_list = 14;
+ optional bool notifications_show_chat_room_notification = 15;
+ optional bool sounds_play_chat_room_notification = 16;
+ optional bool hide_offline_friends_in_tag_groups = 17;
+ optional bool hide_categorized_friends = 18;
+ optional bool categorize_in_game_friends_by_game = 19;
+ optional int32 chat_font_size = 20;
+ optional bool use24hour_clock = 21;
+ optional bool do_not_disturb_mode = 22;
+ optional bool disable_embed_inlining = 23;
+ optional bool sign_into_friends = 24;
+ optional bool animated_avatars = 25;
+ }
+
+ message VoiceSettings {
+ optional float voice_input_gain = 1;
+ optional float voice_output_gain = 2;
+ optional int32 noise_gate_level = 3;
+ optional bool voice_use_echo_cancellation = 4;
+ optional bool voice_use_noise_cancellation = 5;
+ optional bool voice_use_auto_gain_control = 6;
+ optional bool selected_non_default_mic = 7;
+ optional bool selected_non_default_output = 8;
+ optional bool push_to_talk_enabled = 9;
+ optional bool push_to_mute_enabled = 10;
+ optional bool play_ptt_sounds = 11;
+ }
+
+ message UIState {
+ message CategoryCollapseState {
+ optional bool in_game_collapsed = 1;
+ optional bool online_collapsed = 2;
+ optional bool offline_collapsed = 3;
+ optional int32 game_groups_collapsed = 4;
+ optional int32 categories_collapsed = 5;
+ }
+
+ optional int32 friends_list_height = 1;
+ optional int32 friends_list_width = 2;
+ optional bool friends_list_docked = 3;
+ optional bool friends_list_collapsed = 4;
+ optional int32 friends_list_group_chats_height = 5;
+ optional bool friends_list_visible = 6;
+ optional int32 chat_popups_opened = 7;
+ optional int32 group_chat_tabs_opened = 8;
+ optional int32 friend_chat_tabs_opened = 9;
+ optional int32 chat_window_width = 10;
+ optional int32 chat_window_height = 11;
+ optional .CChatUsability_ClientUsabilityMetrics_Notification.UIState.CategoryCollapseState category_collapse = 12;
+ optional int32 group_chat_left_col_collapsed = 13;
+ optional int32 group_chat_right_col_collapsed = 14;
+ optional bool in_one_on_one_voice_chat = 15;
+ optional bool in_group_voice_chat = 16;
+ }
+
+ message Metrics {
+ optional int32 friends_count = 1;
+ optional int32 friends_category_count = 2;
+ optional int32 friends_categorized_count = 3;
+ optional int32 friends_online_count = 4;
+ optional int32 friends_in_game_count = 5;
+ optional int32 friends_in_game_singleton_count = 6;
+ optional int32 game_group_count = 7;
+ optional int32 friends_favorite_count = 8;
+ optional int32 group_chat_count = 9;
+ optional int32 group_chat_favorite_count = 10;
+ }
+
+ optional uint32 metrics_run_id = 1;
+ optional uint32 client_build = 2;
+ optional uint32 metrics_version = 3;
+ optional bool in_web = 4;
+ optional .CChatUsability_ClientUsabilityMetrics_Notification.Settings settings = 10;
+ optional .CChatUsability_ClientUsabilityMetrics_Notification.VoiceSettings voice_settings = 11;
+ optional .CChatUsability_ClientUsabilityMetrics_Notification.UIState ui_state = 12;
+ optional .CChatUsability_ClientUsabilityMetrics_Notification.Metrics metrics = 13;
+}
+
+message CChatUsability_RequestClientUsabilityMetrics_Notification {
+ optional uint32 metrics_run_id = 1;
+}
+
+service Chat {
+ option (service_description) = "Chat-related services";
+
+ rpc RequestFriendPersonaStates (.CChat_RequestFriendPersonaStates_Request) returns (.CChat_RequestFriendPersonaStates_Response) {
+ option (method_description) = "Request to be notified of online friend persona state information. Responses sent via CMsgClientPersonaState.";
+ }
+}
+
+service ChatRoom {
+ option (service_description) = "Service for joining, managing, and using multi-user chat rooms";
+
+ rpc CreateChatRoomGroup (.CChatRoom_CreateChatRoomGroup_Request) returns (.CChatRoom_CreateChatRoomGroup_Response) {
+ option (method_description) = "Create's a chat group that can contain other chat rooms";
+ }
+
+ rpc SaveChatRoomGroup (.CChatRoom_SaveChatRoomGroup_Request) returns (.CChatRoom_SaveChatRoomGroup_Response) {
+ option (method_description) = "Saves's a chat group";
+ }
+
+ rpc RenameChatRoomGroup (.CChatRoom_RenameChatRoomGroup_Request) returns (.CChatRoom_RenameChatRoomGroup_Response) {
+ option (method_description) = "Rename a chat room group";
+ }
+
+ rpc SetChatRoomGroupTagline (.CChatRoom_SetChatRoomGroupTagline_Request) returns (.CChatRoom_SetChatRoomGroupTagline_Response) {
+ option (method_description) = "Set tagline for a chat room group";
+ }
+
+ rpc SetChatRoomGroupAvatar (.CChatRoom_SetChatRoomGroupAvatar_Request) returns (.CChatRoom_SetChatRoomGroupAvatar_Response) {
+ option (method_description) = "Set avatar SHA for a chat room group";
+ }
+
+ rpc SetChatRoomGroupWatchingBroadcast (.CChatRoom_SetChatRoomGroupWatchingBroadcast_Request) returns (.CChatRoom_SetChatRoomGroupWatchingBroadcast_Response) {
+ option (method_description) = "Sets a broadcast that the chat room group is watching";
+ }
+
+ rpc JoinMiniGameForChatRoomGroup (.CChatRoom_JoinMiniGameForChatRoomGroup_Request) returns (.CChatRoom_JoinMiniGameForChatRoomGroup_Response) {
+ option (method_description) = "Joins the minigame for the chat room group or starts a new one (Winter 2019 sale party game)";
+ }
+
+ rpc EndMiniGameForChatRoomGroup (.CChatRoom_EndMiniGameForChatRoomGroup_Request) returns (.CChatRoom_EndMiniGameForChatRoomGroup_Response) {
+ option (method_description) = "Ends the minigame in the chat room group";
+ }
+
+ rpc MuteUserInGroup (.CChatRoom_MuteUser_Request) returns (.CChatRoom_MuteUser_Response) {
+ option (method_description) = "Mute user in group";
+ }
+
+ rpc KickUserFromGroup (.CChatRoom_KickUser_Request) returns (.CChatRoom_KickUser_Response) {
+ option (method_description) = "Kick user from group";
+ }
+
+ rpc SetUserBanState (.CChatRoom_SetUserBanState_Request) returns (.CChatRoom_SetUserBanState_Response) {
+ option (method_description) = "Ban/unban user from group";
+ }
+
+ rpc RevokeInviteToGroup (.CChatRoom_RevokeInvite_Request) returns (.CChatRoom_RevokeInvite_Response) {
+ option (method_description) = "Revoke a direct invitation of a user";
+ }
+
+ rpc CreateRole (.CChatRoom_CreateRole_Request) returns (.CChatRoom_CreateRole_Response) {
+ option (method_description) = "Create role for goup";
+ }
+
+ rpc GetRoles (.CChatRoom_GetRoles_Request) returns (.CChatRoom_GetRoles_Response) {
+ option (method_description) = "Get all roles in group";
+ }
+
+ rpc RenameRole (.CChatRoom_RenameRole_Request) returns (.CChatRoom_RenameRole_Response) {
+ option (method_description) = "Rename role for goup";
+ }
+
+ rpc ReorderRole (.CChatRoom_ReorderRole_Request) returns (.CChatRoom_ReorderRole_Response) {
+ option (method_description) = "Reorder role with a goup";
+ }
+
+ rpc DeleteRole (.CChatRoom_DeleteRole_Request) returns (.CChatRoom_DeleteRole_Response) {
+ option (method_description) = "Delete role from group";
+ }
+
+ rpc GetRoleActions (.CChatRoom_GetRoleActions_Request) returns (.CChatRoom_GetRoleActions_Response) {
+ option (method_description) = "Get all defined roles and actions in group";
+ }
+
+ rpc ReplaceRoleActions (.CChatRoom_ReplaceRoleActions_Request) returns (.CChatRoom_ReplaceRoleActions_Response) {
+ option (method_description) = "Replace role actions in group";
+ }
+
+ rpc AddRoleToUser (.CChatRoom_AddRoleToUser_Request) returns (.CChatRoom_AddRoleToUser_Response) {
+ option (method_description) = "Add role to user in group";
+ }
+
+ rpc GetRolesForUser (.CChatRoom_GetRolesForUser_Request) returns (.CChatRoom_GetRolesForUser_Response) {
+ option (method_description) = "Get all roles assigned to user in group";
+ }
+
+ rpc DeleteRoleFromUser (.CChatRoom_DeleteRoleFromUser_Request) returns (.CChatRoom_DeleteRoleFromUser_Response) {
+ option (method_description) = "Delete role from user in group";
+ }
+
+ rpc JoinChatRoomGroup (.CChatRoom_JoinChatRoomGroup_Request) returns (.CChatRoom_JoinChatRoomGroup_Response) {
+ option (method_description) = "Join a multi-user chat room";
+ }
+
+ rpc InviteFriendToChatRoomGroup (.CChatRoom_InviteFriendToChatRoomGroup_Request) returns (.CChatRoom_InviteFriendToChatRoomGroup_Response) {
+ option (method_description) = "Invite a friend to a multi-user chat room";
+ }
+
+ rpc LeaveChatRoomGroup (.CChatRoom_LeaveChatRoomGroup_Request) returns (.CChatRoom_LeaveChatRoomGroup_Response) {
+ option (method_description) = "Leaves a chat room group and all related chats";
+ }
+
+ rpc CreateChatRoom (.CChatRoom_CreateChatRoom_Request) returns (.CChatRoom_CreateChatRoom_Response) {
+ option (method_description) = "Creates a chat room inside a chat room group";
+ }
+
+ rpc DeleteChatRoom (.CChatRoom_DeleteChatRoom_Request) returns (.CChatRoom_DeleteChatRoom_Response) {
+ option (method_description) = "Deletes a chat room inside a chat room group";
+ }
+
+ rpc RenameChatRoom (.CChatRoom_RenameChatRoom_Request) returns (.CChatRoom_RenameChatRoom_Response) {
+ option (method_description) = "Renames a chat room inside a chat room group";
+ }
+
+ rpc ReorderChatRoom (.CChatRoom_ReorderChatRoom_Request) returns (.CChatRoom_ReorderChatRoom_Response) {
+ option (method_description) = "Reorders a chat room inside a chat room group";
+ }
+
+ rpc SendChatMessage (.CChatRoom_SendChatMessage_Request) returns (.CChatRoom_SendChatMessage_Response) {
+ option (method_description) = "Send a chat message to a multi-user chat room";
+ }
+
+ rpc JoinVoiceChat (.CChatRoom_JoinVoiceChat_Request) returns (.CChatRoom_JoinVoiceChat_Response) {
+ option (method_description) = "Join the voice chat in a multi-room chat (should already be in the chat room)";
+ }
+
+ rpc LeaveVoiceChat (.CChatRoom_LeaveVoiceChat_Request) returns (.CChatRoom_LeaveVoiceChat_Response) {
+ option (method_description) = "Leave the voice chat in a multi-room chat";
+ }
+
+ rpc GetMessageHistory (.CChatRoom_GetMessageHistory_Request) returns (.CChatRoom_GetMessageHistory_Response) {
+ option (method_description) = "Get the history of messages in a chat room. You must currently be a member of the chat room.";
+ }
+
+ rpc GetMyChatRoomGroups (.CChatRoom_GetMyChatRoomGroups_Request) returns (.CChatRoom_GetMyChatRoomGroups_Response) {
+ option (method_description) = "Get a list of our chat rooms";
+ }
+
+ rpc GetChatRoomGroupState (.CChatRoom_GetChatRoomGroupState_Request) returns (.CChatRoom_GetChatRoomGroupState_Response) {
+ option (method_description) = "Get information about a single chat room";
+ }
+
+ rpc GetChatRoomGroupSummary (.CChatRoom_GetChatRoomGroupSummary_Request) returns (.CChatRoom_GetChatRoomGroupSummary_Response) {
+ option (method_description) = "Get basic information about a chat room group";
+ }
+
+ rpc SetAppChatRoomGroupForceActive (.CChatRoom_SetAppChatRoomGroupForceActive_Request) returns (.CChatRoom_SetAppChatRoomGroupForceActive_Response) {
+ option (method_description) = "Force a group chat to be considered active on the server for this user";
+ }
+
+ rpc SetAppChatRoomGroupStopForceActive (.CChatRoom_SetAppChatRoomGroupStopForceActive_Notification) returns (.NoResponse) {
+ option (method_description) = "If a group chat is forced active (see SetAppChatRoomGroupForceActive), decrement the force count";
+ }
+
+ rpc AckChatMessage (.CChatRoom_AckChatMessage_Notification) returns (.NoResponse) {
+ option (method_description) = "Acknowledge that we have seen the most recent chat message in a chat";
+ }
+
+ rpc CreateInviteLink (.CChatRoom_CreateInviteLink_Request) returns (.CChatRoom_CreateInviteLink_Response) {
+ option (method_description) = "Creates a chatroom invite link";
+ }
+
+ rpc GetInviteLinkInfo (.CChatRoom_GetInviteLinkInfo_Request) returns (.CChatRoom_GetInviteLinkInfo_Response) {
+ option (method_description) = "Returns chat room info about provided link";
+ }
+
+ rpc GetInviteInfo (.CChatRoom_GetInviteInfo_Request) returns (.CChatRoom_GetInviteInfo_Response) {
+ option (method_description) = "Returns chat room info about any invite involving the sender and passed group id";
+ }
+
+ rpc GetInviteLinksForGroup (.CChatRoom_GetInviteLinksForGroup_Request) returns (.CChatRoom_GetInviteLinksForGroup_Response) {
+ option (method_description) = "Returns all invite links for the specified group";
+ }
+
+ rpc GetBanList (.CChatRoom_GetBanList_Request) returns (.CChatRoom_GetBanList_Response) {
+ option (method_description) = "Gets a list of users who have been banned from a chat room";
+ }
+
+ rpc GetInviteList (.CChatRoom_GetInviteList_Request) returns (.CChatRoom_GetInviteList_Response) {
+ option (method_description) = "Gets a list of users who have been invited to a chat room";
+ }
+
+ rpc DeleteInviteLink (.CChatRoom_DeleteInviteLink_Request) returns (.CChatRoom_DeleteInviteLink_Response) {
+ option (method_description) = "Deletes specified invite link";
+ }
+
+ rpc SetSessionActiveChatRoomGroups (.CChatRoom_SetSessionActiveChatRoomGroups_Request) returns (.CChatRoom_SetSessionActiveChatRoomGroups_Response) {
+ option (method_description) = "Set which chat rooms we are using in the active session";
+ }
+
+ rpc SetUserChatGroupPreferences (.CChatRoom_SetUserChatGroupPreferences_Request) returns (.CChatRoom_SetUserChatGroupPreferences_Response) {
+ option (method_description) = "Set preferences around chat notifications for a group";
+ }
+
+ rpc DeleteChatMessages (.CChatRoom_DeleteChatMessages_Request) returns (.CChatRoom_DeleteChatMessages_Response) {
+ option (method_description) = "Deletes specified chat messages";
+ }
+
+ rpc UpdateMemberListView (.CChatRoom_UpdateMemberListView_Notification) returns (.NoResponse) {
+ option (method_description) = "A client is indicating it has an active view into the members list.";
+ }
+
+ rpc SearchMembers (.CChatRoom_SearchMembers_Request) returns (.CChatRoom_SearchMembers_Response) {
+ option (method_description) = "Search chat room members by name.";
+ }
+
+ rpc UpdateMessageReaction (.CChatRoom_UpdateMessageReaction_Request) returns (.CChatRoom_UpdateMessageReaction_Response) {
+ option (method_description) = "Adds/removes a reaction to/from a chat room message";
+ }
+
+ rpc GetMessageReactionReactors (.CChatRoom_GetMessageReactionReactors_Request) returns (.CChatRoom_GetMessageReactionReactors_Response) {
+ option (method_description) = "Fetches a list of reactors for a specified reaction";
+ }
+}
+
+service ClanChatRooms {
+ option (service_description) = "Methods for getting clan chat information";
+
+ rpc GetClanChatRoomInfo (.CClanChatRooms_GetClanChatRoomInfo_Request) returns (.CClanChatRooms_GetClanChatRoomInfo_Response) {
+ option (method_description) = "Get a list of chat rooms for a clan, optionally creating a new one";
+ }
+
+ rpc SetClanChatRoomPrivate (.CClanChatRooms_SetClanChatRoomPrivate_Request) returns (.CClanChatRooms_SetClanChatRoomPrivate_Response) {
+ option (method_description) = "Set a clan chat room to be members only (or public)";
+ }
+}
+
+service ChatRoomClient {
+ option (service_description) = "Client notifications for chat events";
+ option (service_execution_site) = k_EProtoExecutionSiteSteamClient;
+
+ rpc NotifyIncomingChatMessage (.CChatRoom_IncomingChatMessage_Notification) returns (.NoResponse) {
+ option (method_description) = "New chat message for a chat room";
+ }
+
+ rpc NotifyChatMessageModified (.CChatRoom_ChatMessageModified_Notification) returns (.NoResponse) {
+ option (method_description) = "An existing chat message has been modified on the backend";
+ }
+
+ rpc NotifyMemberStateChange (.CChatRoom_MemberStateChange_Notification) returns (.NoResponse) {
+ option (method_description) = "A chat room member's state has changed (join/part/permissions)";
+ }
+
+ rpc NotifyChatRoomHeaderStateChange (.CChatRoom_ChatRoomHeaderState_Notification) returns (.NoResponse) {
+ option (method_description) = "Chat Room header / metadata has changed";
+ }
+
+ rpc NotifyChatRoomGroupRoomsChange (.CChatRoom_ChatRoomGroupRoomsChange_Notification) returns (.NoResponse) {
+ option (method_description) = "Something about a chatroom group changed (created, deleted, etc.)";
+ }
+
+ rpc NotifyShouldRejoinChatRoomVoiceChat (.CChatRoom_NotifyShouldRejoinChatRoomVoiceChat_Notification) returns (.NoResponse) {
+ option (method_description) = "Voice chat was recreated or dropped on the backend and client needs to rejoin to remain in chat.";
+ }
+
+ rpc NotifyChatGroupUserStateChanged (.ChatRoomClient_NotifyChatGroupUserStateChanged_Notification) returns (.NoResponse) {
+ option (method_description) = "User chat group state (preferences, ack state, etc) have changed.";
+ }
+
+ rpc NotifyAckChatMessageEcho (.CChatRoom_AckChatMessage_Notification) returns (.NoResponse) {
+ option (method_description) = "A session acked an unread message, echo to other sessions.";
+ }
+
+ rpc NotifyChatRoomDisconnect (.ChatRoomClient_NotifyChatRoomDisconnect_Notification) returns (.NoResponse) {
+ option (method_description) = "The ChatRoom server hosting the chat rooms has reconnected to the user's Chat server (may have restarted), client should refresh state.";
+ }
+
+ rpc NotifyMemberListViewUpdated (.CChatRoomClient_MemberListViewUpdated_Notification) returns (.NoResponse) {
+ option (method_description) = "The list of members for a chat room with virtualized member list has changed on the server (or client requested)";
+ }
+
+ rpc NotifyMessageReaction (.CChatRoom_MessageReaction_Notification) returns (.NoResponse) {
+ option (method_description) = "New message reaction";
+ }
+}
+
+service ChatUsability {
+ option (service_description) = "Client notifications for chat events";
+
+ rpc NotifyClientUsabilityMetrics (.CChatUsability_ClientUsabilityMetrics_Notification) returns (.NoResponse) {
+ option (method_description) = "Incoming metrics from the client";
+ }
+}
+
+service ChatUsabilityClient {
+ option (service_description) = "Client notifications for chat usability";
+ option (service_execution_site) = k_EProtoExecutionSiteSteamClient;
+
+ rpc NotifyRequestClientUsabilityMetrics (.CChatUsability_RequestClientUsabilityMetrics_Notification) returns (.NoResponse) {
+ option (method_description) = "Request client send usability metrics";
+ }
+}
diff --git a/protocols/Steam/src/protobuf-c/steammessages_clientserver.pb-c.cpp b/protocols/Steam/src/protobuf-c/steammessages_clientserver.pb-c.cpp
new file mode 100644
index 0000000000..394ef867cc
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_clientserver.pb-c.cpp
@@ -0,0 +1,5757 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_clientserver.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "steammessages_clientserver.pb-c.h"
+size_t cmsg_client_register_auth_ticket_with_cm__get_packed_size
+ (const CMsgClientRegisterAuthTicketWithCM *message)
+{
+ assert(message->descriptor == &cmsg_client_register_auth_ticket_with_cm__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_register_auth_ticket_with_cm__pack
+ (const CMsgClientRegisterAuthTicketWithCM *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_register_auth_ticket_with_cm__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_register_auth_ticket_with_cm__pack_to_buffer
+ (const CMsgClientRegisterAuthTicketWithCM *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_register_auth_ticket_with_cm__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRegisterAuthTicketWithCM *
+ cmsg_client_register_auth_ticket_with_cm__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRegisterAuthTicketWithCM *)
+ protobuf_c_message_unpack (&cmsg_client_register_auth_ticket_with_cm__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_register_auth_ticket_with_cm__free_unpacked
+ (CMsgClientRegisterAuthTicketWithCM *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_register_auth_ticket_with_cm__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_ticket_auth_complete__get_packed_size
+ (const CMsgClientTicketAuthComplete *message)
+{
+ assert(message->descriptor == &cmsg_client_ticket_auth_complete__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_ticket_auth_complete__pack
+ (const CMsgClientTicketAuthComplete *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_ticket_auth_complete__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_ticket_auth_complete__pack_to_buffer
+ (const CMsgClientTicketAuthComplete *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_ticket_auth_complete__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientTicketAuthComplete *
+ cmsg_client_ticket_auth_complete__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientTicketAuthComplete *)
+ protobuf_c_message_unpack (&cmsg_client_ticket_auth_complete__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_ticket_auth_complete__free_unpacked
+ (CMsgClientTicketAuthComplete *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_ticket_auth_complete__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_cmlist__get_packed_size
+ (const CMsgClientCMList *message)
+{
+ assert(message->descriptor == &cmsg_client_cmlist__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_cmlist__pack
+ (const CMsgClientCMList *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_cmlist__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_cmlist__pack_to_buffer
+ (const CMsgClientCMList *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_cmlist__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientCMList *
+ cmsg_client_cmlist__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientCMList *)
+ protobuf_c_message_unpack (&cmsg_client_cmlist__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_cmlist__free_unpacked
+ (CMsgClientCMList *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_cmlist__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_p2_pconnection_info__get_packed_size
+ (const CMsgClientP2PConnectionInfo *message)
+{
+ assert(message->descriptor == &cmsg_client_p2_pconnection_info__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_p2_pconnection_info__pack
+ (const CMsgClientP2PConnectionInfo *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_p2_pconnection_info__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_p2_pconnection_info__pack_to_buffer
+ (const CMsgClientP2PConnectionInfo *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_p2_pconnection_info__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientP2PConnectionInfo *
+ cmsg_client_p2_pconnection_info__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientP2PConnectionInfo *)
+ protobuf_c_message_unpack (&cmsg_client_p2_pconnection_info__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_p2_pconnection_info__free_unpacked
+ (CMsgClientP2PConnectionInfo *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_p2_pconnection_info__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_p2_pconnection_fail_info__get_packed_size
+ (const CMsgClientP2PConnectionFailInfo *message)
+{
+ assert(message->descriptor == &cmsg_client_p2_pconnection_fail_info__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_p2_pconnection_fail_info__pack
+ (const CMsgClientP2PConnectionFailInfo *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_p2_pconnection_fail_info__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_p2_pconnection_fail_info__pack_to_buffer
+ (const CMsgClientP2PConnectionFailInfo *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_p2_pconnection_fail_info__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientP2PConnectionFailInfo *
+ cmsg_client_p2_pconnection_fail_info__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientP2PConnectionFailInfo *)
+ protobuf_c_message_unpack (&cmsg_client_p2_pconnection_fail_info__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_p2_pconnection_fail_info__free_unpacked
+ (CMsgClientP2PConnectionFailInfo *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_p2_pconnection_fail_info__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_networking_cert_request__get_packed_size
+ (const CMsgClientNetworkingCertRequest *message)
+{
+ assert(message->descriptor == &cmsg_client_networking_cert_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_networking_cert_request__pack
+ (const CMsgClientNetworkingCertRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_networking_cert_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_networking_cert_request__pack_to_buffer
+ (const CMsgClientNetworkingCertRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_networking_cert_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientNetworkingCertRequest *
+ cmsg_client_networking_cert_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientNetworkingCertRequest *)
+ protobuf_c_message_unpack (&cmsg_client_networking_cert_request__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_networking_cert_request__free_unpacked
+ (CMsgClientNetworkingCertRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_networking_cert_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_networking_cert_reply__get_packed_size
+ (const CMsgClientNetworkingCertReply *message)
+{
+ assert(message->descriptor == &cmsg_client_networking_cert_reply__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_networking_cert_reply__pack
+ (const CMsgClientNetworkingCertReply *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_networking_cert_reply__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_networking_cert_reply__pack_to_buffer
+ (const CMsgClientNetworkingCertReply *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_networking_cert_reply__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientNetworkingCertReply *
+ cmsg_client_networking_cert_reply__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientNetworkingCertReply *)
+ protobuf_c_message_unpack (&cmsg_client_networking_cert_reply__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_networking_cert_reply__free_unpacked
+ (CMsgClientNetworkingCertReply *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_networking_cert_reply__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_networking_mobile_cert_request__get_packed_size
+ (const CMsgClientNetworkingMobileCertRequest *message)
+{
+ assert(message->descriptor == &cmsg_client_networking_mobile_cert_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_networking_mobile_cert_request__pack
+ (const CMsgClientNetworkingMobileCertRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_networking_mobile_cert_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_networking_mobile_cert_request__pack_to_buffer
+ (const CMsgClientNetworkingMobileCertRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_networking_mobile_cert_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientNetworkingMobileCertRequest *
+ cmsg_client_networking_mobile_cert_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientNetworkingMobileCertRequest *)
+ protobuf_c_message_unpack (&cmsg_client_networking_mobile_cert_request__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_networking_mobile_cert_request__free_unpacked
+ (CMsgClientNetworkingMobileCertRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_networking_mobile_cert_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_networking_mobile_cert_reply__get_packed_size
+ (const CMsgClientNetworkingMobileCertReply *message)
+{
+ assert(message->descriptor == &cmsg_client_networking_mobile_cert_reply__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_networking_mobile_cert_reply__pack
+ (const CMsgClientNetworkingMobileCertReply *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_networking_mobile_cert_reply__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_networking_mobile_cert_reply__pack_to_buffer
+ (const CMsgClientNetworkingMobileCertReply *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_networking_mobile_cert_reply__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientNetworkingMobileCertReply *
+ cmsg_client_networking_mobile_cert_reply__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientNetworkingMobileCertReply *)
+ protobuf_c_message_unpack (&cmsg_client_networking_mobile_cert_reply__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_networking_mobile_cert_reply__free_unpacked
+ (CMsgClientNetworkingMobileCertReply *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_networking_mobile_cert_reply__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_get_app_ownership_ticket__get_packed_size
+ (const CMsgClientGetAppOwnershipTicket *message)
+{
+ assert(message->descriptor == &cmsg_client_get_app_ownership_ticket__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_get_app_ownership_ticket__pack
+ (const CMsgClientGetAppOwnershipTicket *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_get_app_ownership_ticket__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_get_app_ownership_ticket__pack_to_buffer
+ (const CMsgClientGetAppOwnershipTicket *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_get_app_ownership_ticket__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGetAppOwnershipTicket *
+ cmsg_client_get_app_ownership_ticket__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGetAppOwnershipTicket *)
+ protobuf_c_message_unpack (&cmsg_client_get_app_ownership_ticket__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_get_app_ownership_ticket__free_unpacked
+ (CMsgClientGetAppOwnershipTicket *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_get_app_ownership_ticket__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_get_app_ownership_ticket_response__get_packed_size
+ (const CMsgClientGetAppOwnershipTicketResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_get_app_ownership_ticket_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_get_app_ownership_ticket_response__pack
+ (const CMsgClientGetAppOwnershipTicketResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_get_app_ownership_ticket_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_get_app_ownership_ticket_response__pack_to_buffer
+ (const CMsgClientGetAppOwnershipTicketResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_get_app_ownership_ticket_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGetAppOwnershipTicketResponse *
+ cmsg_client_get_app_ownership_ticket_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGetAppOwnershipTicketResponse *)
+ protobuf_c_message_unpack (&cmsg_client_get_app_ownership_ticket_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_get_app_ownership_ticket_response__free_unpacked
+ (CMsgClientGetAppOwnershipTicketResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_get_app_ownership_ticket_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_session_token__get_packed_size
+ (const CMsgClientSessionToken *message)
+{
+ assert(message->descriptor == &cmsg_client_session_token__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_session_token__pack
+ (const CMsgClientSessionToken *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_session_token__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_session_token__pack_to_buffer
+ (const CMsgClientSessionToken *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_session_token__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientSessionToken *
+ cmsg_client_session_token__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientSessionToken *)
+ protobuf_c_message_unpack (&cmsg_client_session_token__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_session_token__free_unpacked
+ (CMsgClientSessionToken *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_session_token__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_game_connect_tokens__get_packed_size
+ (const CMsgClientGameConnectTokens *message)
+{
+ assert(message->descriptor == &cmsg_client_game_connect_tokens__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_game_connect_tokens__pack
+ (const CMsgClientGameConnectTokens *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_game_connect_tokens__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_game_connect_tokens__pack_to_buffer
+ (const CMsgClientGameConnectTokens *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_game_connect_tokens__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGameConnectTokens *
+ cmsg_client_game_connect_tokens__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGameConnectTokens *)
+ protobuf_c_message_unpack (&cmsg_client_game_connect_tokens__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_game_connect_tokens__free_unpacked
+ (CMsgClientGameConnectTokens *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_game_connect_tokens__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_games_played__get_packed_size
+ (const CMsgClientGamesPlayed *message)
+{
+ assert(message->descriptor == &cmsg_client_games_played__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_games_played__pack
+ (const CMsgClientGamesPlayed *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_games_played__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_games_played__pack_to_buffer
+ (const CMsgClientGamesPlayed *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_games_played__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGamesPlayed *
+ cmsg_client_games_played__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGamesPlayed *)
+ protobuf_c_message_unpack (&cmsg_client_games_played__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_games_played__free_unpacked
+ (CMsgClientGamesPlayed *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_games_played__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_gsapprove__get_packed_size
+ (const CMsgGSApprove *message)
+{
+ assert(message->descriptor == &cmsg_gsapprove__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_gsapprove__pack
+ (const CMsgGSApprove *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_gsapprove__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_gsapprove__pack_to_buffer
+ (const CMsgGSApprove *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_gsapprove__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgGSApprove *
+ cmsg_gsapprove__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgGSApprove *)
+ protobuf_c_message_unpack (&cmsg_gsapprove__descriptor,
+ allocator, len, data);
+}
+void cmsg_gsapprove__free_unpacked
+ (CMsgGSApprove *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_gsapprove__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_gsdeny__get_packed_size
+ (const CMsgGSDeny *message)
+{
+ assert(message->descriptor == &cmsg_gsdeny__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_gsdeny__pack
+ (const CMsgGSDeny *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_gsdeny__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_gsdeny__pack_to_buffer
+ (const CMsgGSDeny *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_gsdeny__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgGSDeny *
+ cmsg_gsdeny__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgGSDeny *)
+ protobuf_c_message_unpack (&cmsg_gsdeny__descriptor,
+ allocator, len, data);
+}
+void cmsg_gsdeny__free_unpacked
+ (CMsgGSDeny *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_gsdeny__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_gskick__get_packed_size
+ (const CMsgGSKick *message)
+{
+ assert(message->descriptor == &cmsg_gskick__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_gskick__pack
+ (const CMsgGSKick *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_gskick__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_gskick__pack_to_buffer
+ (const CMsgGSKick *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_gskick__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgGSKick *
+ cmsg_gskick__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgGSKick *)
+ protobuf_c_message_unpack (&cmsg_gskick__descriptor,
+ allocator, len, data);
+}
+void cmsg_gskick__free_unpacked
+ (CMsgGSKick *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_gskick__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_auth_list__get_packed_size
+ (const CMsgClientAuthList *message)
+{
+ assert(message->descriptor == &cmsg_client_auth_list__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_auth_list__pack
+ (const CMsgClientAuthList *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_auth_list__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_auth_list__pack_to_buffer
+ (const CMsgClientAuthList *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_auth_list__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAuthList *
+ cmsg_client_auth_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAuthList *)
+ protobuf_c_message_unpack (&cmsg_client_auth_list__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_auth_list__free_unpacked
+ (CMsgClientAuthList *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_auth_list__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_auth_list_ack__get_packed_size
+ (const CMsgClientAuthListAck *message)
+{
+ assert(message->descriptor == &cmsg_client_auth_list_ack__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_auth_list_ack__pack
+ (const CMsgClientAuthListAck *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_auth_list_ack__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_auth_list_ack__pack_to_buffer
+ (const CMsgClientAuthListAck *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_auth_list_ack__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAuthListAck *
+ cmsg_client_auth_list_ack__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAuthListAck *)
+ protobuf_c_message_unpack (&cmsg_client_auth_list_ack__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_auth_list_ack__free_unpacked
+ (CMsgClientAuthListAck *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_auth_list_ack__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_license_list__get_packed_size
+ (const CMsgClientLicenseList *message)
+{
+ assert(message->descriptor == &cmsg_client_license_list__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_license_list__pack
+ (const CMsgClientLicenseList *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_license_list__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_license_list__pack_to_buffer
+ (const CMsgClientLicenseList *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_license_list__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientLicenseList *
+ cmsg_client_license_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientLicenseList *)
+ protobuf_c_message_unpack (&cmsg_client_license_list__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_license_list__free_unpacked
+ (CMsgClientLicenseList *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_license_list__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_is_limited_account__get_packed_size
+ (const CMsgClientIsLimitedAccount *message)
+{
+ assert(message->descriptor == &cmsg_client_is_limited_account__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_is_limited_account__pack
+ (const CMsgClientIsLimitedAccount *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_is_limited_account__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_is_limited_account__pack_to_buffer
+ (const CMsgClientIsLimitedAccount *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_is_limited_account__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientIsLimitedAccount *
+ cmsg_client_is_limited_account__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientIsLimitedAccount *)
+ protobuf_c_message_unpack (&cmsg_client_is_limited_account__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_is_limited_account__free_unpacked
+ (CMsgClientIsLimitedAccount *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_is_limited_account__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_requested_client_stats__get_packed_size
+ (const CMsgClientRequestedClientStats *message)
+{
+ assert(message->descriptor == &cmsg_client_requested_client_stats__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_requested_client_stats__pack
+ (const CMsgClientRequestedClientStats *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_requested_client_stats__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_requested_client_stats__pack_to_buffer
+ (const CMsgClientRequestedClientStats *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_requested_client_stats__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestedClientStats *
+ cmsg_client_requested_client_stats__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestedClientStats *)
+ protobuf_c_message_unpack (&cmsg_client_requested_client_stats__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_requested_client_stats__free_unpacked
+ (CMsgClientRequestedClientStats *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_requested_client_stats__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_stat2__get_packed_size
+ (const CMsgClientStat2 *message)
+{
+ assert(message->descriptor == &cmsg_client_stat2__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_stat2__pack
+ (const CMsgClientStat2 *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_stat2__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_stat2__pack_to_buffer
+ (const CMsgClientStat2 *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_stat2__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientStat2 *
+ cmsg_client_stat2__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientStat2 *)
+ protobuf_c_message_unpack (&cmsg_client_stat2__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_stat2__free_unpacked
+ (CMsgClientStat2 *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_stat2__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_invite_to_game__get_packed_size
+ (const CMsgClientInviteToGame *message)
+{
+ assert(message->descriptor == &cmsg_client_invite_to_game__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_invite_to_game__pack
+ (const CMsgClientInviteToGame *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_invite_to_game__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_invite_to_game__pack_to_buffer
+ (const CMsgClientInviteToGame *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_invite_to_game__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientInviteToGame *
+ cmsg_client_invite_to_game__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientInviteToGame *)
+ protobuf_c_message_unpack (&cmsg_client_invite_to_game__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_invite_to_game__free_unpacked
+ (CMsgClientInviteToGame *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_invite_to_game__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_chat_invite__get_packed_size
+ (const CMsgClientChatInvite *message)
+{
+ assert(message->descriptor == &cmsg_client_chat_invite__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_chat_invite__pack
+ (const CMsgClientChatInvite *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_chat_invite__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_chat_invite__pack_to_buffer
+ (const CMsgClientChatInvite *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_chat_invite__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientChatInvite *
+ cmsg_client_chat_invite__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientChatInvite *)
+ protobuf_c_message_unpack (&cmsg_client_chat_invite__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_chat_invite__free_unpacked
+ (CMsgClientChatInvite *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_chat_invite__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_connection_stats__get_packed_size
+ (const CMsgClientConnectionStats *message)
+{
+ assert(message->descriptor == &cmsg_client_connection_stats__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_connection_stats__pack
+ (const CMsgClientConnectionStats *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_connection_stats__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_connection_stats__pack_to_buffer
+ (const CMsgClientConnectionStats *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_connection_stats__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientConnectionStats *
+ cmsg_client_connection_stats__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientConnectionStats *)
+ protobuf_c_message_unpack (&cmsg_client_connection_stats__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_connection_stats__free_unpacked
+ (CMsgClientConnectionStats *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_connection_stats__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_servers_available__get_packed_size
+ (const CMsgClientServersAvailable *message)
+{
+ assert(message->descriptor == &cmsg_client_servers_available__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_servers_available__pack
+ (const CMsgClientServersAvailable *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_servers_available__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_servers_available__pack_to_buffer
+ (const CMsgClientServersAvailable *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_servers_available__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientServersAvailable *
+ cmsg_client_servers_available__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientServersAvailable *)
+ protobuf_c_message_unpack (&cmsg_client_servers_available__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_servers_available__free_unpacked
+ (CMsgClientServersAvailable *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_servers_available__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_report_overlay_detour_failure__get_packed_size
+ (const CMsgClientReportOverlayDetourFailure *message)
+{
+ assert(message->descriptor == &cmsg_client_report_overlay_detour_failure__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_report_overlay_detour_failure__pack
+ (const CMsgClientReportOverlayDetourFailure *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_report_overlay_detour_failure__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_report_overlay_detour_failure__pack_to_buffer
+ (const CMsgClientReportOverlayDetourFailure *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_report_overlay_detour_failure__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientReportOverlayDetourFailure *
+ cmsg_client_report_overlay_detour_failure__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientReportOverlayDetourFailure *)
+ protobuf_c_message_unpack (&cmsg_client_report_overlay_detour_failure__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_report_overlay_detour_failure__free_unpacked
+ (CMsgClientReportOverlayDetourFailure *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_report_overlay_detour_failure__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_request_encrypted_app_ticket__get_packed_size
+ (const CMsgClientRequestEncryptedAppTicket *message)
+{
+ assert(message->descriptor == &cmsg_client_request_encrypted_app_ticket__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_request_encrypted_app_ticket__pack
+ (const CMsgClientRequestEncryptedAppTicket *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_request_encrypted_app_ticket__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_request_encrypted_app_ticket__pack_to_buffer
+ (const CMsgClientRequestEncryptedAppTicket *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_request_encrypted_app_ticket__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestEncryptedAppTicket *
+ cmsg_client_request_encrypted_app_ticket__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestEncryptedAppTicket *)
+ protobuf_c_message_unpack (&cmsg_client_request_encrypted_app_ticket__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_request_encrypted_app_ticket__free_unpacked
+ (CMsgClientRequestEncryptedAppTicket *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_request_encrypted_app_ticket__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_request_encrypted_app_ticket_response__get_packed_size
+ (const CMsgClientRequestEncryptedAppTicketResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_request_encrypted_app_ticket_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_request_encrypted_app_ticket_response__pack
+ (const CMsgClientRequestEncryptedAppTicketResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_request_encrypted_app_ticket_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_request_encrypted_app_ticket_response__pack_to_buffer
+ (const CMsgClientRequestEncryptedAppTicketResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_request_encrypted_app_ticket_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestEncryptedAppTicketResponse *
+ cmsg_client_request_encrypted_app_ticket_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestEncryptedAppTicketResponse *)
+ protobuf_c_message_unpack (&cmsg_client_request_encrypted_app_ticket_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_request_encrypted_app_ticket_response__free_unpacked
+ (CMsgClientRequestEncryptedAppTicketResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_request_encrypted_app_ticket_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_wallet_info_update__get_packed_size
+ (const CMsgClientWalletInfoUpdate *message)
+{
+ assert(message->descriptor == &cmsg_client_wallet_info_update__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_wallet_info_update__pack
+ (const CMsgClientWalletInfoUpdate *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_wallet_info_update__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_wallet_info_update__pack_to_buffer
+ (const CMsgClientWalletInfoUpdate *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_wallet_info_update__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientWalletInfoUpdate *
+ cmsg_client_wallet_info_update__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientWalletInfoUpdate *)
+ protobuf_c_message_unpack (&cmsg_client_wallet_info_update__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_wallet_info_update__free_unpacked
+ (CMsgClientWalletInfoUpdate *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_wallet_info_update__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_amget_clan_officers__get_packed_size
+ (const CMsgClientAMGetClanOfficers *message)
+{
+ assert(message->descriptor == &cmsg_client_amget_clan_officers__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_amget_clan_officers__pack
+ (const CMsgClientAMGetClanOfficers *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_amget_clan_officers__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_amget_clan_officers__pack_to_buffer
+ (const CMsgClientAMGetClanOfficers *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_amget_clan_officers__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAMGetClanOfficers *
+ cmsg_client_amget_clan_officers__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAMGetClanOfficers *)
+ protobuf_c_message_unpack (&cmsg_client_amget_clan_officers__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_amget_clan_officers__free_unpacked
+ (CMsgClientAMGetClanOfficers *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_amget_clan_officers__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_amget_clan_officers_response__get_packed_size
+ (const CMsgClientAMGetClanOfficersResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_amget_clan_officers_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_amget_clan_officers_response__pack
+ (const CMsgClientAMGetClanOfficersResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_amget_clan_officers_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_amget_clan_officers_response__pack_to_buffer
+ (const CMsgClientAMGetClanOfficersResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_amget_clan_officers_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAMGetClanOfficersResponse *
+ cmsg_client_amget_clan_officers_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAMGetClanOfficersResponse *)
+ protobuf_c_message_unpack (&cmsg_client_amget_clan_officers_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_amget_clan_officers_response__free_unpacked
+ (CMsgClientAMGetClanOfficersResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_amget_clan_officers_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_amget_persona_name_history__get_packed_size
+ (const CMsgClientAMGetPersonaNameHistory *message)
+{
+ assert(message->descriptor == &cmsg_client_amget_persona_name_history__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_amget_persona_name_history__pack
+ (const CMsgClientAMGetPersonaNameHistory *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_amget_persona_name_history__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_amget_persona_name_history__pack_to_buffer
+ (const CMsgClientAMGetPersonaNameHistory *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_amget_persona_name_history__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAMGetPersonaNameHistory *
+ cmsg_client_amget_persona_name_history__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAMGetPersonaNameHistory *)
+ protobuf_c_message_unpack (&cmsg_client_amget_persona_name_history__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_amget_persona_name_history__free_unpacked
+ (CMsgClientAMGetPersonaNameHistory *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_amget_persona_name_history__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_amget_persona_name_history_response__get_packed_size
+ (const CMsgClientAMGetPersonaNameHistoryResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_amget_persona_name_history_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_amget_persona_name_history_response__pack
+ (const CMsgClientAMGetPersonaNameHistoryResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_amget_persona_name_history_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_amget_persona_name_history_response__pack_to_buffer
+ (const CMsgClientAMGetPersonaNameHistoryResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_amget_persona_name_history_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAMGetPersonaNameHistoryResponse *
+ cmsg_client_amget_persona_name_history_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAMGetPersonaNameHistoryResponse *)
+ protobuf_c_message_unpack (&cmsg_client_amget_persona_name_history_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_amget_persona_name_history_response__free_unpacked
+ (CMsgClientAMGetPersonaNameHistoryResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_amget_persona_name_history_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_deregister_with_server__get_packed_size
+ (const CMsgClientDeregisterWithServer *message)
+{
+ assert(message->descriptor == &cmsg_client_deregister_with_server__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_deregister_with_server__pack
+ (const CMsgClientDeregisterWithServer *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_deregister_with_server__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_deregister_with_server__pack_to_buffer
+ (const CMsgClientDeregisterWithServer *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_deregister_with_server__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientDeregisterWithServer *
+ cmsg_client_deregister_with_server__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientDeregisterWithServer *)
+ protobuf_c_message_unpack (&cmsg_client_deregister_with_server__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_deregister_with_server__free_unpacked
+ (CMsgClientDeregisterWithServer *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_deregister_with_server__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_clan_state__get_packed_size
+ (const CMsgClientClanState *message)
+{
+ assert(message->descriptor == &cmsg_client_clan_state__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_clan_state__pack
+ (const CMsgClientClanState *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_clan_state__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_clan_state__pack_to_buffer
+ (const CMsgClientClanState *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_clan_state__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientClanState *
+ cmsg_client_clan_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientClanState *)
+ protobuf_c_message_unpack (&cmsg_client_clan_state__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_clan_state__free_unpacked
+ (CMsgClientClanState *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_clan_state__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+static const ProtobufCFieldDescriptor cmsg_client_register_auth_ticket_with_cm__field_descriptors[3] =
+{
+ {
+ "protocol_version",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRegisterAuthTicketWithCM, has_protocol_version),
+ offsetof(CMsgClientRegisterAuthTicketWithCM, protocol_version),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ticket",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientRegisterAuthTicketWithCM, has_ticket),
+ offsetof(CMsgClientRegisterAuthTicketWithCM, ticket),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "client_instance_id",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientRegisterAuthTicketWithCM, has_client_instance_id),
+ offsetof(CMsgClientRegisterAuthTicketWithCM, client_instance_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_register_auth_ticket_with_cm__field_indices_by_name[] = {
+ 2, /* field[2] = client_instance_id */
+ 0, /* field[0] = protocol_version */
+ 1, /* field[1] = ticket */
+};
+static const ProtobufCIntRange cmsg_client_register_auth_ticket_with_cm__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 3, 1 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_register_auth_ticket_with_cm__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRegisterAuthTicketWithCM",
+ "CMsgClientRegisterAuthTicketWithCM",
+ "CMsgClientRegisterAuthTicketWithCM",
+ "",
+ sizeof(CMsgClientRegisterAuthTicketWithCM),
+ 3,
+ cmsg_client_register_auth_ticket_with_cm__field_descriptors,
+ cmsg_client_register_auth_ticket_with_cm__field_indices_by_name,
+ 2, cmsg_client_register_auth_ticket_with_cm__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_ticket_auth_complete__field_descriptors[8] =
+{
+ {
+ "steam_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientTicketAuthComplete, has_steam_id),
+ offsetof(CMsgClientTicketAuthComplete, steam_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientTicketAuthComplete, has_game_id),
+ offsetof(CMsgClientTicketAuthComplete, game_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "estate",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientTicketAuthComplete, has_estate),
+ offsetof(CMsgClientTicketAuthComplete, estate),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "eauth_session_response",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientTicketAuthComplete, has_eauth_session_response),
+ offsetof(CMsgClientTicketAuthComplete, eauth_session_response),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DEPRECATED_ticket",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientTicketAuthComplete, has_deprecated_ticket),
+ offsetof(CMsgClientTicketAuthComplete, deprecated_ticket),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ticket_crc",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientTicketAuthComplete, has_ticket_crc),
+ offsetof(CMsgClientTicketAuthComplete, ticket_crc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ticket_sequence",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientTicketAuthComplete, has_ticket_sequence),
+ offsetof(CMsgClientTicketAuthComplete, ticket_sequence),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "owner_steam_id",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientTicketAuthComplete, has_owner_steam_id),
+ offsetof(CMsgClientTicketAuthComplete, owner_steam_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_ticket_auth_complete__field_indices_by_name[] = {
+ 4, /* field[4] = DEPRECATED_ticket */
+ 3, /* field[3] = eauth_session_response */
+ 2, /* field[2] = estate */
+ 1, /* field[1] = game_id */
+ 7, /* field[7] = owner_steam_id */
+ 0, /* field[0] = steam_id */
+ 5, /* field[5] = ticket_crc */
+ 6, /* field[6] = ticket_sequence */
+};
+static const ProtobufCIntRange cmsg_client_ticket_auth_complete__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor cmsg_client_ticket_auth_complete__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientTicketAuthComplete",
+ "CMsgClientTicketAuthComplete",
+ "CMsgClientTicketAuthComplete",
+ "",
+ sizeof(CMsgClientTicketAuthComplete),
+ 8,
+ cmsg_client_ticket_auth_complete__field_descriptors,
+ cmsg_client_ticket_auth_complete__field_indices_by_name,
+ 1, cmsg_client_ticket_auth_complete__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_cmlist__field_descriptors[4] =
+{
+ {
+ "cm_addresses",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCMList, n_cm_addresses),
+ offsetof(CMsgClientCMList, cm_addresses),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "cm_ports",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCMList, n_cm_ports),
+ offsetof(CMsgClientCMList, cm_ports),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "cm_websocket_addresses",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_STRING,
+ offsetof(CMsgClientCMList, n_cm_websocket_addresses),
+ offsetof(CMsgClientCMList, cm_websocket_addresses),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "percent_default_to_websocket",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCMList, has_percent_default_to_websocket),
+ offsetof(CMsgClientCMList, percent_default_to_websocket),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_cmlist__field_indices_by_name[] = {
+ 0, /* field[0] = cm_addresses */
+ 1, /* field[1] = cm_ports */
+ 2, /* field[2] = cm_websocket_addresses */
+ 3, /* field[3] = percent_default_to_websocket */
+};
+static const ProtobufCIntRange cmsg_client_cmlist__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cmsg_client_cmlist__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientCMList",
+ "CMsgClientCMList",
+ "CMsgClientCMList",
+ "",
+ sizeof(CMsgClientCMList),
+ 4,
+ cmsg_client_cmlist__field_descriptors,
+ cmsg_client_cmlist__field_indices_by_name,
+ 1, cmsg_client_cmlist__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_p2_pconnection_info__field_descriptors[6] =
+{
+ {
+ "steam_id_dest",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientP2PConnectionInfo, has_steam_id_dest),
+ offsetof(CMsgClientP2PConnectionInfo, steam_id_dest),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steam_id_src",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientP2PConnectionInfo, has_steam_id_src),
+ offsetof(CMsgClientP2PConnectionInfo, steam_id_src),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientP2PConnectionInfo, has_app_id),
+ offsetof(CMsgClientP2PConnectionInfo, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "candidate",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientP2PConnectionInfo, has_candidate),
+ offsetof(CMsgClientP2PConnectionInfo, candidate),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "legacy_connection_id_src",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientP2PConnectionInfo, has_legacy_connection_id_src),
+ offsetof(CMsgClientP2PConnectionInfo, legacy_connection_id_src),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "rendezvous",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientP2PConnectionInfo, has_rendezvous),
+ offsetof(CMsgClientP2PConnectionInfo, rendezvous),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_p2_pconnection_info__field_indices_by_name[] = {
+ 2, /* field[2] = app_id */
+ 3, /* field[3] = candidate */
+ 4, /* field[4] = legacy_connection_id_src */
+ 5, /* field[5] = rendezvous */
+ 0, /* field[0] = steam_id_dest */
+ 1, /* field[1] = steam_id_src */
+};
+static const ProtobufCIntRange cmsg_client_p2_pconnection_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor cmsg_client_p2_pconnection_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientP2PConnectionInfo",
+ "CMsgClientP2PConnectionInfo",
+ "CMsgClientP2PConnectionInfo",
+ "",
+ sizeof(CMsgClientP2PConnectionInfo),
+ 6,
+ cmsg_client_p2_pconnection_info__field_descriptors,
+ cmsg_client_p2_pconnection_info__field_indices_by_name,
+ 1, cmsg_client_p2_pconnection_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_p2_pconnection_fail_info__field_descriptors[7] =
+{
+ {
+ "steam_id_dest",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientP2PConnectionFailInfo, has_steam_id_dest),
+ offsetof(CMsgClientP2PConnectionFailInfo, steam_id_dest),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steam_id_src",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientP2PConnectionFailInfo, has_steam_id_src),
+ offsetof(CMsgClientP2PConnectionFailInfo, steam_id_src),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientP2PConnectionFailInfo, has_app_id),
+ offsetof(CMsgClientP2PConnectionFailInfo, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ep2p_session_error",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientP2PConnectionFailInfo, has_ep2p_session_error),
+ offsetof(CMsgClientP2PConnectionFailInfo, ep2p_session_error),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "connection_id_dest",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientP2PConnectionFailInfo, has_connection_id_dest),
+ offsetof(CMsgClientP2PConnectionFailInfo, connection_id_dest),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "close_reason",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientP2PConnectionFailInfo, has_close_reason),
+ offsetof(CMsgClientP2PConnectionFailInfo, close_reason),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "close_message",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientP2PConnectionFailInfo, close_message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_p2_pconnection_fail_info__field_indices_by_name[] = {
+ 2, /* field[2] = app_id */
+ 6, /* field[6] = close_message */
+ 5, /* field[5] = close_reason */
+ 4, /* field[4] = connection_id_dest */
+ 3, /* field[3] = ep2p_session_error */
+ 0, /* field[0] = steam_id_dest */
+ 1, /* field[1] = steam_id_src */
+};
+static const ProtobufCIntRange cmsg_client_p2_pconnection_fail_info__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 7, 5 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cmsg_client_p2_pconnection_fail_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientP2PConnectionFailInfo",
+ "CMsgClientP2PConnectionFailInfo",
+ "CMsgClientP2PConnectionFailInfo",
+ "",
+ sizeof(CMsgClientP2PConnectionFailInfo),
+ 7,
+ cmsg_client_p2_pconnection_fail_info__field_descriptors,
+ cmsg_client_p2_pconnection_fail_info__field_indices_by_name,
+ 2, cmsg_client_p2_pconnection_fail_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_networking_cert_request__field_descriptors[2] =
+{
+ {
+ "key_data",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientNetworkingCertRequest, has_key_data),
+ offsetof(CMsgClientNetworkingCertRequest, key_data),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientNetworkingCertRequest, has_app_id),
+ offsetof(CMsgClientNetworkingCertRequest, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_networking_cert_request__field_indices_by_name[] = {
+ 1, /* field[1] = app_id */
+ 0, /* field[0] = key_data */
+};
+static const ProtobufCIntRange cmsg_client_networking_cert_request__number_ranges[1 + 1] =
+{
+ { 2, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_networking_cert_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientNetworkingCertRequest",
+ "CMsgClientNetworkingCertRequest",
+ "CMsgClientNetworkingCertRequest",
+ "",
+ sizeof(CMsgClientNetworkingCertRequest),
+ 2,
+ cmsg_client_networking_cert_request__field_descriptors,
+ cmsg_client_networking_cert_request__field_indices_by_name,
+ 1, cmsg_client_networking_cert_request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_networking_cert_reply__field_descriptors[3] =
+{
+ {
+ "cert",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientNetworkingCertReply, has_cert),
+ offsetof(CMsgClientNetworkingCertReply, cert),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ca_key_id",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientNetworkingCertReply, has_ca_key_id),
+ offsetof(CMsgClientNetworkingCertReply, ca_key_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ca_signature",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientNetworkingCertReply, has_ca_signature),
+ offsetof(CMsgClientNetworkingCertReply, ca_signature),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_networking_cert_reply__field_indices_by_name[] = {
+ 1, /* field[1] = ca_key_id */
+ 2, /* field[2] = ca_signature */
+ 0, /* field[0] = cert */
+};
+static const ProtobufCIntRange cmsg_client_networking_cert_reply__number_ranges[1 + 1] =
+{
+ { 4, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_networking_cert_reply__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientNetworkingCertReply",
+ "CMsgClientNetworkingCertReply",
+ "CMsgClientNetworkingCertReply",
+ "",
+ sizeof(CMsgClientNetworkingCertReply),
+ 3,
+ cmsg_client_networking_cert_reply__field_descriptors,
+ cmsg_client_networking_cert_reply__field_indices_by_name,
+ 1, cmsg_client_networking_cert_reply__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_networking_mobile_cert_request__field_descriptors[1] =
+{
+ {
+ "app_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientNetworkingMobileCertRequest, has_app_id),
+ offsetof(CMsgClientNetworkingMobileCertRequest, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_networking_mobile_cert_request__field_indices_by_name[] = {
+ 0, /* field[0] = app_id */
+};
+static const ProtobufCIntRange cmsg_client_networking_mobile_cert_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_networking_mobile_cert_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientNetworkingMobileCertRequest",
+ "CMsgClientNetworkingMobileCertRequest",
+ "CMsgClientNetworkingMobileCertRequest",
+ "",
+ sizeof(CMsgClientNetworkingMobileCertRequest),
+ 1,
+ cmsg_client_networking_mobile_cert_request__field_descriptors,
+ cmsg_client_networking_mobile_cert_request__field_indices_by_name,
+ 1, cmsg_client_networking_mobile_cert_request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_networking_mobile_cert_reply__field_descriptors[1] =
+{
+ {
+ "encoded_cert",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientNetworkingMobileCertReply, encoded_cert),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_networking_mobile_cert_reply__field_indices_by_name[] = {
+ 0, /* field[0] = encoded_cert */
+};
+static const ProtobufCIntRange cmsg_client_networking_mobile_cert_reply__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_networking_mobile_cert_reply__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientNetworkingMobileCertReply",
+ "CMsgClientNetworkingMobileCertReply",
+ "CMsgClientNetworkingMobileCertReply",
+ "",
+ sizeof(CMsgClientNetworkingMobileCertReply),
+ 1,
+ cmsg_client_networking_mobile_cert_reply__field_descriptors,
+ cmsg_client_networking_mobile_cert_reply__field_indices_by_name,
+ 1, cmsg_client_networking_mobile_cert_reply__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_get_app_ownership_ticket__field_descriptors[1] =
+{
+ {
+ "app_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetAppOwnershipTicket, has_app_id),
+ offsetof(CMsgClientGetAppOwnershipTicket, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_get_app_ownership_ticket__field_indices_by_name[] = {
+ 0, /* field[0] = app_id */
+};
+static const ProtobufCIntRange cmsg_client_get_app_ownership_ticket__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_get_app_ownership_ticket__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGetAppOwnershipTicket",
+ "CMsgClientGetAppOwnershipTicket",
+ "CMsgClientGetAppOwnershipTicket",
+ "",
+ sizeof(CMsgClientGetAppOwnershipTicket),
+ 1,
+ cmsg_client_get_app_ownership_ticket__field_descriptors,
+ cmsg_client_get_app_ownership_ticket__field_indices_by_name,
+ 1, cmsg_client_get_app_ownership_ticket__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const uint32_t cmsg_client_get_app_ownership_ticket_response__eresult__default_value = 2u;
+static const ProtobufCFieldDescriptor cmsg_client_get_app_ownership_ticket_response__field_descriptors[3] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetAppOwnershipTicketResponse, has_eresult),
+ offsetof(CMsgClientGetAppOwnershipTicketResponse, eresult),
+ NULL,
+ &cmsg_client_get_app_ownership_ticket_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetAppOwnershipTicketResponse, has_app_id),
+ offsetof(CMsgClientGetAppOwnershipTicketResponse, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ticket",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientGetAppOwnershipTicketResponse, has_ticket),
+ offsetof(CMsgClientGetAppOwnershipTicketResponse, ticket),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_get_app_ownership_ticket_response__field_indices_by_name[] = {
+ 1, /* field[1] = app_id */
+ 0, /* field[0] = eresult */
+ 2, /* field[2] = ticket */
+};
+static const ProtobufCIntRange cmsg_client_get_app_ownership_ticket_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_get_app_ownership_ticket_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGetAppOwnershipTicketResponse",
+ "CMsgClientGetAppOwnershipTicketResponse",
+ "CMsgClientGetAppOwnershipTicketResponse",
+ "",
+ sizeof(CMsgClientGetAppOwnershipTicketResponse),
+ 3,
+ cmsg_client_get_app_ownership_ticket_response__field_descriptors,
+ cmsg_client_get_app_ownership_ticket_response__field_indices_by_name,
+ 1, cmsg_client_get_app_ownership_ticket_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_session_token__field_descriptors[1] =
+{
+ {
+ "token",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientSessionToken, has_token),
+ offsetof(CMsgClientSessionToken, token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_session_token__field_indices_by_name[] = {
+ 0, /* field[0] = token */
+};
+static const ProtobufCIntRange cmsg_client_session_token__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_session_token__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientSessionToken",
+ "CMsgClientSessionToken",
+ "CMsgClientSessionToken",
+ "",
+ sizeof(CMsgClientSessionToken),
+ 1,
+ cmsg_client_session_token__field_descriptors,
+ cmsg_client_session_token__field_indices_by_name,
+ 1, cmsg_client_session_token__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const uint32_t cmsg_client_game_connect_tokens__max_tokens_to_keep__default_value = 10u;
+static const ProtobufCFieldDescriptor cmsg_client_game_connect_tokens__field_descriptors[2] =
+{
+ {
+ "max_tokens_to_keep",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGameConnectTokens, has_max_tokens_to_keep),
+ offsetof(CMsgClientGameConnectTokens, max_tokens_to_keep),
+ NULL,
+ &cmsg_client_game_connect_tokens__max_tokens_to_keep__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "tokens",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientGameConnectTokens, n_tokens),
+ offsetof(CMsgClientGameConnectTokens, tokens),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_game_connect_tokens__field_indices_by_name[] = {
+ 0, /* field[0] = max_tokens_to_keep */
+ 1, /* field[1] = tokens */
+};
+static const ProtobufCIntRange cmsg_client_game_connect_tokens__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_game_connect_tokens__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGameConnectTokens",
+ "CMsgClientGameConnectTokens",
+ "CMsgClientGameConnectTokens",
+ "",
+ sizeof(CMsgClientGameConnectTokens),
+ 2,
+ cmsg_client_game_connect_tokens__field_descriptors,
+ cmsg_client_game_connect_tokens__field_indices_by_name,
+ 1, cmsg_client_game_connect_tokens__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_games_played__process_info__field_descriptors[3] =
+{
+ {
+ "process_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__ProcessInfo, has_process_id),
+ offsetof(CMsgClientGamesPlayed__ProcessInfo, process_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "process_id_parent",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__ProcessInfo, has_process_id_parent),
+ offsetof(CMsgClientGamesPlayed__ProcessInfo, process_id_parent),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "parent_is_steam",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientGamesPlayed__ProcessInfo, has_parent_is_steam),
+ offsetof(CMsgClientGamesPlayed__ProcessInfo, parent_is_steam),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_games_played__process_info__field_indices_by_name[] = {
+ 2, /* field[2] = parent_is_steam */
+ 0, /* field[0] = process_id */
+ 1, /* field[1] = process_id_parent */
+};
+static const ProtobufCIntRange cmsg_client_games_played__process_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_games_played__process_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGamesPlayed.ProcessInfo",
+ "ProcessInfo",
+ "CMsgClientGamesPlayed__ProcessInfo",
+ "",
+ sizeof(CMsgClientGamesPlayed__ProcessInfo),
+ 3,
+ cmsg_client_games_played__process_info__field_descriptors,
+ cmsg_client_games_played__process_info__field_indices_by_name,
+ 1, cmsg_client_games_played__process_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const uint32_t cmsg_client_games_played__game_played__launch_option_type__default_value = 0u;
+static const int32_t cmsg_client_games_played__game_played__primary_controller_type__default_value = -1;
+static const uint32_t cmsg_client_games_played__game_played__total_steam_controller_count__default_value = 0u;
+static const uint32_t cmsg_client_games_played__game_played__total_non_steam_controller_count__default_value = 0u;
+static const uint64_t cmsg_client_games_played__game_played__controller_workshop_file_id__default_value = 0ull;
+static const uint32_t cmsg_client_games_played__game_played__launch_source__default_value = 0u;
+static const uint32_t cmsg_client_games_played__game_played__controller_connection_type__default_value = 0u;
+static const uint32_t cmsg_client_games_played__game_played__compat_tool_id__default_value = 0u;
+static const ProtobufCFieldDescriptor cmsg_client_games_played__game_played__field_descriptors[32] =
+{
+ {
+ "steam_id_gs",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_steam_id_gs),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, steam_id_gs),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_game_id),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, game_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "deprecated_game_ip_address",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_deprecated_game_ip_address),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, deprecated_game_ip_address),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_port",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_game_port),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, game_port),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_secure",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_is_secure),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, is_secure),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "token",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_token),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_extra_info",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientGamesPlayed__GamePlayed, game_extra_info),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_data_blob",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_game_data_blob),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, game_data_blob),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "process_id",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_process_id),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, process_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "streaming_provider_id",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_streaming_provider_id),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, streaming_provider_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_flags",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_game_flags),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, game_flags),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "owner_id",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_owner_id),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, owner_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "vr_hmd_vendor",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientGamesPlayed__GamePlayed, vr_hmd_vendor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "vr_hmd_model",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientGamesPlayed__GamePlayed, vr_hmd_model),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "launch_option_type",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_launch_option_type),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, launch_option_type),
+ NULL,
+ &cmsg_client_games_played__game_played__launch_option_type__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "primary_controller_type",
+ 16,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_primary_controller_type),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, primary_controller_type),
+ NULL,
+ &cmsg_client_games_played__game_played__primary_controller_type__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "primary_steam_controller_serial",
+ 17,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientGamesPlayed__GamePlayed, primary_steam_controller_serial),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "total_steam_controller_count",
+ 18,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_total_steam_controller_count),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, total_steam_controller_count),
+ NULL,
+ &cmsg_client_games_played__game_played__total_steam_controller_count__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "total_non_steam_controller_count",
+ 19,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_total_non_steam_controller_count),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, total_non_steam_controller_count),
+ NULL,
+ &cmsg_client_games_played__game_played__total_non_steam_controller_count__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "controller_workshop_file_id",
+ 20,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_controller_workshop_file_id),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, controller_workshop_file_id),
+ NULL,
+ &cmsg_client_games_played__game_played__controller_workshop_file_id__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "launch_source",
+ 21,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_launch_source),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, launch_source),
+ NULL,
+ &cmsg_client_games_played__game_played__launch_source__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "vr_hmd_runtime",
+ 22,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_vr_hmd_runtime),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, vr_hmd_runtime),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_ip_address",
+ 23,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientGamesPlayed__GamePlayed, game_ip_address),
+ &cmsg_ipaddress__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "controller_connection_type",
+ 24,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_controller_connection_type),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, controller_connection_type),
+ NULL,
+ &cmsg_client_games_played__game_played__controller_connection_type__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_os_platform",
+ 25,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_game_os_platform),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, game_os_platform),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_build_id",
+ 26,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_game_build_id),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, game_build_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "compat_tool_id",
+ 27,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_compat_tool_id),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, compat_tool_id),
+ NULL,
+ &cmsg_client_games_played__game_played__compat_tool_id__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "compat_tool_cmd",
+ 28,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientGamesPlayed__GamePlayed, compat_tool_cmd),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "compat_tool_build_id",
+ 29,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_compat_tool_build_id),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, compat_tool_build_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "beta_name",
+ 30,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientGamesPlayed__GamePlayed, beta_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "dlc_context",
+ 31,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, has_dlc_context),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, dlc_context),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "process_id_list",
+ 32,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientGamesPlayed__GamePlayed, n_process_id_list),
+ offsetof(CMsgClientGamesPlayed__GamePlayed, process_id_list),
+ &cmsg_client_games_played__process_info__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_games_played__game_played__field_indices_by_name[] = {
+ 29, /* field[29] = beta_name */
+ 28, /* field[28] = compat_tool_build_id */
+ 27, /* field[27] = compat_tool_cmd */
+ 26, /* field[26] = compat_tool_id */
+ 23, /* field[23] = controller_connection_type */
+ 19, /* field[19] = controller_workshop_file_id */
+ 2, /* field[2] = deprecated_game_ip_address */
+ 30, /* field[30] = dlc_context */
+ 25, /* field[25] = game_build_id */
+ 7, /* field[7] = game_data_blob */
+ 6, /* field[6] = game_extra_info */
+ 10, /* field[10] = game_flags */
+ 1, /* field[1] = game_id */
+ 22, /* field[22] = game_ip_address */
+ 24, /* field[24] = game_os_platform */
+ 3, /* field[3] = game_port */
+ 4, /* field[4] = is_secure */
+ 14, /* field[14] = launch_option_type */
+ 20, /* field[20] = launch_source */
+ 11, /* field[11] = owner_id */
+ 15, /* field[15] = primary_controller_type */
+ 16, /* field[16] = primary_steam_controller_serial */
+ 8, /* field[8] = process_id */
+ 31, /* field[31] = process_id_list */
+ 0, /* field[0] = steam_id_gs */
+ 9, /* field[9] = streaming_provider_id */
+ 5, /* field[5] = token */
+ 18, /* field[18] = total_non_steam_controller_count */
+ 17, /* field[17] = total_steam_controller_count */
+ 13, /* field[13] = vr_hmd_model */
+ 21, /* field[21] = vr_hmd_runtime */
+ 12, /* field[12] = vr_hmd_vendor */
+};
+static const ProtobufCIntRange cmsg_client_games_played__game_played__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 32 }
+};
+const ProtobufCMessageDescriptor cmsg_client_games_played__game_played__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGamesPlayed.GamePlayed",
+ "GamePlayed",
+ "CMsgClientGamesPlayed__GamePlayed",
+ "",
+ sizeof(CMsgClientGamesPlayed__GamePlayed),
+ 32,
+ cmsg_client_games_played__game_played__field_descriptors,
+ cmsg_client_games_played__game_played__field_indices_by_name,
+ 1, cmsg_client_games_played__game_played__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_games_played__field_descriptors[4] =
+{
+ {
+ "games_played",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientGamesPlayed, n_games_played),
+ offsetof(CMsgClientGamesPlayed, games_played),
+ &cmsg_client_games_played__game_played__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "client_os_type",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed, has_client_os_type),
+ offsetof(CMsgClientGamesPlayed, client_os_type),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "cloud_gaming_platform",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGamesPlayed, has_cloud_gaming_platform),
+ offsetof(CMsgClientGamesPlayed, cloud_gaming_platform),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "recent_reauthentication",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientGamesPlayed, has_recent_reauthentication),
+ offsetof(CMsgClientGamesPlayed, recent_reauthentication),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_games_played__field_indices_by_name[] = {
+ 1, /* field[1] = client_os_type */
+ 2, /* field[2] = cloud_gaming_platform */
+ 0, /* field[0] = games_played */
+ 3, /* field[3] = recent_reauthentication */
+};
+static const ProtobufCIntRange cmsg_client_games_played__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cmsg_client_games_played__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGamesPlayed",
+ "CMsgClientGamesPlayed",
+ "CMsgClientGamesPlayed",
+ "",
+ sizeof(CMsgClientGamesPlayed),
+ 4,
+ cmsg_client_games_played__field_descriptors,
+ cmsg_client_games_played__field_indices_by_name,
+ 1, cmsg_client_games_played__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_gsapprove__field_descriptors[2] =
+{
+ {
+ "steam_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgGSApprove, has_steam_id),
+ offsetof(CMsgGSApprove, steam_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "owner_steam_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgGSApprove, has_owner_steam_id),
+ offsetof(CMsgGSApprove, owner_steam_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_gsapprove__field_indices_by_name[] = {
+ 1, /* field[1] = owner_steam_id */
+ 0, /* field[0] = steam_id */
+};
+static const ProtobufCIntRange cmsg_gsapprove__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_gsapprove__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgGSApprove",
+ "CMsgGSApprove",
+ "CMsgGSApprove",
+ "",
+ sizeof(CMsgGSApprove),
+ 2,
+ cmsg_gsapprove__field_descriptors,
+ cmsg_gsapprove__field_indices_by_name,
+ 1, cmsg_gsapprove__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_gsdeny__field_descriptors[3] =
+{
+ {
+ "steam_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgGSDeny, has_steam_id),
+ offsetof(CMsgGSDeny, steam_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "edeny_reason",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgGSDeny, has_edeny_reason),
+ offsetof(CMsgGSDeny, edeny_reason),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "deny_string",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgGSDeny, deny_string),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_gsdeny__field_indices_by_name[] = {
+ 2, /* field[2] = deny_string */
+ 1, /* field[1] = edeny_reason */
+ 0, /* field[0] = steam_id */
+};
+static const ProtobufCIntRange cmsg_gsdeny__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_gsdeny__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgGSDeny",
+ "CMsgGSDeny",
+ "CMsgGSDeny",
+ "",
+ sizeof(CMsgGSDeny),
+ 3,
+ cmsg_gsdeny__field_descriptors,
+ cmsg_gsdeny__field_indices_by_name,
+ 1, cmsg_gsdeny__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_gskick__field_descriptors[2] =
+{
+ {
+ "steam_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgGSKick, has_steam_id),
+ offsetof(CMsgGSKick, steam_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "edeny_reason",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgGSKick, has_edeny_reason),
+ offsetof(CMsgGSKick, edeny_reason),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_gskick__field_indices_by_name[] = {
+ 1, /* field[1] = edeny_reason */
+ 0, /* field[0] = steam_id */
+};
+static const ProtobufCIntRange cmsg_gskick__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_gskick__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgGSKick",
+ "CMsgGSKick",
+ "CMsgGSKick",
+ "",
+ sizeof(CMsgGSKick),
+ 2,
+ cmsg_gskick__field_descriptors,
+ cmsg_gskick__field_indices_by_name,
+ 1, cmsg_gskick__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_auth_list__field_descriptors[6] =
+{
+ {
+ "tokens_left",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAuthList, has_tokens_left),
+ offsetof(CMsgClientAuthList, tokens_left),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_request_seq",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAuthList, has_last_request_seq),
+ offsetof(CMsgClientAuthList, last_request_seq),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_request_seq_from_server",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAuthList, has_last_request_seq_from_server),
+ offsetof(CMsgClientAuthList, last_request_seq_from_server),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "tickets",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientAuthList, n_tickets),
+ offsetof(CMsgClientAuthList, tickets),
+ &cmsg_auth_ticket__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_ids",
+ 5,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAuthList, n_app_ids),
+ offsetof(CMsgClientAuthList, app_ids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message_sequence",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAuthList, has_message_sequence),
+ offsetof(CMsgClientAuthList, message_sequence),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_auth_list__field_indices_by_name[] = {
+ 4, /* field[4] = app_ids */
+ 1, /* field[1] = last_request_seq */
+ 2, /* field[2] = last_request_seq_from_server */
+ 5, /* field[5] = message_sequence */
+ 3, /* field[3] = tickets */
+ 0, /* field[0] = tokens_left */
+};
+static const ProtobufCIntRange cmsg_client_auth_list__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor cmsg_client_auth_list__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAuthList",
+ "CMsgClientAuthList",
+ "CMsgClientAuthList",
+ "",
+ sizeof(CMsgClientAuthList),
+ 6,
+ cmsg_client_auth_list__field_descriptors,
+ cmsg_client_auth_list__field_indices_by_name,
+ 1, cmsg_client_auth_list__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_auth_list_ack__field_descriptors[3] =
+{
+ {
+ "ticket_crc",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAuthListAck, n_ticket_crc),
+ offsetof(CMsgClientAuthListAck, ticket_crc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_ids",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAuthListAck, n_app_ids),
+ offsetof(CMsgClientAuthListAck, app_ids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message_sequence",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAuthListAck, has_message_sequence),
+ offsetof(CMsgClientAuthListAck, message_sequence),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_auth_list_ack__field_indices_by_name[] = {
+ 1, /* field[1] = app_ids */
+ 2, /* field[2] = message_sequence */
+ 0, /* field[0] = ticket_crc */
+};
+static const ProtobufCIntRange cmsg_client_auth_list_ack__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_auth_list_ack__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAuthListAck",
+ "CMsgClientAuthListAck",
+ "CMsgClientAuthListAck",
+ "",
+ sizeof(CMsgClientAuthListAck),
+ 3,
+ cmsg_client_auth_list_ack__field_descriptors,
+ cmsg_client_auth_list_ack__field_indices_by_name,
+ 1, cmsg_client_auth_list_ack__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_license_list__license__field_descriptors[18] =
+{
+ {
+ "package_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientLicenseList__License, has_package_id),
+ offsetof(CMsgClientLicenseList__License, package_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_created",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED32,
+ offsetof(CMsgClientLicenseList__License, has_time_created),
+ offsetof(CMsgClientLicenseList__License, time_created),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_next_process",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED32,
+ offsetof(CMsgClientLicenseList__License, has_time_next_process),
+ offsetof(CMsgClientLicenseList__License, time_next_process),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "minute_limit",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientLicenseList__License, has_minute_limit),
+ offsetof(CMsgClientLicenseList__License, minute_limit),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "minutes_used",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientLicenseList__License, has_minutes_used),
+ offsetof(CMsgClientLicenseList__License, minutes_used),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "payment_method",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientLicenseList__License, has_payment_method),
+ offsetof(CMsgClientLicenseList__License, payment_method),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "flags",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientLicenseList__License, has_flags),
+ offsetof(CMsgClientLicenseList__License, flags),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "purchase_country_code",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientLicenseList__License, purchase_country_code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "license_type",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientLicenseList__License, has_license_type),
+ offsetof(CMsgClientLicenseList__License, license_type),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "territory_code",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientLicenseList__License, has_territory_code),
+ offsetof(CMsgClientLicenseList__License, territory_code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "change_number",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientLicenseList__License, has_change_number),
+ offsetof(CMsgClientLicenseList__License, change_number),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "owner_id",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientLicenseList__License, has_owner_id),
+ offsetof(CMsgClientLicenseList__License, owner_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "initial_period",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientLicenseList__License, has_initial_period),
+ offsetof(CMsgClientLicenseList__License, initial_period),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "initial_time_unit",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientLicenseList__License, has_initial_time_unit),
+ offsetof(CMsgClientLicenseList__License, initial_time_unit),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "renewal_period",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientLicenseList__License, has_renewal_period),
+ offsetof(CMsgClientLicenseList__License, renewal_period),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "renewal_time_unit",
+ 16,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientLicenseList__License, has_renewal_time_unit),
+ offsetof(CMsgClientLicenseList__License, renewal_time_unit),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "access_token",
+ 17,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientLicenseList__License, has_access_token),
+ offsetof(CMsgClientLicenseList__License, access_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "master_package_id",
+ 18,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientLicenseList__License, has_master_package_id),
+ offsetof(CMsgClientLicenseList__License, master_package_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_license_list__license__field_indices_by_name[] = {
+ 16, /* field[16] = access_token */
+ 10, /* field[10] = change_number */
+ 6, /* field[6] = flags */
+ 12, /* field[12] = initial_period */
+ 13, /* field[13] = initial_time_unit */
+ 8, /* field[8] = license_type */
+ 17, /* field[17] = master_package_id */
+ 3, /* field[3] = minute_limit */
+ 4, /* field[4] = minutes_used */
+ 11, /* field[11] = owner_id */
+ 0, /* field[0] = package_id */
+ 5, /* field[5] = payment_method */
+ 7, /* field[7] = purchase_country_code */
+ 14, /* field[14] = renewal_period */
+ 15, /* field[15] = renewal_time_unit */
+ 9, /* field[9] = territory_code */
+ 1, /* field[1] = time_created */
+ 2, /* field[2] = time_next_process */
+};
+static const ProtobufCIntRange cmsg_client_license_list__license__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 18 }
+};
+const ProtobufCMessageDescriptor cmsg_client_license_list__license__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientLicenseList.License",
+ "License",
+ "CMsgClientLicenseList__License",
+ "",
+ sizeof(CMsgClientLicenseList__License),
+ 18,
+ cmsg_client_license_list__license__field_descriptors,
+ cmsg_client_license_list__license__field_indices_by_name,
+ 1, cmsg_client_license_list__license__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_license_list__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_license_list__field_descriptors[2] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientLicenseList, has_eresult),
+ offsetof(CMsgClientLicenseList, eresult),
+ NULL,
+ &cmsg_client_license_list__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "licenses",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientLicenseList, n_licenses),
+ offsetof(CMsgClientLicenseList, licenses),
+ &cmsg_client_license_list__license__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_license_list__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 1, /* field[1] = licenses */
+};
+static const ProtobufCIntRange cmsg_client_license_list__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_license_list__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientLicenseList",
+ "CMsgClientLicenseList",
+ "CMsgClientLicenseList",
+ "",
+ sizeof(CMsgClientLicenseList),
+ 2,
+ cmsg_client_license_list__field_descriptors,
+ cmsg_client_license_list__field_indices_by_name,
+ 1, cmsg_client_license_list__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_is_limited_account__field_descriptors[4] =
+{
+ {
+ "bis_limited_account",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientIsLimitedAccount, has_bis_limited_account),
+ offsetof(CMsgClientIsLimitedAccount, bis_limited_account),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "bis_community_banned",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientIsLimitedAccount, has_bis_community_banned),
+ offsetof(CMsgClientIsLimitedAccount, bis_community_banned),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "bis_locked_account",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientIsLimitedAccount, has_bis_locked_account),
+ offsetof(CMsgClientIsLimitedAccount, bis_locked_account),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "bis_limited_account_allowed_to_invite_friends",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientIsLimitedAccount, has_bis_limited_account_allowed_to_invite_friends),
+ offsetof(CMsgClientIsLimitedAccount, bis_limited_account_allowed_to_invite_friends),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_is_limited_account__field_indices_by_name[] = {
+ 1, /* field[1] = bis_community_banned */
+ 0, /* field[0] = bis_limited_account */
+ 3, /* field[3] = bis_limited_account_allowed_to_invite_friends */
+ 2, /* field[2] = bis_locked_account */
+};
+static const ProtobufCIntRange cmsg_client_is_limited_account__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cmsg_client_is_limited_account__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientIsLimitedAccount",
+ "CMsgClientIsLimitedAccount",
+ "CMsgClientIsLimitedAccount",
+ "",
+ sizeof(CMsgClientIsLimitedAccount),
+ 4,
+ cmsg_client_is_limited_account__field_descriptors,
+ cmsg_client_is_limited_account__field_indices_by_name,
+ 1, cmsg_client_is_limited_account__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_requested_client_stats__stats_to_send__field_descriptors[2] =
+{
+ {
+ "client_stat",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestedClientStats__StatsToSend, has_client_stat),
+ offsetof(CMsgClientRequestedClientStats__StatsToSend, client_stat),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "stat_aggregate_method",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestedClientStats__StatsToSend, has_stat_aggregate_method),
+ offsetof(CMsgClientRequestedClientStats__StatsToSend, stat_aggregate_method),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_requested_client_stats__stats_to_send__field_indices_by_name[] = {
+ 0, /* field[0] = client_stat */
+ 1, /* field[1] = stat_aggregate_method */
+};
+static const ProtobufCIntRange cmsg_client_requested_client_stats__stats_to_send__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_requested_client_stats__stats_to_send__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestedClientStats.StatsToSend",
+ "StatsToSend",
+ "CMsgClientRequestedClientStats__StatsToSend",
+ "",
+ sizeof(CMsgClientRequestedClientStats__StatsToSend),
+ 2,
+ cmsg_client_requested_client_stats__stats_to_send__field_descriptors,
+ cmsg_client_requested_client_stats__stats_to_send__field_indices_by_name,
+ 1, cmsg_client_requested_client_stats__stats_to_send__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_requested_client_stats__field_descriptors[1] =
+{
+ {
+ "stats_to_send",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientRequestedClientStats, n_stats_to_send),
+ offsetof(CMsgClientRequestedClientStats, stats_to_send),
+ &cmsg_client_requested_client_stats__stats_to_send__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_requested_client_stats__field_indices_by_name[] = {
+ 0, /* field[0] = stats_to_send */
+};
+static const ProtobufCIntRange cmsg_client_requested_client_stats__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_requested_client_stats__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestedClientStats",
+ "CMsgClientRequestedClientStats",
+ "CMsgClientRequestedClientStats",
+ "",
+ sizeof(CMsgClientRequestedClientStats),
+ 1,
+ cmsg_client_requested_client_stats__field_descriptors,
+ cmsg_client_requested_client_stats__field_indices_by_name,
+ 1, cmsg_client_requested_client_stats__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_stat2__stat_detail__field_descriptors[6] =
+{
+ {
+ "client_stat",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientStat2__StatDetail, has_client_stat),
+ offsetof(CMsgClientStat2__StatDetail, client_stat),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ll_value",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT64,
+ offsetof(CMsgClientStat2__StatDetail, has_ll_value),
+ offsetof(CMsgClientStat2__StatDetail, ll_value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_of_day",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientStat2__StatDetail, has_time_of_day),
+ offsetof(CMsgClientStat2__StatDetail, time_of_day),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "cell_id",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientStat2__StatDetail, has_cell_id),
+ offsetof(CMsgClientStat2__StatDetail, cell_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "depot_id",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientStat2__StatDetail, has_depot_id),
+ offsetof(CMsgClientStat2__StatDetail, depot_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_id",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientStat2__StatDetail, has_app_id),
+ offsetof(CMsgClientStat2__StatDetail, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_stat2__stat_detail__field_indices_by_name[] = {
+ 5, /* field[5] = app_id */
+ 3, /* field[3] = cell_id */
+ 0, /* field[0] = client_stat */
+ 4, /* field[4] = depot_id */
+ 1, /* field[1] = ll_value */
+ 2, /* field[2] = time_of_day */
+};
+static const ProtobufCIntRange cmsg_client_stat2__stat_detail__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor cmsg_client_stat2__stat_detail__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientStat2.StatDetail",
+ "StatDetail",
+ "CMsgClientStat2__StatDetail",
+ "",
+ sizeof(CMsgClientStat2__StatDetail),
+ 6,
+ cmsg_client_stat2__stat_detail__field_descriptors,
+ cmsg_client_stat2__stat_detail__field_indices_by_name,
+ 1, cmsg_client_stat2__stat_detail__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_stat2__field_descriptors[1] =
+{
+ {
+ "stat_detail",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientStat2, n_stat_detail),
+ offsetof(CMsgClientStat2, stat_detail),
+ &cmsg_client_stat2__stat_detail__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_stat2__field_indices_by_name[] = {
+ 0, /* field[0] = stat_detail */
+};
+static const ProtobufCIntRange cmsg_client_stat2__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_stat2__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientStat2",
+ "CMsgClientStat2",
+ "CMsgClientStat2",
+ "",
+ sizeof(CMsgClientStat2),
+ 1,
+ cmsg_client_stat2__field_descriptors,
+ cmsg_client_stat2__field_indices_by_name,
+ 1, cmsg_client_stat2__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_invite_to_game__field_descriptors[4] =
+{
+ {
+ "steam_id_dest",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientInviteToGame, has_steam_id_dest),
+ offsetof(CMsgClientInviteToGame, steam_id_dest),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steam_id_src",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientInviteToGame, has_steam_id_src),
+ offsetof(CMsgClientInviteToGame, steam_id_src),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "connect_string",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientInviteToGame, connect_string),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "remote_play",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientInviteToGame, remote_play),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_invite_to_game__field_indices_by_name[] = {
+ 2, /* field[2] = connect_string */
+ 3, /* field[3] = remote_play */
+ 0, /* field[0] = steam_id_dest */
+ 1, /* field[1] = steam_id_src */
+};
+static const ProtobufCIntRange cmsg_client_invite_to_game__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cmsg_client_invite_to_game__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientInviteToGame",
+ "CMsgClientInviteToGame",
+ "CMsgClientInviteToGame",
+ "",
+ sizeof(CMsgClientInviteToGame),
+ 4,
+ cmsg_client_invite_to_game__field_descriptors,
+ cmsg_client_invite_to_game__field_indices_by_name,
+ 1, cmsg_client_invite_to_game__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_chat_invite__field_descriptors[7] =
+{
+ {
+ "steam_id_invited",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientChatInvite, has_steam_id_invited),
+ offsetof(CMsgClientChatInvite, steam_id_invited),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steam_id_chat",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientChatInvite, has_steam_id_chat),
+ offsetof(CMsgClientChatInvite, steam_id_chat),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steam_id_patron",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientChatInvite, has_steam_id_patron),
+ offsetof(CMsgClientChatInvite, steam_id_patron),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chatroom_type",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientChatInvite, has_chatroom_type),
+ offsetof(CMsgClientChatInvite, chatroom_type),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steam_id_friend_chat",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientChatInvite, has_steam_id_friend_chat),
+ offsetof(CMsgClientChatInvite, steam_id_friend_chat),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_name",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientChatInvite, chat_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_id",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientChatInvite, has_game_id),
+ offsetof(CMsgClientChatInvite, game_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_chat_invite__field_indices_by_name[] = {
+ 5, /* field[5] = chat_name */
+ 3, /* field[3] = chatroom_type */
+ 6, /* field[6] = game_id */
+ 1, /* field[1] = steam_id_chat */
+ 4, /* field[4] = steam_id_friend_chat */
+ 0, /* field[0] = steam_id_invited */
+ 2, /* field[2] = steam_id_patron */
+};
+static const ProtobufCIntRange cmsg_client_chat_invite__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cmsg_client_chat_invite__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientChatInvite",
+ "CMsgClientChatInvite",
+ "CMsgClientChatInvite",
+ "",
+ sizeof(CMsgClientChatInvite),
+ 7,
+ cmsg_client_chat_invite__field_descriptors,
+ cmsg_client_chat_invite__field_indices_by_name,
+ 1, cmsg_client_chat_invite__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_connection_stats__stats__logon__field_descriptors[11] =
+{
+ {
+ "connect_attempts",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientConnectionStats__StatsLogon, has_connect_attempts),
+ offsetof(CMsgClientConnectionStats__StatsLogon, connect_attempts),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "connect_successes",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientConnectionStats__StatsLogon, has_connect_successes),
+ offsetof(CMsgClientConnectionStats__StatsLogon, connect_successes),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "connect_failures",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientConnectionStats__StatsLogon, has_connect_failures),
+ offsetof(CMsgClientConnectionStats__StatsLogon, connect_failures),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "connections_dropped",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientConnectionStats__StatsLogon, has_connections_dropped),
+ offsetof(CMsgClientConnectionStats__StatsLogon, connections_dropped),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "seconds_running",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientConnectionStats__StatsLogon, has_seconds_running),
+ offsetof(CMsgClientConnectionStats__StatsLogon, seconds_running),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "msec_tologonthistime",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientConnectionStats__StatsLogon, has_msec_tologonthistime),
+ offsetof(CMsgClientConnectionStats__StatsLogon, msec_tologonthistime),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "count_bad_cms",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientConnectionStats__StatsLogon, has_count_bad_cms),
+ offsetof(CMsgClientConnectionStats__StatsLogon, count_bad_cms),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "no_udp_connectivity",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientConnectionStats__StatsLogon, has_no_udp_connectivity),
+ offsetof(CMsgClientConnectionStats__StatsLogon, no_udp_connectivity),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "no_tcp_connectivity",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientConnectionStats__StatsLogon, has_no_tcp_connectivity),
+ offsetof(CMsgClientConnectionStats__StatsLogon, no_tcp_connectivity),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "no_websocket_443_connectivity",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientConnectionStats__StatsLogon, has_no_websocket_443_connectivity),
+ offsetof(CMsgClientConnectionStats__StatsLogon, no_websocket_443_connectivity),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "no_websocket_non_443_connectivity",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientConnectionStats__StatsLogon, has_no_websocket_non_443_connectivity),
+ offsetof(CMsgClientConnectionStats__StatsLogon, no_websocket_non_443_connectivity),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_connection_stats__stats__logon__field_indices_by_name[] = {
+ 0, /* field[0] = connect_attempts */
+ 2, /* field[2] = connect_failures */
+ 1, /* field[1] = connect_successes */
+ 3, /* field[3] = connections_dropped */
+ 6, /* field[6] = count_bad_cms */
+ 5, /* field[5] = msec_tologonthistime */
+ 8, /* field[8] = no_tcp_connectivity */
+ 7, /* field[7] = no_udp_connectivity */
+ 9, /* field[9] = no_websocket_443_connectivity */
+ 10, /* field[10] = no_websocket_non_443_connectivity */
+ 4, /* field[4] = seconds_running */
+};
+static const ProtobufCIntRange cmsg_client_connection_stats__stats__logon__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 11 }
+};
+const ProtobufCMessageDescriptor cmsg_client_connection_stats__stats__logon__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientConnectionStats.Stats_Logon",
+ "StatsLogon",
+ "CMsgClientConnectionStats__StatsLogon",
+ "",
+ sizeof(CMsgClientConnectionStats__StatsLogon),
+ 11,
+ cmsg_client_connection_stats__stats__logon__field_descriptors,
+ cmsg_client_connection_stats__stats__logon__field_indices_by_name,
+ 1, cmsg_client_connection_stats__stats__logon__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_connection_stats__stats__udp__field_descriptors[5] =
+{
+ {
+ "pkts_sent",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsUDP, has_pkts_sent),
+ offsetof(CMsgClientConnectionStats__StatsUDP, pkts_sent),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "bytes_sent",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsUDP, has_bytes_sent),
+ offsetof(CMsgClientConnectionStats__StatsUDP, bytes_sent),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "pkts_recv",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsUDP, has_pkts_recv),
+ offsetof(CMsgClientConnectionStats__StatsUDP, pkts_recv),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "pkts_processed",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsUDP, has_pkts_processed),
+ offsetof(CMsgClientConnectionStats__StatsUDP, pkts_processed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "bytes_recv",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsUDP, has_bytes_recv),
+ offsetof(CMsgClientConnectionStats__StatsUDP, bytes_recv),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_connection_stats__stats__udp__field_indices_by_name[] = {
+ 4, /* field[4] = bytes_recv */
+ 1, /* field[1] = bytes_sent */
+ 3, /* field[3] = pkts_processed */
+ 2, /* field[2] = pkts_recv */
+ 0, /* field[0] = pkts_sent */
+};
+static const ProtobufCIntRange cmsg_client_connection_stats__stats__udp__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cmsg_client_connection_stats__stats__udp__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientConnectionStats.Stats_UDP",
+ "StatsUDP",
+ "CMsgClientConnectionStats__StatsUDP",
+ "",
+ sizeof(CMsgClientConnectionStats__StatsUDP),
+ 5,
+ cmsg_client_connection_stats__stats__udp__field_descriptors,
+ cmsg_client_connection_stats__stats__udp__field_indices_by_name,
+ 1, cmsg_client_connection_stats__stats__udp__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_connection_stats__stats__vconn__field_descriptors[20] =
+{
+ {
+ "connections_udp",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_connections_udp),
+ offsetof(CMsgClientConnectionStats__StatsVConn, connections_udp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "connections_tcp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_connections_tcp),
+ offsetof(CMsgClientConnectionStats__StatsVConn, connections_tcp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "stats_udp",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientConnectionStats__StatsVConn, stats_udp),
+ &cmsg_client_connection_stats__stats__udp__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "pkts_abandoned",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_pkts_abandoned),
+ offsetof(CMsgClientConnectionStats__StatsVConn, pkts_abandoned),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "conn_req_received",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_conn_req_received),
+ offsetof(CMsgClientConnectionStats__StatsVConn, conn_req_received),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "pkts_resent",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_pkts_resent),
+ offsetof(CMsgClientConnectionStats__StatsVConn, pkts_resent),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "msgs_sent",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_msgs_sent),
+ offsetof(CMsgClientConnectionStats__StatsVConn, msgs_sent),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "msgs_sent_failed",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_msgs_sent_failed),
+ offsetof(CMsgClientConnectionStats__StatsVConn, msgs_sent_failed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "msgs_recv",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_msgs_recv),
+ offsetof(CMsgClientConnectionStats__StatsVConn, msgs_recv),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "datagrams_sent",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_datagrams_sent),
+ offsetof(CMsgClientConnectionStats__StatsVConn, datagrams_sent),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "datagrams_recv",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_datagrams_recv),
+ offsetof(CMsgClientConnectionStats__StatsVConn, datagrams_recv),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "bad_pkts_recv",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_bad_pkts_recv),
+ offsetof(CMsgClientConnectionStats__StatsVConn, bad_pkts_recv),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "unknown_conn_pkts_recv",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_unknown_conn_pkts_recv),
+ offsetof(CMsgClientConnectionStats__StatsVConn, unknown_conn_pkts_recv),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "missed_pkts_recv",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_missed_pkts_recv),
+ offsetof(CMsgClientConnectionStats__StatsVConn, missed_pkts_recv),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "dup_pkts_recv",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_dup_pkts_recv),
+ offsetof(CMsgClientConnectionStats__StatsVConn, dup_pkts_recv),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "failed_connect_challenges",
+ 16,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_failed_connect_challenges),
+ offsetof(CMsgClientConnectionStats__StatsVConn, failed_connect_challenges),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "micro_sec_avg_latency",
+ 17,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_micro_sec_avg_latency),
+ offsetof(CMsgClientConnectionStats__StatsVConn, micro_sec_avg_latency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "micro_sec_min_latency",
+ 18,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_micro_sec_min_latency),
+ offsetof(CMsgClientConnectionStats__StatsVConn, micro_sec_min_latency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "micro_sec_max_latency",
+ 19,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_micro_sec_max_latency),
+ offsetof(CMsgClientConnectionStats__StatsVConn, micro_sec_max_latency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "mem_pool_msg_in_use",
+ 20,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientConnectionStats__StatsVConn, has_mem_pool_msg_in_use),
+ offsetof(CMsgClientConnectionStats__StatsVConn, mem_pool_msg_in_use),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_connection_stats__stats__vconn__field_indices_by_name[] = {
+ 11, /* field[11] = bad_pkts_recv */
+ 4, /* field[4] = conn_req_received */
+ 1, /* field[1] = connections_tcp */
+ 0, /* field[0] = connections_udp */
+ 10, /* field[10] = datagrams_recv */
+ 9, /* field[9] = datagrams_sent */
+ 14, /* field[14] = dup_pkts_recv */
+ 15, /* field[15] = failed_connect_challenges */
+ 19, /* field[19] = mem_pool_msg_in_use */
+ 16, /* field[16] = micro_sec_avg_latency */
+ 18, /* field[18] = micro_sec_max_latency */
+ 17, /* field[17] = micro_sec_min_latency */
+ 13, /* field[13] = missed_pkts_recv */
+ 8, /* field[8] = msgs_recv */
+ 6, /* field[6] = msgs_sent */
+ 7, /* field[7] = msgs_sent_failed */
+ 3, /* field[3] = pkts_abandoned */
+ 5, /* field[5] = pkts_resent */
+ 2, /* field[2] = stats_udp */
+ 12, /* field[12] = unknown_conn_pkts_recv */
+};
+static const ProtobufCIntRange cmsg_client_connection_stats__stats__vconn__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 20 }
+};
+const ProtobufCMessageDescriptor cmsg_client_connection_stats__stats__vconn__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientConnectionStats.Stats_VConn",
+ "StatsVConn",
+ "CMsgClientConnectionStats__StatsVConn",
+ "",
+ sizeof(CMsgClientConnectionStats__StatsVConn),
+ 20,
+ cmsg_client_connection_stats__stats__vconn__field_descriptors,
+ cmsg_client_connection_stats__stats__vconn__field_indices_by_name,
+ 1, cmsg_client_connection_stats__stats__vconn__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_connection_stats__field_descriptors[2] =
+{
+ {
+ "stats_logon",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientConnectionStats, stats_logon),
+ &cmsg_client_connection_stats__stats__logon__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "stats_vconn",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientConnectionStats, stats_vconn),
+ &cmsg_client_connection_stats__stats__vconn__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_connection_stats__field_indices_by_name[] = {
+ 0, /* field[0] = stats_logon */
+ 1, /* field[1] = stats_vconn */
+};
+static const ProtobufCIntRange cmsg_client_connection_stats__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_connection_stats__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientConnectionStats",
+ "CMsgClientConnectionStats",
+ "CMsgClientConnectionStats",
+ "",
+ sizeof(CMsgClientConnectionStats),
+ 2,
+ cmsg_client_connection_stats__field_descriptors,
+ cmsg_client_connection_stats__field_indices_by_name,
+ 1, cmsg_client_connection_stats__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_servers_available__server__types__available__field_descriptors[2] =
+{
+ {
+ "server",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServersAvailable__ServerTypesAvailable, has_server),
+ offsetof(CMsgClientServersAvailable__ServerTypesAvailable, server),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "changed",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientServersAvailable__ServerTypesAvailable, has_changed),
+ offsetof(CMsgClientServersAvailable__ServerTypesAvailable, changed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_servers_available__server__types__available__field_indices_by_name[] = {
+ 1, /* field[1] = changed */
+ 0, /* field[0] = server */
+};
+static const ProtobufCIntRange cmsg_client_servers_available__server__types__available__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_servers_available__server__types__available__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientServersAvailable.Server_Types_Available",
+ "ServerTypesAvailable",
+ "CMsgClientServersAvailable__ServerTypesAvailable",
+ "",
+ sizeof(CMsgClientServersAvailable__ServerTypesAvailable),
+ 2,
+ cmsg_client_servers_available__server__types__available__field_descriptors,
+ cmsg_client_servers_available__server__types__available__field_indices_by_name,
+ 1, cmsg_client_servers_available__server__types__available__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_servers_available__field_descriptors[2] =
+{
+ {
+ "server_types_available",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientServersAvailable, n_server_types_available),
+ offsetof(CMsgClientServersAvailable, server_types_available),
+ &cmsg_client_servers_available__server__types__available__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "server_type_for_auth_services",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServersAvailable, has_server_type_for_auth_services),
+ offsetof(CMsgClientServersAvailable, server_type_for_auth_services),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_servers_available__field_indices_by_name[] = {
+ 1, /* field[1] = server_type_for_auth_services */
+ 0, /* field[0] = server_types_available */
+};
+static const ProtobufCIntRange cmsg_client_servers_available__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_servers_available__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientServersAvailable",
+ "CMsgClientServersAvailable",
+ "CMsgClientServersAvailable",
+ "",
+ sizeof(CMsgClientServersAvailable),
+ 2,
+ cmsg_client_servers_available__field_descriptors,
+ cmsg_client_servers_available__field_indices_by_name,
+ 1, cmsg_client_servers_available__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_report_overlay_detour_failure__field_descriptors[1] =
+{
+ {
+ "failure_strings",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_STRING,
+ offsetof(CMsgClientReportOverlayDetourFailure, n_failure_strings),
+ offsetof(CMsgClientReportOverlayDetourFailure, failure_strings),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_report_overlay_detour_failure__field_indices_by_name[] = {
+ 0, /* field[0] = failure_strings */
+};
+static const ProtobufCIntRange cmsg_client_report_overlay_detour_failure__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_report_overlay_detour_failure__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientReportOverlayDetourFailure",
+ "CMsgClientReportOverlayDetourFailure",
+ "CMsgClientReportOverlayDetourFailure",
+ "",
+ sizeof(CMsgClientReportOverlayDetourFailure),
+ 1,
+ cmsg_client_report_overlay_detour_failure__field_descriptors,
+ cmsg_client_report_overlay_detour_failure__field_indices_by_name,
+ 1, cmsg_client_report_overlay_detour_failure__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_request_encrypted_app_ticket__field_descriptors[2] =
+{
+ {
+ "app_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestEncryptedAppTicket, has_app_id),
+ offsetof(CMsgClientRequestEncryptedAppTicket, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "userdata",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientRequestEncryptedAppTicket, has_userdata),
+ offsetof(CMsgClientRequestEncryptedAppTicket, userdata),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_request_encrypted_app_ticket__field_indices_by_name[] = {
+ 0, /* field[0] = app_id */
+ 1, /* field[1] = userdata */
+};
+static const ProtobufCIntRange cmsg_client_request_encrypted_app_ticket__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_request_encrypted_app_ticket__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestEncryptedAppTicket",
+ "CMsgClientRequestEncryptedAppTicket",
+ "CMsgClientRequestEncryptedAppTicket",
+ "",
+ sizeof(CMsgClientRequestEncryptedAppTicket),
+ 2,
+ cmsg_client_request_encrypted_app_ticket__field_descriptors,
+ cmsg_client_request_encrypted_app_ticket__field_indices_by_name,
+ 1, cmsg_client_request_encrypted_app_ticket__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_request_encrypted_app_ticket_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_request_encrypted_app_ticket_response__field_descriptors[3] =
+{
+ {
+ "app_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestEncryptedAppTicketResponse, has_app_id),
+ offsetof(CMsgClientRequestEncryptedAppTicketResponse, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "eresult",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientRequestEncryptedAppTicketResponse, has_eresult),
+ offsetof(CMsgClientRequestEncryptedAppTicketResponse, eresult),
+ NULL,
+ &cmsg_client_request_encrypted_app_ticket_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "encrypted_app_ticket",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientRequestEncryptedAppTicketResponse, encrypted_app_ticket),
+ &encrypted_app_ticket__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_request_encrypted_app_ticket_response__field_indices_by_name[] = {
+ 0, /* field[0] = app_id */
+ 2, /* field[2] = encrypted_app_ticket */
+ 1, /* field[1] = eresult */
+};
+static const ProtobufCIntRange cmsg_client_request_encrypted_app_ticket_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_request_encrypted_app_ticket_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestEncryptedAppTicketResponse",
+ "CMsgClientRequestEncryptedAppTicketResponse",
+ "CMsgClientRequestEncryptedAppTicketResponse",
+ "",
+ sizeof(CMsgClientRequestEncryptedAppTicketResponse),
+ 3,
+ cmsg_client_request_encrypted_app_ticket_response__field_descriptors,
+ cmsg_client_request_encrypted_app_ticket_response__field_indices_by_name,
+ 1, cmsg_client_request_encrypted_app_ticket_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_wallet_info_update__field_descriptors[7] =
+{
+ {
+ "has_wallet",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientWalletInfoUpdate, has_has_wallet),
+ offsetof(CMsgClientWalletInfoUpdate, has_wallet),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "balance",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientWalletInfoUpdate, has_balance),
+ offsetof(CMsgClientWalletInfoUpdate, balance),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "currency",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientWalletInfoUpdate, has_currency),
+ offsetof(CMsgClientWalletInfoUpdate, currency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "balance_delayed",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientWalletInfoUpdate, has_balance_delayed),
+ offsetof(CMsgClientWalletInfoUpdate, balance_delayed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "balance64",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT64,
+ offsetof(CMsgClientWalletInfoUpdate, has_balance64),
+ offsetof(CMsgClientWalletInfoUpdate, balance64),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "balance64_delayed",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT64,
+ offsetof(CMsgClientWalletInfoUpdate, has_balance64_delayed),
+ offsetof(CMsgClientWalletInfoUpdate, balance64_delayed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "realm",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientWalletInfoUpdate, has_realm),
+ offsetof(CMsgClientWalletInfoUpdate, realm),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_wallet_info_update__field_indices_by_name[] = {
+ 1, /* field[1] = balance */
+ 4, /* field[4] = balance64 */
+ 5, /* field[5] = balance64_delayed */
+ 3, /* field[3] = balance_delayed */
+ 2, /* field[2] = currency */
+ 0, /* field[0] = has_wallet */
+ 6, /* field[6] = realm */
+};
+static const ProtobufCIntRange cmsg_client_wallet_info_update__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cmsg_client_wallet_info_update__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientWalletInfoUpdate",
+ "CMsgClientWalletInfoUpdate",
+ "CMsgClientWalletInfoUpdate",
+ "",
+ sizeof(CMsgClientWalletInfoUpdate),
+ 7,
+ cmsg_client_wallet_info_update__field_descriptors,
+ cmsg_client_wallet_info_update__field_indices_by_name,
+ 1, cmsg_client_wallet_info_update__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_amget_clan_officers__field_descriptors[1] =
+{
+ {
+ "steamid_clan",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientAMGetClanOfficers, has_steamid_clan),
+ offsetof(CMsgClientAMGetClanOfficers, steamid_clan),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_amget_clan_officers__field_indices_by_name[] = {
+ 0, /* field[0] = steamid_clan */
+};
+static const ProtobufCIntRange cmsg_client_amget_clan_officers__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_amget_clan_officers__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAMGetClanOfficers",
+ "CMsgClientAMGetClanOfficers",
+ "CMsgClientAMGetClanOfficers",
+ "",
+ sizeof(CMsgClientAMGetClanOfficers),
+ 1,
+ cmsg_client_amget_clan_officers__field_descriptors,
+ cmsg_client_amget_clan_officers__field_indices_by_name,
+ 1, cmsg_client_amget_clan_officers__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_amget_clan_officers_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_amget_clan_officers_response__field_descriptors[3] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientAMGetClanOfficersResponse, has_eresult),
+ offsetof(CMsgClientAMGetClanOfficersResponse, eresult),
+ NULL,
+ &cmsg_client_amget_clan_officers_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid_clan",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientAMGetClanOfficersResponse, has_steamid_clan),
+ offsetof(CMsgClientAMGetClanOfficersResponse, steamid_clan),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "officer_count",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientAMGetClanOfficersResponse, has_officer_count),
+ offsetof(CMsgClientAMGetClanOfficersResponse, officer_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_amget_clan_officers_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 2, /* field[2] = officer_count */
+ 1, /* field[1] = steamid_clan */
+};
+static const ProtobufCIntRange cmsg_client_amget_clan_officers_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_amget_clan_officers_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAMGetClanOfficersResponse",
+ "CMsgClientAMGetClanOfficersResponse",
+ "CMsgClientAMGetClanOfficersResponse",
+ "",
+ sizeof(CMsgClientAMGetClanOfficersResponse),
+ 3,
+ cmsg_client_amget_clan_officers_response__field_descriptors,
+ cmsg_client_amget_clan_officers_response__field_indices_by_name,
+ 1, cmsg_client_amget_clan_officers_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_amget_persona_name_history__id_instance__field_descriptors[1] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientAMGetPersonaNameHistory__IdInstance, has_steamid),
+ offsetof(CMsgClientAMGetPersonaNameHistory__IdInstance, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_amget_persona_name_history__id_instance__field_indices_by_name[] = {
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cmsg_client_amget_persona_name_history__id_instance__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_amget_persona_name_history__id_instance__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAMGetPersonaNameHistory.IdInstance",
+ "IdInstance",
+ "CMsgClientAMGetPersonaNameHistory__IdInstance",
+ "",
+ sizeof(CMsgClientAMGetPersonaNameHistory__IdInstance),
+ 1,
+ cmsg_client_amget_persona_name_history__id_instance__field_descriptors,
+ cmsg_client_amget_persona_name_history__id_instance__field_indices_by_name,
+ 1, cmsg_client_amget_persona_name_history__id_instance__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_amget_persona_name_history__field_descriptors[2] =
+{
+ {
+ "id_count",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientAMGetPersonaNameHistory, has_id_count),
+ offsetof(CMsgClientAMGetPersonaNameHistory, id_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Ids",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientAMGetPersonaNameHistory, n_ids),
+ offsetof(CMsgClientAMGetPersonaNameHistory, ids),
+ &cmsg_client_amget_persona_name_history__id_instance__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_amget_persona_name_history__field_indices_by_name[] = {
+ 1, /* field[1] = Ids */
+ 0, /* field[0] = id_count */
+};
+static const ProtobufCIntRange cmsg_client_amget_persona_name_history__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_amget_persona_name_history__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAMGetPersonaNameHistory",
+ "CMsgClientAMGetPersonaNameHistory",
+ "CMsgClientAMGetPersonaNameHistory",
+ "",
+ sizeof(CMsgClientAMGetPersonaNameHistory),
+ 2,
+ cmsg_client_amget_persona_name_history__field_descriptors,
+ cmsg_client_amget_persona_name_history__field_indices_by_name,
+ 1, cmsg_client_amget_persona_name_history__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_amget_persona_name_history_response__name_table_instance__name_instance__field_descriptors[2] =
+{
+ {
+ "name_since",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED32,
+ offsetof(CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance__NameInstance, has_name_since),
+ offsetof(CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance__NameInstance, name_since),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance__NameInstance, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_amget_persona_name_history_response__name_table_instance__name_instance__field_indices_by_name[] = {
+ 1, /* field[1] = name */
+ 0, /* field[0] = name_since */
+};
+static const ProtobufCIntRange cmsg_client_amget_persona_name_history_response__name_table_instance__name_instance__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_amget_persona_name_history_response__name_table_instance__name_instance__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance.NameInstance",
+ "NameInstance",
+ "CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance__NameInstance",
+ "",
+ sizeof(CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance__NameInstance),
+ 2,
+ cmsg_client_amget_persona_name_history_response__name_table_instance__name_instance__field_descriptors,
+ cmsg_client_amget_persona_name_history_response__name_table_instance__name_instance__field_indices_by_name,
+ 1, cmsg_client_amget_persona_name_history_response__name_table_instance__name_instance__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_amget_persona_name_history_response__name_table_instance__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_amget_persona_name_history_response__name_table_instance__field_descriptors[3] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance, has_eresult),
+ offsetof(CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance, eresult),
+ NULL,
+ &cmsg_client_amget_persona_name_history_response__name_table_instance__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance, has_steamid),
+ offsetof(CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "names",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance, n_names),
+ offsetof(CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance, names),
+ &cmsg_client_amget_persona_name_history_response__name_table_instance__name_instance__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_amget_persona_name_history_response__name_table_instance__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 2, /* field[2] = names */
+ 1, /* field[1] = steamid */
+};
+static const ProtobufCIntRange cmsg_client_amget_persona_name_history_response__name_table_instance__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_amget_persona_name_history_response__name_table_instance__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance",
+ "NameTableInstance",
+ "CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance",
+ "",
+ sizeof(CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance),
+ 3,
+ cmsg_client_amget_persona_name_history_response__name_table_instance__field_descriptors,
+ cmsg_client_amget_persona_name_history_response__name_table_instance__field_indices_by_name,
+ 1, cmsg_client_amget_persona_name_history_response__name_table_instance__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_amget_persona_name_history_response__field_descriptors[1] =
+{
+ {
+ "responses",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientAMGetPersonaNameHistoryResponse, n_responses),
+ offsetof(CMsgClientAMGetPersonaNameHistoryResponse, responses),
+ &cmsg_client_amget_persona_name_history_response__name_table_instance__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_amget_persona_name_history_response__field_indices_by_name[] = {
+ 0, /* field[0] = responses */
+};
+static const ProtobufCIntRange cmsg_client_amget_persona_name_history_response__number_ranges[1 + 1] =
+{
+ { 2, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_amget_persona_name_history_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAMGetPersonaNameHistoryResponse",
+ "CMsgClientAMGetPersonaNameHistoryResponse",
+ "CMsgClientAMGetPersonaNameHistoryResponse",
+ "",
+ sizeof(CMsgClientAMGetPersonaNameHistoryResponse),
+ 1,
+ cmsg_client_amget_persona_name_history_response__field_descriptors,
+ cmsg_client_amget_persona_name_history_response__field_indices_by_name,
+ 1, cmsg_client_amget_persona_name_history_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_deregister_with_server__field_descriptors[2] =
+{
+ {
+ "eservertype",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientDeregisterWithServer, has_eservertype),
+ offsetof(CMsgClientDeregisterWithServer, eservertype),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientDeregisterWithServer, has_app_id),
+ offsetof(CMsgClientDeregisterWithServer, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_deregister_with_server__field_indices_by_name[] = {
+ 1, /* field[1] = app_id */
+ 0, /* field[0] = eservertype */
+};
+static const ProtobufCIntRange cmsg_client_deregister_with_server__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_deregister_with_server__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientDeregisterWithServer",
+ "CMsgClientDeregisterWithServer",
+ "CMsgClientDeregisterWithServer",
+ "",
+ sizeof(CMsgClientDeregisterWithServer),
+ 2,
+ cmsg_client_deregister_with_server__field_descriptors,
+ cmsg_client_deregister_with_server__field_indices_by_name,
+ 1, cmsg_client_deregister_with_server__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_clan_state__name_info__field_descriptors[2] =
+{
+ {
+ "clan_name",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientClanState__NameInfo, clan_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sha_avatar",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientClanState__NameInfo, has_sha_avatar),
+ offsetof(CMsgClientClanState__NameInfo, sha_avatar),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_clan_state__name_info__field_indices_by_name[] = {
+ 0, /* field[0] = clan_name */
+ 1, /* field[1] = sha_avatar */
+};
+static const ProtobufCIntRange cmsg_client_clan_state__name_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_clan_state__name_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientClanState.NameInfo",
+ "NameInfo",
+ "CMsgClientClanState__NameInfo",
+ "",
+ sizeof(CMsgClientClanState__NameInfo),
+ 2,
+ cmsg_client_clan_state__name_info__field_descriptors,
+ cmsg_client_clan_state__name_info__field_indices_by_name,
+ 1, cmsg_client_clan_state__name_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_clan_state__user_counts__field_descriptors[5] =
+{
+ {
+ "members",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientClanState__UserCounts, has_members),
+ offsetof(CMsgClientClanState__UserCounts, members),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "online",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientClanState__UserCounts, has_online),
+ offsetof(CMsgClientClanState__UserCounts, online),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chatting",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientClanState__UserCounts, has_chatting),
+ offsetof(CMsgClientClanState__UserCounts, chatting),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "in_game",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientClanState__UserCounts, has_in_game),
+ offsetof(CMsgClientClanState__UserCounts, in_game),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_room_members",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientClanState__UserCounts, has_chat_room_members),
+ offsetof(CMsgClientClanState__UserCounts, chat_room_members),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_clan_state__user_counts__field_indices_by_name[] = {
+ 4, /* field[4] = chat_room_members */
+ 2, /* field[2] = chatting */
+ 3, /* field[3] = in_game */
+ 0, /* field[0] = members */
+ 1, /* field[1] = online */
+};
+static const ProtobufCIntRange cmsg_client_clan_state__user_counts__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cmsg_client_clan_state__user_counts__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientClanState.UserCounts",
+ "UserCounts",
+ "CMsgClientClanState__UserCounts",
+ "",
+ sizeof(CMsgClientClanState__UserCounts),
+ 5,
+ cmsg_client_clan_state__user_counts__field_descriptors,
+ cmsg_client_clan_state__user_counts__field_indices_by_name,
+ 1, cmsg_client_clan_state__user_counts__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_clan_state__event__field_descriptors[5] =
+{
+ {
+ "gid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientClanState__Event, has_gid),
+ offsetof(CMsgClientClanState__Event, gid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "event_time",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientClanState__Event, has_event_time),
+ offsetof(CMsgClientClanState__Event, event_time),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "headline",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientClanState__Event, headline),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_id",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientClanState__Event, has_game_id),
+ offsetof(CMsgClientClanState__Event, game_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "just_posted",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientClanState__Event, has_just_posted),
+ offsetof(CMsgClientClanState__Event, just_posted),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_clan_state__event__field_indices_by_name[] = {
+ 1, /* field[1] = event_time */
+ 3, /* field[3] = game_id */
+ 0, /* field[0] = gid */
+ 2, /* field[2] = headline */
+ 4, /* field[4] = just_posted */
+};
+static const ProtobufCIntRange cmsg_client_clan_state__event__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cmsg_client_clan_state__event__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientClanState.Event",
+ "Event",
+ "CMsgClientClanState__Event",
+ "",
+ sizeof(CMsgClientClanState__Event),
+ 5,
+ cmsg_client_clan_state__event__field_descriptors,
+ cmsg_client_clan_state__event__field_indices_by_name,
+ 1, cmsg_client_clan_state__event__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_clan_state__field_descriptors[7] =
+{
+ {
+ "steamid_clan",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientClanState, has_steamid_clan),
+ offsetof(CMsgClientClanState, steamid_clan),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "clan_account_flags",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientClanState, has_clan_account_flags),
+ offsetof(CMsgClientClanState, clan_account_flags),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "name_info",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientClanState, name_info),
+ &cmsg_client_clan_state__name_info__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "user_counts",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientClanState, user_counts),
+ &cmsg_client_clan_state__user_counts__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "events",
+ 6,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientClanState, n_events),
+ offsetof(CMsgClientClanState, events),
+ &cmsg_client_clan_state__event__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "announcements",
+ 7,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientClanState, n_announcements),
+ offsetof(CMsgClientClanState, announcements),
+ &cmsg_client_clan_state__event__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_room_private",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientClanState, has_chat_room_private),
+ offsetof(CMsgClientClanState, chat_room_private),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_clan_state__field_indices_by_name[] = {
+ 5, /* field[5] = announcements */
+ 6, /* field[6] = chat_room_private */
+ 1, /* field[1] = clan_account_flags */
+ 4, /* field[4] = events */
+ 2, /* field[2] = name_info */
+ 0, /* field[0] = steamid_clan */
+ 3, /* field[3] = user_counts */
+};
+static const ProtobufCIntRange cmsg_client_clan_state__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 3, 1 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cmsg_client_clan_state__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientClanState",
+ "CMsgClientClanState",
+ "CMsgClientClanState",
+ "",
+ sizeof(CMsgClientClanState),
+ 7,
+ cmsg_client_clan_state__field_descriptors,
+ cmsg_client_clan_state__field_indices_by_name,
+ 2, cmsg_client_clan_state__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/protocols/Steam/src/protobuf-c/steammessages_clientserver.pb-c.h b/protocols/Steam/src/protobuf-c/steammessages_clientserver.pb-c.h
new file mode 100644
index 0000000000..e04827379a
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_clientserver.pb-c.h
@@ -0,0 +1,1748 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_clientserver.proto */
+
+#ifndef PROTOBUF_C_steammessages_5fclientserver_2eproto__INCLUDED
+#define PROTOBUF_C_steammessages_5fclientserver_2eproto__INCLUDED
+
+#include "protobuf-c.h"
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1000000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1004001 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "steammessages_base.pb-c.h"
+#include "encrypted_app_ticket.pb-c.h"
+
+struct CMsgClientRegisterAuthTicketWithCM;
+struct CMsgClientTicketAuthComplete;
+struct CMsgClientCMList;
+struct CMsgClientP2PConnectionInfo;
+struct CMsgClientP2PConnectionFailInfo;
+struct CMsgClientNetworkingCertRequest;
+struct CMsgClientNetworkingCertReply;
+struct CMsgClientNetworkingMobileCertRequest;
+struct CMsgClientNetworkingMobileCertReply;
+struct CMsgClientGetAppOwnershipTicket;
+struct CMsgClientGetAppOwnershipTicketResponse;
+struct CMsgClientSessionToken;
+struct CMsgClientGameConnectTokens;
+struct CMsgClientGamesPlayed;
+struct CMsgClientGamesPlayed__ProcessInfo;
+struct CMsgClientGamesPlayed__GamePlayed;
+struct CMsgGSApprove;
+struct CMsgGSDeny;
+struct CMsgGSKick;
+struct CMsgClientAuthList;
+struct CMsgClientAuthListAck;
+struct CMsgClientLicenseList;
+struct CMsgClientLicenseList__License;
+struct CMsgClientIsLimitedAccount;
+struct CMsgClientRequestedClientStats;
+struct CMsgClientRequestedClientStats__StatsToSend;
+struct CMsgClientStat2;
+struct CMsgClientStat2__StatDetail;
+struct CMsgClientInviteToGame;
+struct CMsgClientChatInvite;
+struct CMsgClientConnectionStats;
+struct CMsgClientConnectionStats__StatsLogon;
+struct CMsgClientConnectionStats__StatsUDP;
+struct CMsgClientConnectionStats__StatsVConn;
+struct CMsgClientServersAvailable;
+struct CMsgClientServersAvailable__ServerTypesAvailable;
+struct CMsgClientReportOverlayDetourFailure;
+struct CMsgClientRequestEncryptedAppTicket;
+struct CMsgClientRequestEncryptedAppTicketResponse;
+struct CMsgClientWalletInfoUpdate;
+struct CMsgClientAMGetClanOfficers;
+struct CMsgClientAMGetClanOfficersResponse;
+struct CMsgClientAMGetPersonaNameHistory;
+struct CMsgClientAMGetPersonaNameHistory__IdInstance;
+struct CMsgClientAMGetPersonaNameHistoryResponse;
+struct CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance;
+struct CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance__NameInstance;
+struct CMsgClientDeregisterWithServer;
+struct CMsgClientClanState;
+struct CMsgClientClanState__NameInfo;
+struct CMsgClientClanState__UserCounts;
+struct CMsgClientClanState__Event;
+
+
+/* --- enums --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor cmsg_client_register_auth_ticket_with_cm__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_ticket_auth_complete__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_cmlist__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_p2_pconnection_info__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_p2_pconnection_fail_info__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_networking_cert_request__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_networking_cert_reply__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_networking_mobile_cert_request__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_networking_mobile_cert_reply__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_get_app_ownership_ticket__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_get_app_ownership_ticket_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_session_token__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_game_connect_tokens__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_games_played__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_games_played__process_info__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_games_played__game_played__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_gsapprove__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_gsdeny__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_gskick__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_auth_list__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_auth_list_ack__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_license_list__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_license_list__license__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_is_limited_account__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_requested_client_stats__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_requested_client_stats__stats_to_send__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_stat2__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_stat2__stat_detail__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_invite_to_game__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_chat_invite__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_connection_stats__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_connection_stats__stats__logon__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_connection_stats__stats__udp__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_connection_stats__stats__vconn__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_servers_available__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_servers_available__server__types__available__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_report_overlay_detour_failure__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_request_encrypted_app_ticket__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_request_encrypted_app_ticket_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_wallet_info_update__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_amget_clan_officers__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_amget_clan_officers_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_amget_persona_name_history__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_amget_persona_name_history__id_instance__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_amget_persona_name_history_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_amget_persona_name_history_response__name_table_instance__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_amget_persona_name_history_response__name_table_instance__name_instance__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_deregister_with_server__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_clan_state__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_clan_state__name_info__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_clan_state__user_counts__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_clan_state__event__descriptor;
+
+/* --- messages --- */
+
+extern "C" void message_init_generic(const ProtobufCMessageDescriptor * desc, ProtobufCMessage * message);
+
+struct CMsgClientRegisterAuthTicketWithCM : public ProtobufCppMessage
+{
+ CMsgClientRegisterAuthTicketWithCM() :
+ ProtobufCppMessage(cmsg_client_register_auth_ticket_with_cm__descriptor)
+ {}
+
+ protobuf_c_boolean has_protocol_version;
+ uint32_t protocol_version;
+ protobuf_c_boolean has_ticket;
+ ProtobufCBinaryData ticket;
+ protobuf_c_boolean has_client_instance_id;
+ uint64_t client_instance_id;
+};
+
+struct CMsgClientTicketAuthComplete : public ProtobufCppMessage
+{
+ CMsgClientTicketAuthComplete() :
+ ProtobufCppMessage(cmsg_client_ticket_auth_complete__descriptor)
+ {}
+
+ protobuf_c_boolean has_steam_id;
+ uint64_t steam_id;
+ protobuf_c_boolean has_game_id;
+ uint64_t game_id;
+ protobuf_c_boolean has_estate;
+ uint32_t estate;
+ protobuf_c_boolean has_eauth_session_response;
+ uint32_t eauth_session_response;
+ protobuf_c_boolean has_deprecated_ticket;
+ ProtobufCBinaryData deprecated_ticket;
+ protobuf_c_boolean has_ticket_crc;
+ uint32_t ticket_crc;
+ protobuf_c_boolean has_ticket_sequence;
+ uint32_t ticket_sequence;
+ protobuf_c_boolean has_owner_steam_id;
+ uint64_t owner_steam_id;
+};
+
+struct CMsgClientCMList : public ProtobufCppMessage
+{
+ CMsgClientCMList() :
+ ProtobufCppMessage(cmsg_client_cmlist__descriptor)
+ {}
+
+ size_t n_cm_addresses;
+ uint32_t *cm_addresses;
+ size_t n_cm_ports;
+ uint32_t *cm_ports;
+ size_t n_cm_websocket_addresses;
+ char **cm_websocket_addresses;
+ protobuf_c_boolean has_percent_default_to_websocket;
+ uint32_t percent_default_to_websocket;
+};
+
+struct CMsgClientP2PConnectionInfo : public ProtobufCppMessage
+{
+ CMsgClientP2PConnectionInfo() :
+ ProtobufCppMessage(cmsg_client_p2_pconnection_info__descriptor)
+ {}
+
+ protobuf_c_boolean has_steam_id_dest;
+ uint64_t steam_id_dest;
+ protobuf_c_boolean has_steam_id_src;
+ uint64_t steam_id_src;
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+ protobuf_c_boolean has_candidate;
+ ProtobufCBinaryData candidate;
+ protobuf_c_boolean has_legacy_connection_id_src;
+ uint64_t legacy_connection_id_src;
+ protobuf_c_boolean has_rendezvous;
+ ProtobufCBinaryData rendezvous;
+};
+
+struct CMsgClientP2PConnectionFailInfo : public ProtobufCppMessage
+{
+ CMsgClientP2PConnectionFailInfo() :
+ ProtobufCppMessage(cmsg_client_p2_pconnection_fail_info__descriptor)
+ {}
+
+ protobuf_c_boolean has_steam_id_dest;
+ uint64_t steam_id_dest;
+ protobuf_c_boolean has_steam_id_src;
+ uint64_t steam_id_src;
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+ protobuf_c_boolean has_ep2p_session_error;
+ uint32_t ep2p_session_error;
+ protobuf_c_boolean has_connection_id_dest;
+ uint64_t connection_id_dest;
+ protobuf_c_boolean has_close_reason;
+ uint32_t close_reason;
+ char *close_message;
+};
+
+struct CMsgClientNetworkingCertRequest : public ProtobufCppMessage
+{
+ CMsgClientNetworkingCertRequest() :
+ ProtobufCppMessage(cmsg_client_networking_cert_request__descriptor)
+ {}
+
+ protobuf_c_boolean has_key_data;
+ ProtobufCBinaryData key_data;
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+};
+
+struct CMsgClientNetworkingCertReply : public ProtobufCppMessage
+{
+ CMsgClientNetworkingCertReply() :
+ ProtobufCppMessage(cmsg_client_networking_cert_reply__descriptor)
+ {}
+
+ protobuf_c_boolean has_cert;
+ ProtobufCBinaryData cert;
+ protobuf_c_boolean has_ca_key_id;
+ uint64_t ca_key_id;
+ protobuf_c_boolean has_ca_signature;
+ ProtobufCBinaryData ca_signature;
+};
+
+struct CMsgClientNetworkingMobileCertRequest : public ProtobufCppMessage
+{
+ CMsgClientNetworkingMobileCertRequest() :
+ ProtobufCppMessage(cmsg_client_networking_mobile_cert_request__descriptor)
+ {}
+
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+};
+
+struct CMsgClientNetworkingMobileCertReply : public ProtobufCppMessage
+{
+ CMsgClientNetworkingMobileCertReply() :
+ ProtobufCppMessage(cmsg_client_networking_mobile_cert_reply__descriptor)
+ {}
+
+ char *encoded_cert;
+};
+
+struct CMsgClientGetAppOwnershipTicket : public ProtobufCppMessage
+{
+ CMsgClientGetAppOwnershipTicket() :
+ ProtobufCppMessage(cmsg_client_get_app_ownership_ticket__descriptor)
+ {}
+
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+};
+
+struct CMsgClientGetAppOwnershipTicketResponse : public ProtobufCppMessage
+{
+ CMsgClientGetAppOwnershipTicketResponse() :
+ ProtobufCppMessage(cmsg_client_get_app_ownership_ticket_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+ protobuf_c_boolean has_ticket;
+ ProtobufCBinaryData ticket;
+};
+
+struct CMsgClientSessionToken : public ProtobufCppMessage
+{
+ CMsgClientSessionToken() :
+ ProtobufCppMessage(cmsg_client_session_token__descriptor)
+ {}
+
+ protobuf_c_boolean has_token;
+ uint64_t token;
+};
+
+struct CMsgClientGameConnectTokens : public ProtobufCppMessage
+{
+ CMsgClientGameConnectTokens() :
+ ProtobufCppMessage(cmsg_client_game_connect_tokens__descriptor)
+ {}
+
+ protobuf_c_boolean has_max_tokens_to_keep;
+ uint32_t max_tokens_to_keep;
+ size_t n_tokens;
+ ProtobufCBinaryData *tokens;
+};
+
+struct CMsgClientGamesPlayed__ProcessInfo : public ProtobufCppMessage
+{
+ CMsgClientGamesPlayed__ProcessInfo() :
+ ProtobufCppMessage(cmsg_client_games_played__process_info__descriptor)
+ {}
+
+ protobuf_c_boolean has_process_id;
+ uint32_t process_id;
+ protobuf_c_boolean has_process_id_parent;
+ uint32_t process_id_parent;
+ protobuf_c_boolean has_parent_is_steam;
+ protobuf_c_boolean parent_is_steam;
+};
+
+struct CMsgClientGamesPlayed__GamePlayed : public ProtobufCppMessage
+{
+ CMsgClientGamesPlayed__GamePlayed() :
+ ProtobufCppMessage(cmsg_client_games_played__game_played__descriptor)
+ {}
+
+ protobuf_c_boolean has_steam_id_gs;
+ uint64_t steam_id_gs;
+ protobuf_c_boolean has_game_id;
+ uint64_t game_id;
+ protobuf_c_boolean has_deprecated_game_ip_address;
+ uint32_t deprecated_game_ip_address;
+ protobuf_c_boolean has_game_port;
+ uint32_t game_port;
+ protobuf_c_boolean has_is_secure;
+ protobuf_c_boolean is_secure;
+ protobuf_c_boolean has_token;
+ ProtobufCBinaryData token;
+ char *game_extra_info;
+ protobuf_c_boolean has_game_data_blob;
+ ProtobufCBinaryData game_data_blob;
+ protobuf_c_boolean has_process_id;
+ uint32_t process_id;
+ protobuf_c_boolean has_streaming_provider_id;
+ uint32_t streaming_provider_id;
+ protobuf_c_boolean has_game_flags;
+ uint32_t game_flags;
+ protobuf_c_boolean has_owner_id;
+ uint32_t owner_id;
+ char *vr_hmd_vendor;
+ char *vr_hmd_model;
+ protobuf_c_boolean has_launch_option_type;
+ uint32_t launch_option_type;
+ protobuf_c_boolean has_primary_controller_type;
+ int32_t primary_controller_type;
+ char *primary_steam_controller_serial;
+ protobuf_c_boolean has_total_steam_controller_count;
+ uint32_t total_steam_controller_count;
+ protobuf_c_boolean has_total_non_steam_controller_count;
+ uint32_t total_non_steam_controller_count;
+ protobuf_c_boolean has_controller_workshop_file_id;
+ uint64_t controller_workshop_file_id;
+ protobuf_c_boolean has_launch_source;
+ uint32_t launch_source;
+ protobuf_c_boolean has_vr_hmd_runtime;
+ uint32_t vr_hmd_runtime;
+ CMsgIPAddress *game_ip_address;
+ protobuf_c_boolean has_controller_connection_type;
+ uint32_t controller_connection_type;
+ protobuf_c_boolean has_game_os_platform;
+ int32_t game_os_platform;
+ protobuf_c_boolean has_game_build_id;
+ uint32_t game_build_id;
+ protobuf_c_boolean has_compat_tool_id;
+ uint32_t compat_tool_id;
+ char *compat_tool_cmd;
+ protobuf_c_boolean has_compat_tool_build_id;
+ uint32_t compat_tool_build_id;
+ char *beta_name;
+ protobuf_c_boolean has_dlc_context;
+ uint32_t dlc_context;
+ size_t n_process_id_list;
+ CMsgClientGamesPlayed__ProcessInfo **process_id_list;
+};
+
+struct CMsgClientGamesPlayed : public ProtobufCppMessage
+{
+ CMsgClientGamesPlayed() :
+ ProtobufCppMessage(cmsg_client_games_played__descriptor)
+ {}
+
+ size_t n_games_played;
+ CMsgClientGamesPlayed__GamePlayed **games_played;
+ protobuf_c_boolean has_client_os_type;
+ uint32_t client_os_type;
+ protobuf_c_boolean has_cloud_gaming_platform;
+ uint32_t cloud_gaming_platform;
+ protobuf_c_boolean has_recent_reauthentication;
+ protobuf_c_boolean recent_reauthentication;
+};
+
+struct CMsgGSApprove : public ProtobufCppMessage
+{
+ CMsgGSApprove() :
+ ProtobufCppMessage(cmsg_gsapprove__descriptor)
+ {}
+
+ protobuf_c_boolean has_steam_id;
+ uint64_t steam_id;
+ protobuf_c_boolean has_owner_steam_id;
+ uint64_t owner_steam_id;
+};
+
+struct CMsgGSDeny : public ProtobufCppMessage
+{
+ CMsgGSDeny() :
+ ProtobufCppMessage(cmsg_gsdeny__descriptor)
+ {}
+
+ protobuf_c_boolean has_steam_id;
+ uint64_t steam_id;
+ protobuf_c_boolean has_edeny_reason;
+ int32_t edeny_reason;
+ char *deny_string;
+};
+
+struct CMsgGSKick : public ProtobufCppMessage
+{
+ CMsgGSKick() :
+ ProtobufCppMessage(cmsg_gskick__descriptor)
+ {}
+
+ protobuf_c_boolean has_steam_id;
+ uint64_t steam_id;
+ protobuf_c_boolean has_edeny_reason;
+ int32_t edeny_reason;
+};
+
+struct CMsgClientAuthList : public ProtobufCppMessage
+{
+ CMsgClientAuthList() :
+ ProtobufCppMessage(cmsg_client_auth_list__descriptor)
+ {}
+
+ protobuf_c_boolean has_tokens_left;
+ uint32_t tokens_left;
+ protobuf_c_boolean has_last_request_seq;
+ uint32_t last_request_seq;
+ protobuf_c_boolean has_last_request_seq_from_server;
+ uint32_t last_request_seq_from_server;
+ size_t n_tickets;
+ CMsgAuthTicket **tickets;
+ size_t n_app_ids;
+ uint32_t *app_ids;
+ protobuf_c_boolean has_message_sequence;
+ uint32_t message_sequence;
+};
+
+struct CMsgClientAuthListAck : public ProtobufCppMessage
+{
+ CMsgClientAuthListAck() :
+ ProtobufCppMessage(cmsg_client_auth_list_ack__descriptor)
+ {}
+
+ size_t n_ticket_crc;
+ uint32_t *ticket_crc;
+ size_t n_app_ids;
+ uint32_t *app_ids;
+ protobuf_c_boolean has_message_sequence;
+ uint32_t message_sequence;
+};
+
+struct CMsgClientLicenseList__License : public ProtobufCppMessage
+{
+ CMsgClientLicenseList__License() :
+ ProtobufCppMessage(cmsg_client_license_list__license__descriptor)
+ {}
+
+ protobuf_c_boolean has_package_id;
+ uint32_t package_id;
+ protobuf_c_boolean has_time_created;
+ uint32_t time_created;
+ protobuf_c_boolean has_time_next_process;
+ uint32_t time_next_process;
+ protobuf_c_boolean has_minute_limit;
+ int32_t minute_limit;
+ protobuf_c_boolean has_minutes_used;
+ int32_t minutes_used;
+ protobuf_c_boolean has_payment_method;
+ uint32_t payment_method;
+ protobuf_c_boolean has_flags;
+ uint32_t flags;
+ char *purchase_country_code;
+ protobuf_c_boolean has_license_type;
+ uint32_t license_type;
+ protobuf_c_boolean has_territory_code;
+ int32_t territory_code;
+ protobuf_c_boolean has_change_number;
+ int32_t change_number;
+ protobuf_c_boolean has_owner_id;
+ uint32_t owner_id;
+ protobuf_c_boolean has_initial_period;
+ uint32_t initial_period;
+ protobuf_c_boolean has_initial_time_unit;
+ uint32_t initial_time_unit;
+ protobuf_c_boolean has_renewal_period;
+ uint32_t renewal_period;
+ protobuf_c_boolean has_renewal_time_unit;
+ uint32_t renewal_time_unit;
+ protobuf_c_boolean has_access_token;
+ uint64_t access_token;
+ protobuf_c_boolean has_master_package_id;
+ uint32_t master_package_id;
+};
+
+struct CMsgClientLicenseList : public ProtobufCppMessage
+{
+ CMsgClientLicenseList() :
+ ProtobufCppMessage(cmsg_client_license_list__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ size_t n_licenses;
+ CMsgClientLicenseList__License **licenses;
+};
+
+struct CMsgClientIsLimitedAccount : public ProtobufCppMessage
+{
+ CMsgClientIsLimitedAccount() :
+ ProtobufCppMessage(cmsg_client_is_limited_account__descriptor)
+ {}
+
+ protobuf_c_boolean has_bis_limited_account;
+ protobuf_c_boolean bis_limited_account;
+ protobuf_c_boolean has_bis_community_banned;
+ protobuf_c_boolean bis_community_banned;
+ protobuf_c_boolean has_bis_locked_account;
+ protobuf_c_boolean bis_locked_account;
+ protobuf_c_boolean has_bis_limited_account_allowed_to_invite_friends;
+ protobuf_c_boolean bis_limited_account_allowed_to_invite_friends;
+};
+
+struct CMsgClientRequestedClientStats__StatsToSend : public ProtobufCppMessage
+{
+ CMsgClientRequestedClientStats__StatsToSend() :
+ ProtobufCppMessage(cmsg_client_requested_client_stats__stats_to_send__descriptor)
+ {}
+
+ protobuf_c_boolean has_client_stat;
+ uint32_t client_stat;
+ protobuf_c_boolean has_stat_aggregate_method;
+ uint32_t stat_aggregate_method;
+};
+
+struct CMsgClientRequestedClientStats : public ProtobufCppMessage
+{
+ CMsgClientRequestedClientStats() :
+ ProtobufCppMessage(cmsg_client_requested_client_stats__descriptor)
+ {}
+
+ size_t n_stats_to_send;
+ CMsgClientRequestedClientStats__StatsToSend **stats_to_send;
+};
+
+struct CMsgClientStat2__StatDetail : public ProtobufCppMessage
+{
+ CMsgClientStat2__StatDetail() :
+ ProtobufCppMessage(cmsg_client_stat2__stat_detail__descriptor)
+ {}
+
+ protobuf_c_boolean has_client_stat;
+ uint32_t client_stat;
+ protobuf_c_boolean has_ll_value;
+ int64_t ll_value;
+ protobuf_c_boolean has_time_of_day;
+ uint32_t time_of_day;
+ protobuf_c_boolean has_cell_id;
+ uint32_t cell_id;
+ protobuf_c_boolean has_depot_id;
+ uint32_t depot_id;
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+};
+
+struct CMsgClientStat2 : public ProtobufCppMessage
+{
+ CMsgClientStat2() :
+ ProtobufCppMessage(cmsg_client_stat2__descriptor)
+ {}
+
+ size_t n_stat_detail;
+ CMsgClientStat2__StatDetail **stat_detail;
+};
+
+struct CMsgClientInviteToGame : public ProtobufCppMessage
+{
+ CMsgClientInviteToGame() :
+ ProtobufCppMessage(cmsg_client_invite_to_game__descriptor)
+ {}
+
+ protobuf_c_boolean has_steam_id_dest;
+ uint64_t steam_id_dest;
+ protobuf_c_boolean has_steam_id_src;
+ uint64_t steam_id_src;
+ char *connect_string;
+ char *remote_play;
+};
+
+struct CMsgClientChatInvite : public ProtobufCppMessage
+{
+ CMsgClientChatInvite() :
+ ProtobufCppMessage(cmsg_client_chat_invite__descriptor)
+ {}
+
+ protobuf_c_boolean has_steam_id_invited;
+ uint64_t steam_id_invited;
+ protobuf_c_boolean has_steam_id_chat;
+ uint64_t steam_id_chat;
+ protobuf_c_boolean has_steam_id_patron;
+ uint64_t steam_id_patron;
+ protobuf_c_boolean has_chatroom_type;
+ int32_t chatroom_type;
+ protobuf_c_boolean has_steam_id_friend_chat;
+ uint64_t steam_id_friend_chat;
+ char *chat_name;
+ protobuf_c_boolean has_game_id;
+ uint64_t game_id;
+};
+
+struct CMsgClientConnectionStats__StatsLogon : public ProtobufCppMessage
+{
+ CMsgClientConnectionStats__StatsLogon() :
+ ProtobufCppMessage(cmsg_client_connection_stats__stats__logon__descriptor)
+ {}
+
+ protobuf_c_boolean has_connect_attempts;
+ int32_t connect_attempts;
+ protobuf_c_boolean has_connect_successes;
+ int32_t connect_successes;
+ protobuf_c_boolean has_connect_failures;
+ int32_t connect_failures;
+ protobuf_c_boolean has_connections_dropped;
+ int32_t connections_dropped;
+ protobuf_c_boolean has_seconds_running;
+ uint32_t seconds_running;
+ protobuf_c_boolean has_msec_tologonthistime;
+ uint32_t msec_tologonthistime;
+ protobuf_c_boolean has_count_bad_cms;
+ uint32_t count_bad_cms;
+ protobuf_c_boolean has_no_udp_connectivity;
+ protobuf_c_boolean no_udp_connectivity;
+ protobuf_c_boolean has_no_tcp_connectivity;
+ protobuf_c_boolean no_tcp_connectivity;
+ protobuf_c_boolean has_no_websocket_443_connectivity;
+ protobuf_c_boolean no_websocket_443_connectivity;
+ protobuf_c_boolean has_no_websocket_non_443_connectivity;
+ protobuf_c_boolean no_websocket_non_443_connectivity;
+};
+
+struct CMsgClientConnectionStats__StatsUDP : public ProtobufCppMessage
+{
+ CMsgClientConnectionStats__StatsUDP() :
+ ProtobufCppMessage(cmsg_client_connection_stats__stats__udp__descriptor)
+ {}
+
+ protobuf_c_boolean has_pkts_sent;
+ uint64_t pkts_sent;
+ protobuf_c_boolean has_bytes_sent;
+ uint64_t bytes_sent;
+ protobuf_c_boolean has_pkts_recv;
+ uint64_t pkts_recv;
+ protobuf_c_boolean has_pkts_processed;
+ uint64_t pkts_processed;
+ protobuf_c_boolean has_bytes_recv;
+ uint64_t bytes_recv;
+};
+
+struct CMsgClientConnectionStats__StatsVConn : public ProtobufCppMessage
+{
+ CMsgClientConnectionStats__StatsVConn() :
+ ProtobufCppMessage(cmsg_client_connection_stats__stats__vconn__descriptor)
+ {}
+
+ protobuf_c_boolean has_connections_udp;
+ uint32_t connections_udp;
+ protobuf_c_boolean has_connections_tcp;
+ uint32_t connections_tcp;
+ CMsgClientConnectionStats__StatsUDP *stats_udp;
+ protobuf_c_boolean has_pkts_abandoned;
+ uint64_t pkts_abandoned;
+ protobuf_c_boolean has_conn_req_received;
+ uint64_t conn_req_received;
+ protobuf_c_boolean has_pkts_resent;
+ uint64_t pkts_resent;
+ protobuf_c_boolean has_msgs_sent;
+ uint64_t msgs_sent;
+ protobuf_c_boolean has_msgs_sent_failed;
+ uint64_t msgs_sent_failed;
+ protobuf_c_boolean has_msgs_recv;
+ uint64_t msgs_recv;
+ protobuf_c_boolean has_datagrams_sent;
+ uint64_t datagrams_sent;
+ protobuf_c_boolean has_datagrams_recv;
+ uint64_t datagrams_recv;
+ protobuf_c_boolean has_bad_pkts_recv;
+ uint64_t bad_pkts_recv;
+ protobuf_c_boolean has_unknown_conn_pkts_recv;
+ uint64_t unknown_conn_pkts_recv;
+ protobuf_c_boolean has_missed_pkts_recv;
+ uint64_t missed_pkts_recv;
+ protobuf_c_boolean has_dup_pkts_recv;
+ uint64_t dup_pkts_recv;
+ protobuf_c_boolean has_failed_connect_challenges;
+ uint64_t failed_connect_challenges;
+ protobuf_c_boolean has_micro_sec_avg_latency;
+ uint32_t micro_sec_avg_latency;
+ protobuf_c_boolean has_micro_sec_min_latency;
+ uint32_t micro_sec_min_latency;
+ protobuf_c_boolean has_micro_sec_max_latency;
+ uint32_t micro_sec_max_latency;
+ protobuf_c_boolean has_mem_pool_msg_in_use;
+ uint32_t mem_pool_msg_in_use;
+};
+
+struct CMsgClientConnectionStats : public ProtobufCppMessage
+{
+ CMsgClientConnectionStats() :
+ ProtobufCppMessage(cmsg_client_connection_stats__descriptor)
+ {}
+
+ CMsgClientConnectionStats__StatsLogon *stats_logon;
+ CMsgClientConnectionStats__StatsVConn *stats_vconn;
+};
+
+struct CMsgClientServersAvailable__ServerTypesAvailable : public ProtobufCppMessage
+{
+ CMsgClientServersAvailable__ServerTypesAvailable() :
+ ProtobufCppMessage(cmsg_client_servers_available__server__types__available__descriptor)
+ {}
+
+ protobuf_c_boolean has_server;
+ uint32_t server;
+ protobuf_c_boolean has_changed;
+ protobuf_c_boolean changed;
+};
+
+struct CMsgClientServersAvailable : public ProtobufCppMessage
+{
+ CMsgClientServersAvailable() :
+ ProtobufCppMessage(cmsg_client_servers_available__descriptor)
+ {}
+
+ size_t n_server_types_available;
+ CMsgClientServersAvailable__ServerTypesAvailable **server_types_available;
+ protobuf_c_boolean has_server_type_for_auth_services;
+ uint32_t server_type_for_auth_services;
+};
+
+struct CMsgClientReportOverlayDetourFailure : public ProtobufCppMessage
+{
+ CMsgClientReportOverlayDetourFailure() :
+ ProtobufCppMessage(cmsg_client_report_overlay_detour_failure__descriptor)
+ {}
+
+ size_t n_failure_strings;
+ char **failure_strings;
+};
+
+struct CMsgClientRequestEncryptedAppTicket : public ProtobufCppMessage
+{
+ CMsgClientRequestEncryptedAppTicket() :
+ ProtobufCppMessage(cmsg_client_request_encrypted_app_ticket__descriptor)
+ {}
+
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+ protobuf_c_boolean has_userdata;
+ ProtobufCBinaryData userdata;
+};
+
+struct CMsgClientRequestEncryptedAppTicketResponse : public ProtobufCppMessage
+{
+ CMsgClientRequestEncryptedAppTicketResponse() :
+ ProtobufCppMessage(cmsg_client_request_encrypted_app_ticket_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ EncryptedAppTicket *encrypted_app_ticket;
+};
+
+struct CMsgClientWalletInfoUpdate : public ProtobufCppMessage
+{
+ CMsgClientWalletInfoUpdate() :
+ ProtobufCppMessage(cmsg_client_wallet_info_update__descriptor)
+ {}
+
+ protobuf_c_boolean has_has_wallet;
+ protobuf_c_boolean has_wallet;
+ protobuf_c_boolean has_balance;
+ int32_t balance;
+ protobuf_c_boolean has_currency;
+ int32_t currency;
+ protobuf_c_boolean has_balance_delayed;
+ int32_t balance_delayed;
+ protobuf_c_boolean has_balance64;
+ int64_t balance64;
+ protobuf_c_boolean has_balance64_delayed;
+ int64_t balance64_delayed;
+ protobuf_c_boolean has_realm;
+ int32_t realm;
+};
+
+struct CMsgClientAMGetClanOfficers : public ProtobufCppMessage
+{
+ CMsgClientAMGetClanOfficers() :
+ ProtobufCppMessage(cmsg_client_amget_clan_officers__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid_clan;
+ uint64_t steamid_clan;
+};
+
+struct CMsgClientAMGetClanOfficersResponse : public ProtobufCppMessage
+{
+ CMsgClientAMGetClanOfficersResponse() :
+ ProtobufCppMessage(cmsg_client_amget_clan_officers_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_steamid_clan;
+ uint64_t steamid_clan;
+ protobuf_c_boolean has_officer_count;
+ int32_t officer_count;
+};
+
+struct CMsgClientAMGetPersonaNameHistory__IdInstance : public ProtobufCppMessage
+{
+ CMsgClientAMGetPersonaNameHistory__IdInstance() :
+ ProtobufCppMessage(cmsg_client_amget_persona_name_history__id_instance__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+};
+
+struct CMsgClientAMGetPersonaNameHistory : public ProtobufCppMessage
+{
+ CMsgClientAMGetPersonaNameHistory() :
+ ProtobufCppMessage(cmsg_client_amget_persona_name_history__descriptor)
+ {}
+
+ protobuf_c_boolean has_id_count;
+ int32_t id_count;
+ size_t n_ids;
+ CMsgClientAMGetPersonaNameHistory__IdInstance **ids;
+};
+
+struct CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance__NameInstance : public ProtobufCppMessage
+{
+ CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance__NameInstance() :
+ ProtobufCppMessage(cmsg_client_amget_persona_name_history_response__name_table_instance__name_instance__descriptor)
+ {}
+
+ protobuf_c_boolean has_name_since;
+ uint32_t name_since;
+ char *name;
+};
+
+struct CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance : public ProtobufCppMessage
+{
+ CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance() :
+ ProtobufCppMessage(cmsg_client_amget_persona_name_history_response__name_table_instance__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ size_t n_names;
+ CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance__NameInstance **names;
+};
+
+struct CMsgClientAMGetPersonaNameHistoryResponse : public ProtobufCppMessage
+{
+ CMsgClientAMGetPersonaNameHistoryResponse() :
+ ProtobufCppMessage(cmsg_client_amget_persona_name_history_response__descriptor)
+ {}
+
+ size_t n_responses;
+ CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance **responses;
+};
+
+struct CMsgClientDeregisterWithServer : public ProtobufCppMessage
+{
+ CMsgClientDeregisterWithServer() :
+ ProtobufCppMessage(cmsg_client_deregister_with_server__descriptor)
+ {}
+
+ protobuf_c_boolean has_eservertype;
+ uint32_t eservertype;
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+};
+
+struct CMsgClientClanState__NameInfo : public ProtobufCppMessage
+{
+ CMsgClientClanState__NameInfo() :
+ ProtobufCppMessage(cmsg_client_clan_state__name_info__descriptor)
+ {}
+
+ char *clan_name;
+ protobuf_c_boolean has_sha_avatar;
+ ProtobufCBinaryData sha_avatar;
+};
+
+struct CMsgClientClanState__UserCounts : public ProtobufCppMessage
+{
+ CMsgClientClanState__UserCounts() :
+ ProtobufCppMessage(cmsg_client_clan_state__user_counts__descriptor)
+ {}
+
+ protobuf_c_boolean has_members;
+ uint32_t members;
+ protobuf_c_boolean has_online;
+ uint32_t online;
+ protobuf_c_boolean has_chatting;
+ uint32_t chatting;
+ protobuf_c_boolean has_in_game;
+ uint32_t in_game;
+ protobuf_c_boolean has_chat_room_members;
+ uint32_t chat_room_members;
+};
+
+struct CMsgClientClanState__Event : public ProtobufCppMessage
+{
+ CMsgClientClanState__Event() :
+ ProtobufCppMessage(cmsg_client_clan_state__event__descriptor)
+ {}
+
+ protobuf_c_boolean has_gid;
+ uint64_t gid;
+ protobuf_c_boolean has_event_time;
+ uint32_t event_time;
+ char *headline;
+ protobuf_c_boolean has_game_id;
+ uint64_t game_id;
+ protobuf_c_boolean has_just_posted;
+ protobuf_c_boolean just_posted;
+};
+
+struct CMsgClientClanState : public ProtobufCppMessage
+{
+ CMsgClientClanState() :
+ ProtobufCppMessage(cmsg_client_clan_state__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid_clan;
+ uint64_t steamid_clan;
+ protobuf_c_boolean has_clan_account_flags;
+ uint32_t clan_account_flags;
+ CMsgClientClanState__NameInfo *name_info;
+ CMsgClientClanState__UserCounts *user_counts;
+ size_t n_events;
+ CMsgClientClanState__Event **events;
+ size_t n_announcements;
+ CMsgClientClanState__Event **announcements;
+ protobuf_c_boolean has_chat_room_private;
+ protobuf_c_boolean chat_room_private;
+};
+
+size_t cmsg_client_register_auth_ticket_with_cm__get_packed_size
+ (const CMsgClientRegisterAuthTicketWithCM *message);
+size_t cmsg_client_register_auth_ticket_with_cm__pack
+ (const CMsgClientRegisterAuthTicketWithCM *message,
+ uint8_t *out);
+size_t cmsg_client_register_auth_ticket_with_cm__pack_to_buffer
+ (const CMsgClientRegisterAuthTicketWithCM *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRegisterAuthTicketWithCM *
+ cmsg_client_register_auth_ticket_with_cm__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_register_auth_ticket_with_cm__free_unpacked
+ (CMsgClientRegisterAuthTicketWithCM *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_ticket_auth_complete__get_packed_size
+ (const CMsgClientTicketAuthComplete *message);
+size_t cmsg_client_ticket_auth_complete__pack
+ (const CMsgClientTicketAuthComplete *message,
+ uint8_t *out);
+size_t cmsg_client_ticket_auth_complete__pack_to_buffer
+ (const CMsgClientTicketAuthComplete *message,
+ ProtobufCBuffer *buffer);
+CMsgClientTicketAuthComplete *
+ cmsg_client_ticket_auth_complete__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_ticket_auth_complete__free_unpacked
+ (CMsgClientTicketAuthComplete *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_cmlist__get_packed_size
+ (const CMsgClientCMList *message);
+size_t cmsg_client_cmlist__pack
+ (const CMsgClientCMList *message,
+ uint8_t *out);
+size_t cmsg_client_cmlist__pack_to_buffer
+ (const CMsgClientCMList *message,
+ ProtobufCBuffer *buffer);
+CMsgClientCMList *
+ cmsg_client_cmlist__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_cmlist__free_unpacked
+ (CMsgClientCMList *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_p2_pconnection_info__get_packed_size
+ (const CMsgClientP2PConnectionInfo *message);
+size_t cmsg_client_p2_pconnection_info__pack
+ (const CMsgClientP2PConnectionInfo *message,
+ uint8_t *out);
+size_t cmsg_client_p2_pconnection_info__pack_to_buffer
+ (const CMsgClientP2PConnectionInfo *message,
+ ProtobufCBuffer *buffer);
+CMsgClientP2PConnectionInfo *
+ cmsg_client_p2_pconnection_info__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_p2_pconnection_info__free_unpacked
+ (CMsgClientP2PConnectionInfo *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_p2_pconnection_fail_info__get_packed_size
+ (const CMsgClientP2PConnectionFailInfo *message);
+size_t cmsg_client_p2_pconnection_fail_info__pack
+ (const CMsgClientP2PConnectionFailInfo *message,
+ uint8_t *out);
+size_t cmsg_client_p2_pconnection_fail_info__pack_to_buffer
+ (const CMsgClientP2PConnectionFailInfo *message,
+ ProtobufCBuffer *buffer);
+CMsgClientP2PConnectionFailInfo *
+ cmsg_client_p2_pconnection_fail_info__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_p2_pconnection_fail_info__free_unpacked
+ (CMsgClientP2PConnectionFailInfo *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_networking_cert_request__get_packed_size
+ (const CMsgClientNetworkingCertRequest *message);
+size_t cmsg_client_networking_cert_request__pack
+ (const CMsgClientNetworkingCertRequest *message,
+ uint8_t *out);
+size_t cmsg_client_networking_cert_request__pack_to_buffer
+ (const CMsgClientNetworkingCertRequest *message,
+ ProtobufCBuffer *buffer);
+CMsgClientNetworkingCertRequest *
+ cmsg_client_networking_cert_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_networking_cert_request__free_unpacked
+ (CMsgClientNetworkingCertRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_networking_cert_reply__get_packed_size
+ (const CMsgClientNetworkingCertReply *message);
+size_t cmsg_client_networking_cert_reply__pack
+ (const CMsgClientNetworkingCertReply *message,
+ uint8_t *out);
+size_t cmsg_client_networking_cert_reply__pack_to_buffer
+ (const CMsgClientNetworkingCertReply *message,
+ ProtobufCBuffer *buffer);
+CMsgClientNetworkingCertReply *
+ cmsg_client_networking_cert_reply__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_networking_cert_reply__free_unpacked
+ (CMsgClientNetworkingCertReply *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_networking_mobile_cert_request__get_packed_size
+ (const CMsgClientNetworkingMobileCertRequest *message);
+size_t cmsg_client_networking_mobile_cert_request__pack
+ (const CMsgClientNetworkingMobileCertRequest *message,
+ uint8_t *out);
+size_t cmsg_client_networking_mobile_cert_request__pack_to_buffer
+ (const CMsgClientNetworkingMobileCertRequest *message,
+ ProtobufCBuffer *buffer);
+CMsgClientNetworkingMobileCertRequest *
+ cmsg_client_networking_mobile_cert_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_networking_mobile_cert_request__free_unpacked
+ (CMsgClientNetworkingMobileCertRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_networking_mobile_cert_reply__get_packed_size
+ (const CMsgClientNetworkingMobileCertReply *message);
+size_t cmsg_client_networking_mobile_cert_reply__pack
+ (const CMsgClientNetworkingMobileCertReply *message,
+ uint8_t *out);
+size_t cmsg_client_networking_mobile_cert_reply__pack_to_buffer
+ (const CMsgClientNetworkingMobileCertReply *message,
+ ProtobufCBuffer *buffer);
+CMsgClientNetworkingMobileCertReply *
+ cmsg_client_networking_mobile_cert_reply__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_networking_mobile_cert_reply__free_unpacked
+ (CMsgClientNetworkingMobileCertReply *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_get_app_ownership_ticket__get_packed_size
+ (const CMsgClientGetAppOwnershipTicket *message);
+size_t cmsg_client_get_app_ownership_ticket__pack
+ (const CMsgClientGetAppOwnershipTicket *message,
+ uint8_t *out);
+size_t cmsg_client_get_app_ownership_ticket__pack_to_buffer
+ (const CMsgClientGetAppOwnershipTicket *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGetAppOwnershipTicket *
+ cmsg_client_get_app_ownership_ticket__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_get_app_ownership_ticket__free_unpacked
+ (CMsgClientGetAppOwnershipTicket *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_get_app_ownership_ticket_response__get_packed_size
+ (const CMsgClientGetAppOwnershipTicketResponse *message);
+size_t cmsg_client_get_app_ownership_ticket_response__pack
+ (const CMsgClientGetAppOwnershipTicketResponse *message,
+ uint8_t *out);
+size_t cmsg_client_get_app_ownership_ticket_response__pack_to_buffer
+ (const CMsgClientGetAppOwnershipTicketResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGetAppOwnershipTicketResponse *
+ cmsg_client_get_app_ownership_ticket_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_get_app_ownership_ticket_response__free_unpacked
+ (CMsgClientGetAppOwnershipTicketResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_session_token__get_packed_size
+ (const CMsgClientSessionToken *message);
+size_t cmsg_client_session_token__pack
+ (const CMsgClientSessionToken *message,
+ uint8_t *out);
+size_t cmsg_client_session_token__pack_to_buffer
+ (const CMsgClientSessionToken *message,
+ ProtobufCBuffer *buffer);
+CMsgClientSessionToken *
+ cmsg_client_session_token__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_session_token__free_unpacked
+ (CMsgClientSessionToken *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_game_connect_tokens__get_packed_size
+ (const CMsgClientGameConnectTokens *message);
+size_t cmsg_client_game_connect_tokens__pack
+ (const CMsgClientGameConnectTokens *message,
+ uint8_t *out);
+size_t cmsg_client_game_connect_tokens__pack_to_buffer
+ (const CMsgClientGameConnectTokens *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGameConnectTokens *
+ cmsg_client_game_connect_tokens__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_game_connect_tokens__free_unpacked
+ (CMsgClientGameConnectTokens *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_games_played__get_packed_size
+ (const CMsgClientGamesPlayed *message);
+size_t cmsg_client_games_played__pack
+ (const CMsgClientGamesPlayed *message,
+ uint8_t *out);
+size_t cmsg_client_games_played__pack_to_buffer
+ (const CMsgClientGamesPlayed *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGamesPlayed *
+ cmsg_client_games_played__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_games_played__free_unpacked
+ (CMsgClientGamesPlayed *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_gsapprove__get_packed_size
+ (const CMsgGSApprove *message);
+size_t cmsg_gsapprove__pack
+ (const CMsgGSApprove *message,
+ uint8_t *out);
+size_t cmsg_gsapprove__pack_to_buffer
+ (const CMsgGSApprove *message,
+ ProtobufCBuffer *buffer);
+CMsgGSApprove *
+ cmsg_gsapprove__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_gsapprove__free_unpacked
+ (CMsgGSApprove *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_gsdeny__get_packed_size
+ (const CMsgGSDeny *message);
+size_t cmsg_gsdeny__pack
+ (const CMsgGSDeny *message,
+ uint8_t *out);
+size_t cmsg_gsdeny__pack_to_buffer
+ (const CMsgGSDeny *message,
+ ProtobufCBuffer *buffer);
+CMsgGSDeny *
+ cmsg_gsdeny__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_gsdeny__free_unpacked
+ (CMsgGSDeny *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_gskick__get_packed_size
+ (const CMsgGSKick *message);
+size_t cmsg_gskick__pack
+ (const CMsgGSKick *message,
+ uint8_t *out);
+size_t cmsg_gskick__pack_to_buffer
+ (const CMsgGSKick *message,
+ ProtobufCBuffer *buffer);
+CMsgGSKick *
+ cmsg_gskick__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_gskick__free_unpacked
+ (CMsgGSKick *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_auth_list__get_packed_size
+ (const CMsgClientAuthList *message);
+size_t cmsg_client_auth_list__pack
+ (const CMsgClientAuthList *message,
+ uint8_t *out);
+size_t cmsg_client_auth_list__pack_to_buffer
+ (const CMsgClientAuthList *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAuthList *
+ cmsg_client_auth_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_auth_list__free_unpacked
+ (CMsgClientAuthList *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_auth_list_ack__get_packed_size
+ (const CMsgClientAuthListAck *message);
+size_t cmsg_client_auth_list_ack__pack
+ (const CMsgClientAuthListAck *message,
+ uint8_t *out);
+size_t cmsg_client_auth_list_ack__pack_to_buffer
+ (const CMsgClientAuthListAck *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAuthListAck *
+ cmsg_client_auth_list_ack__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_auth_list_ack__free_unpacked
+ (CMsgClientAuthListAck *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_license_list__get_packed_size
+ (const CMsgClientLicenseList *message);
+size_t cmsg_client_license_list__pack
+ (const CMsgClientLicenseList *message,
+ uint8_t *out);
+size_t cmsg_client_license_list__pack_to_buffer
+ (const CMsgClientLicenseList *message,
+ ProtobufCBuffer *buffer);
+CMsgClientLicenseList *
+ cmsg_client_license_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_license_list__free_unpacked
+ (CMsgClientLicenseList *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_is_limited_account__get_packed_size
+ (const CMsgClientIsLimitedAccount *message);
+size_t cmsg_client_is_limited_account__pack
+ (const CMsgClientIsLimitedAccount *message,
+ uint8_t *out);
+size_t cmsg_client_is_limited_account__pack_to_buffer
+ (const CMsgClientIsLimitedAccount *message,
+ ProtobufCBuffer *buffer);
+CMsgClientIsLimitedAccount *
+ cmsg_client_is_limited_account__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_is_limited_account__free_unpacked
+ (CMsgClientIsLimitedAccount *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_requested_client_stats__get_packed_size
+ (const CMsgClientRequestedClientStats *message);
+size_t cmsg_client_requested_client_stats__pack
+ (const CMsgClientRequestedClientStats *message,
+ uint8_t *out);
+size_t cmsg_client_requested_client_stats__pack_to_buffer
+ (const CMsgClientRequestedClientStats *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestedClientStats *
+ cmsg_client_requested_client_stats__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_requested_client_stats__free_unpacked
+ (CMsgClientRequestedClientStats *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_stat2__get_packed_size
+ (const CMsgClientStat2 *message);
+size_t cmsg_client_stat2__pack
+ (const CMsgClientStat2 *message,
+ uint8_t *out);
+size_t cmsg_client_stat2__pack_to_buffer
+ (const CMsgClientStat2 *message,
+ ProtobufCBuffer *buffer);
+CMsgClientStat2 *
+ cmsg_client_stat2__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_stat2__free_unpacked
+ (CMsgClientStat2 *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_invite_to_game__get_packed_size
+ (const CMsgClientInviteToGame *message);
+size_t cmsg_client_invite_to_game__pack
+ (const CMsgClientInviteToGame *message,
+ uint8_t *out);
+size_t cmsg_client_invite_to_game__pack_to_buffer
+ (const CMsgClientInviteToGame *message,
+ ProtobufCBuffer *buffer);
+CMsgClientInviteToGame *
+ cmsg_client_invite_to_game__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_invite_to_game__free_unpacked
+ (CMsgClientInviteToGame *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_chat_invite__get_packed_size
+ (const CMsgClientChatInvite *message);
+size_t cmsg_client_chat_invite__pack
+ (const CMsgClientChatInvite *message,
+ uint8_t *out);
+size_t cmsg_client_chat_invite__pack_to_buffer
+ (const CMsgClientChatInvite *message,
+ ProtobufCBuffer *buffer);
+CMsgClientChatInvite *
+ cmsg_client_chat_invite__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_chat_invite__free_unpacked
+ (CMsgClientChatInvite *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_connection_stats__get_packed_size
+ (const CMsgClientConnectionStats *message);
+size_t cmsg_client_connection_stats__pack
+ (const CMsgClientConnectionStats *message,
+ uint8_t *out);
+size_t cmsg_client_connection_stats__pack_to_buffer
+ (const CMsgClientConnectionStats *message,
+ ProtobufCBuffer *buffer);
+CMsgClientConnectionStats *
+ cmsg_client_connection_stats__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_connection_stats__free_unpacked
+ (CMsgClientConnectionStats *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_servers_available__get_packed_size
+ (const CMsgClientServersAvailable *message);
+size_t cmsg_client_servers_available__pack
+ (const CMsgClientServersAvailable *message,
+ uint8_t *out);
+size_t cmsg_client_servers_available__pack_to_buffer
+ (const CMsgClientServersAvailable *message,
+ ProtobufCBuffer *buffer);
+CMsgClientServersAvailable *
+ cmsg_client_servers_available__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_servers_available__free_unpacked
+ (CMsgClientServersAvailable *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_report_overlay_detour_failure__get_packed_size
+ (const CMsgClientReportOverlayDetourFailure *message);
+size_t cmsg_client_report_overlay_detour_failure__pack
+ (const CMsgClientReportOverlayDetourFailure *message,
+ uint8_t *out);
+size_t cmsg_client_report_overlay_detour_failure__pack_to_buffer
+ (const CMsgClientReportOverlayDetourFailure *message,
+ ProtobufCBuffer *buffer);
+CMsgClientReportOverlayDetourFailure *
+ cmsg_client_report_overlay_detour_failure__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_report_overlay_detour_failure__free_unpacked
+ (CMsgClientReportOverlayDetourFailure *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_request_encrypted_app_ticket__get_packed_size
+ (const CMsgClientRequestEncryptedAppTicket *message);
+size_t cmsg_client_request_encrypted_app_ticket__pack
+ (const CMsgClientRequestEncryptedAppTicket *message,
+ uint8_t *out);
+size_t cmsg_client_request_encrypted_app_ticket__pack_to_buffer
+ (const CMsgClientRequestEncryptedAppTicket *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestEncryptedAppTicket *
+ cmsg_client_request_encrypted_app_ticket__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_request_encrypted_app_ticket__free_unpacked
+ (CMsgClientRequestEncryptedAppTicket *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_request_encrypted_app_ticket_response__get_packed_size
+ (const CMsgClientRequestEncryptedAppTicketResponse *message);
+size_t cmsg_client_request_encrypted_app_ticket_response__pack
+ (const CMsgClientRequestEncryptedAppTicketResponse *message,
+ uint8_t *out);
+size_t cmsg_client_request_encrypted_app_ticket_response__pack_to_buffer
+ (const CMsgClientRequestEncryptedAppTicketResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestEncryptedAppTicketResponse *
+ cmsg_client_request_encrypted_app_ticket_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_request_encrypted_app_ticket_response__free_unpacked
+ (CMsgClientRequestEncryptedAppTicketResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_wallet_info_update__get_packed_size
+ (const CMsgClientWalletInfoUpdate *message);
+size_t cmsg_client_wallet_info_update__pack
+ (const CMsgClientWalletInfoUpdate *message,
+ uint8_t *out);
+size_t cmsg_client_wallet_info_update__pack_to_buffer
+ (const CMsgClientWalletInfoUpdate *message,
+ ProtobufCBuffer *buffer);
+CMsgClientWalletInfoUpdate *
+ cmsg_client_wallet_info_update__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_wallet_info_update__free_unpacked
+ (CMsgClientWalletInfoUpdate *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_amget_clan_officers__get_packed_size
+ (const CMsgClientAMGetClanOfficers *message);
+size_t cmsg_client_amget_clan_officers__pack
+ (const CMsgClientAMGetClanOfficers *message,
+ uint8_t *out);
+size_t cmsg_client_amget_clan_officers__pack_to_buffer
+ (const CMsgClientAMGetClanOfficers *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAMGetClanOfficers *
+ cmsg_client_amget_clan_officers__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_amget_clan_officers__free_unpacked
+ (CMsgClientAMGetClanOfficers *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_amget_clan_officers_response__get_packed_size
+ (const CMsgClientAMGetClanOfficersResponse *message);
+size_t cmsg_client_amget_clan_officers_response__pack
+ (const CMsgClientAMGetClanOfficersResponse *message,
+ uint8_t *out);
+size_t cmsg_client_amget_clan_officers_response__pack_to_buffer
+ (const CMsgClientAMGetClanOfficersResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAMGetClanOfficersResponse *
+ cmsg_client_amget_clan_officers_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_amget_clan_officers_response__free_unpacked
+ (CMsgClientAMGetClanOfficersResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_amget_persona_name_history__get_packed_size
+ (const CMsgClientAMGetPersonaNameHistory *message);
+size_t cmsg_client_amget_persona_name_history__pack
+ (const CMsgClientAMGetPersonaNameHistory *message,
+ uint8_t *out);
+size_t cmsg_client_amget_persona_name_history__pack_to_buffer
+ (const CMsgClientAMGetPersonaNameHistory *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAMGetPersonaNameHistory *
+ cmsg_client_amget_persona_name_history__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_amget_persona_name_history__free_unpacked
+ (CMsgClientAMGetPersonaNameHistory *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_amget_persona_name_history_response__get_packed_size
+ (const CMsgClientAMGetPersonaNameHistoryResponse *message);
+size_t cmsg_client_amget_persona_name_history_response__pack
+ (const CMsgClientAMGetPersonaNameHistoryResponse *message,
+ uint8_t *out);
+size_t cmsg_client_amget_persona_name_history_response__pack_to_buffer
+ (const CMsgClientAMGetPersonaNameHistoryResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAMGetPersonaNameHistoryResponse *
+ cmsg_client_amget_persona_name_history_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_amget_persona_name_history_response__free_unpacked
+ (CMsgClientAMGetPersonaNameHistoryResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_deregister_with_server__get_packed_size
+ (const CMsgClientDeregisterWithServer *message);
+size_t cmsg_client_deregister_with_server__pack
+ (const CMsgClientDeregisterWithServer *message,
+ uint8_t *out);
+size_t cmsg_client_deregister_with_server__pack_to_buffer
+ (const CMsgClientDeregisterWithServer *message,
+ ProtobufCBuffer *buffer);
+CMsgClientDeregisterWithServer *
+ cmsg_client_deregister_with_server__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_deregister_with_server__free_unpacked
+ (CMsgClientDeregisterWithServer *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_clan_state__get_packed_size
+ (const CMsgClientClanState *message);
+size_t cmsg_client_clan_state__pack
+ (const CMsgClientClanState *message,
+ uint8_t *out);
+size_t cmsg_client_clan_state__pack_to_buffer
+ (const CMsgClientClanState *message,
+ ProtobufCBuffer *buffer);
+CMsgClientClanState *
+ cmsg_client_clan_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_clan_state__free_unpacked
+ (CMsgClientClanState *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*CMsgClientRegisterAuthTicketWithCM_Closure)
+ (const CMsgClientRegisterAuthTicketWithCM *message,
+ void *closure_data);
+typedef void (*CMsgClientTicketAuthComplete_Closure)
+ (const CMsgClientTicketAuthComplete *message,
+ void *closure_data);
+typedef void (*CMsgClientCMList_Closure)
+ (const CMsgClientCMList *message,
+ void *closure_data);
+typedef void (*CMsgClientP2PConnectionInfo_Closure)
+ (const CMsgClientP2PConnectionInfo *message,
+ void *closure_data);
+typedef void (*CMsgClientP2PConnectionFailInfo_Closure)
+ (const CMsgClientP2PConnectionFailInfo *message,
+ void *closure_data);
+typedef void (*CMsgClientNetworkingCertRequest_Closure)
+ (const CMsgClientNetworkingCertRequest *message,
+ void *closure_data);
+typedef void (*CMsgClientNetworkingCertReply_Closure)
+ (const CMsgClientNetworkingCertReply *message,
+ void *closure_data);
+typedef void (*CMsgClientNetworkingMobileCertRequest_Closure)
+ (const CMsgClientNetworkingMobileCertRequest *message,
+ void *closure_data);
+typedef void (*CMsgClientNetworkingMobileCertReply_Closure)
+ (const CMsgClientNetworkingMobileCertReply *message,
+ void *closure_data);
+typedef void (*CMsgClientGetAppOwnershipTicket_Closure)
+ (const CMsgClientGetAppOwnershipTicket *message,
+ void *closure_data);
+typedef void (*CMsgClientGetAppOwnershipTicketResponse_Closure)
+ (const CMsgClientGetAppOwnershipTicketResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientSessionToken_Closure)
+ (const CMsgClientSessionToken *message,
+ void *closure_data);
+typedef void (*CMsgClientGameConnectTokens_Closure)
+ (const CMsgClientGameConnectTokens *message,
+ void *closure_data);
+typedef void (*CMsgClientGamesPlayed__ProcessInfo_Closure)
+ (const CMsgClientGamesPlayed__ProcessInfo *message,
+ void *closure_data);
+typedef void (*CMsgClientGamesPlayed__GamePlayed_Closure)
+ (const CMsgClientGamesPlayed__GamePlayed *message,
+ void *closure_data);
+typedef void (*CMsgClientGamesPlayed_Closure)
+ (const CMsgClientGamesPlayed *message,
+ void *closure_data);
+typedef void (*CMsgGSApprove_Closure)
+ (const CMsgGSApprove *message,
+ void *closure_data);
+typedef void (*CMsgGSDeny_Closure)
+ (const CMsgGSDeny *message,
+ void *closure_data);
+typedef void (*CMsgGSKick_Closure)
+ (const CMsgGSKick *message,
+ void *closure_data);
+typedef void (*CMsgClientAuthList_Closure)
+ (const CMsgClientAuthList *message,
+ void *closure_data);
+typedef void (*CMsgClientAuthListAck_Closure)
+ (const CMsgClientAuthListAck *message,
+ void *closure_data);
+typedef void (*CMsgClientLicenseList__License_Closure)
+ (const CMsgClientLicenseList__License *message,
+ void *closure_data);
+typedef void (*CMsgClientLicenseList_Closure)
+ (const CMsgClientLicenseList *message,
+ void *closure_data);
+typedef void (*CMsgClientIsLimitedAccount_Closure)
+ (const CMsgClientIsLimitedAccount *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestedClientStats__StatsToSend_Closure)
+ (const CMsgClientRequestedClientStats__StatsToSend *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestedClientStats_Closure)
+ (const CMsgClientRequestedClientStats *message,
+ void *closure_data);
+typedef void (*CMsgClientStat2__StatDetail_Closure)
+ (const CMsgClientStat2__StatDetail *message,
+ void *closure_data);
+typedef void (*CMsgClientStat2_Closure)
+ (const CMsgClientStat2 *message,
+ void *closure_data);
+typedef void (*CMsgClientInviteToGame_Closure)
+ (const CMsgClientInviteToGame *message,
+ void *closure_data);
+typedef void (*CMsgClientChatInvite_Closure)
+ (const CMsgClientChatInvite *message,
+ void *closure_data);
+typedef void (*CMsgClientConnectionStats__StatsLogon_Closure)
+ (const CMsgClientConnectionStats__StatsLogon *message,
+ void *closure_data);
+typedef void (*CMsgClientConnectionStats__StatsUDP_Closure)
+ (const CMsgClientConnectionStats__StatsUDP *message,
+ void *closure_data);
+typedef void (*CMsgClientConnectionStats__StatsVConn_Closure)
+ (const CMsgClientConnectionStats__StatsVConn *message,
+ void *closure_data);
+typedef void (*CMsgClientConnectionStats_Closure)
+ (const CMsgClientConnectionStats *message,
+ void *closure_data);
+typedef void (*CMsgClientServersAvailable__ServerTypesAvailable_Closure)
+ (const CMsgClientServersAvailable__ServerTypesAvailable *message,
+ void *closure_data);
+typedef void (*CMsgClientServersAvailable_Closure)
+ (const CMsgClientServersAvailable *message,
+ void *closure_data);
+typedef void (*CMsgClientReportOverlayDetourFailure_Closure)
+ (const CMsgClientReportOverlayDetourFailure *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestEncryptedAppTicket_Closure)
+ (const CMsgClientRequestEncryptedAppTicket *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestEncryptedAppTicketResponse_Closure)
+ (const CMsgClientRequestEncryptedAppTicketResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientWalletInfoUpdate_Closure)
+ (const CMsgClientWalletInfoUpdate *message,
+ void *closure_data);
+typedef void (*CMsgClientAMGetClanOfficers_Closure)
+ (const CMsgClientAMGetClanOfficers *message,
+ void *closure_data);
+typedef void (*CMsgClientAMGetClanOfficersResponse_Closure)
+ (const CMsgClientAMGetClanOfficersResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientAMGetPersonaNameHistory__IdInstance_Closure)
+ (const CMsgClientAMGetPersonaNameHistory__IdInstance *message,
+ void *closure_data);
+typedef void (*CMsgClientAMGetPersonaNameHistory_Closure)
+ (const CMsgClientAMGetPersonaNameHistory *message,
+ void *closure_data);
+typedef void (*CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance__NameInstance_Closure)
+ (const CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance__NameInstance *message,
+ void *closure_data);
+typedef void (*CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance_Closure)
+ (const CMsgClientAMGetPersonaNameHistoryResponse__NameTableInstance *message,
+ void *closure_data);
+typedef void (*CMsgClientAMGetPersonaNameHistoryResponse_Closure)
+ (const CMsgClientAMGetPersonaNameHistoryResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientDeregisterWithServer_Closure)
+ (const CMsgClientDeregisterWithServer *message,
+ void *closure_data);
+typedef void (*CMsgClientClanState__NameInfo_Closure)
+ (const CMsgClientClanState__NameInfo *message,
+ void *closure_data);
+typedef void (*CMsgClientClanState__UserCounts_Closure)
+ (const CMsgClientClanState__UserCounts *message,
+ void *closure_data);
+typedef void (*CMsgClientClanState__Event_Closure)
+ (const CMsgClientClanState__Event *message,
+ void *closure_data);
+typedef void (*CMsgClientClanState_Closure)
+ (const CMsgClientClanState *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_steammessages_5fclientserver_2eproto__INCLUDED */
diff --git a/protocols/Steam/src/protobuf-c/steammessages_clientserver.proto b/protocols/Steam/src/protobuf-c/steammessages_clientserver.proto
new file mode 100644
index 0000000000..02eb7ecccf
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_clientserver.proto
@@ -0,0 +1,392 @@
+import "steammessages_base.proto";
+import "encrypted_app_ticket.proto";
+
+option optimize_for = SPEED;
+option cc_generic_services = false;
+
+message CMsgClientRegisterAuthTicketWithCM {
+ optional uint32 protocol_version = 1;
+ optional bytes ticket = 3;
+ optional uint64 client_instance_id = 4;
+}
+
+message CMsgClientTicketAuthComplete {
+ optional fixed64 steam_id = 1;
+ optional fixed64 game_id = 2;
+ optional uint32 estate = 3;
+ optional uint32 eauth_session_response = 4;
+ optional bytes DEPRECATED_ticket = 5;
+ optional uint32 ticket_crc = 6;
+ optional uint32 ticket_sequence = 7;
+ optional fixed64 owner_steam_id = 8;
+}
+
+message CMsgClientCMList {
+ repeated uint32 cm_addresses = 1;
+ repeated uint32 cm_ports = 2;
+ repeated string cm_websocket_addresses = 3;
+ optional uint32 percent_default_to_websocket = 4;
+}
+
+message CMsgClientP2PConnectionInfo {
+ optional fixed64 steam_id_dest = 1;
+ optional fixed64 steam_id_src = 2;
+ optional uint32 app_id = 3;
+ optional bytes candidate = 4;
+ optional fixed64 legacy_connection_id_src = 5;
+ optional bytes rendezvous = 6;
+}
+
+message CMsgClientP2PConnectionFailInfo {
+ optional fixed64 steam_id_dest = 1;
+ optional fixed64 steam_id_src = 2;
+ optional uint32 app_id = 3;
+ optional uint32 ep2p_session_error = 4;
+ optional fixed64 connection_id_dest = 5;
+ optional uint32 close_reason = 7;
+ optional string close_message = 8;
+}
+
+message CMsgClientNetworkingCertRequest {
+ optional bytes key_data = 2;
+ optional uint32 app_id = 3;
+}
+
+message CMsgClientNetworkingCertReply {
+ optional bytes cert = 4;
+ optional fixed64 ca_key_id = 5;
+ optional bytes ca_signature = 6;
+}
+
+message CMsgClientNetworkingMobileCertRequest {
+ optional uint32 app_id = 1;
+}
+
+message CMsgClientNetworkingMobileCertReply {
+ optional string encoded_cert = 1;
+}
+
+message CMsgClientGetAppOwnershipTicket {
+ optional uint32 app_id = 1;
+}
+
+message CMsgClientGetAppOwnershipTicketResponse {
+ optional uint32 eresult = 1 [default = 2];
+ optional uint32 app_id = 2;
+ optional bytes ticket = 3;
+}
+
+message CMsgClientSessionToken {
+ optional uint64 token = 1;
+}
+
+message CMsgClientGameConnectTokens {
+ optional uint32 max_tokens_to_keep = 1 [default = 10];
+ repeated bytes tokens = 2;
+}
+
+message CMsgClientGamesPlayed {
+ message ProcessInfo {
+ optional uint32 process_id = 1;
+ optional uint32 process_id_parent = 2;
+ optional bool parent_is_steam = 3;
+ }
+
+ message GamePlayed {
+ optional uint64 steam_id_gs = 1;
+ optional fixed64 game_id = 2;
+ optional uint32 deprecated_game_ip_address = 3;
+ optional uint32 game_port = 4;
+ optional bool is_secure = 5;
+ optional bytes token = 6;
+ optional string game_extra_info = 7;
+ optional bytes game_data_blob = 8;
+ optional uint32 process_id = 9;
+ optional uint32 streaming_provider_id = 10;
+ optional uint32 game_flags = 11;
+ optional uint32 owner_id = 12;
+ optional string vr_hmd_vendor = 13;
+ optional string vr_hmd_model = 14;
+ optional uint32 launch_option_type = 15 [default = 0];
+ optional int32 primary_controller_type = 16 [default = -1];
+ optional string primary_steam_controller_serial = 17;
+ optional uint32 total_steam_controller_count = 18 [default = 0];
+ optional uint32 total_non_steam_controller_count = 19 [default = 0];
+ optional uint64 controller_workshop_file_id = 20 [default = 0];
+ optional uint32 launch_source = 21 [default = 0];
+ optional uint32 vr_hmd_runtime = 22;
+ optional .CMsgIPAddress game_ip_address = 23;
+ optional uint32 controller_connection_type = 24 [default = 0];
+ optional int32 game_os_platform = 25;
+ optional uint32 game_build_id = 26;
+ optional uint32 compat_tool_id = 27 [default = 0];
+ optional string compat_tool_cmd = 28;
+ optional uint32 compat_tool_build_id = 29;
+ optional string beta_name = 30;
+ optional uint32 dlc_context = 31;
+ repeated .CMsgClientGamesPlayed.ProcessInfo process_id_list = 32;
+ }
+
+ repeated .CMsgClientGamesPlayed.GamePlayed games_played = 1;
+ optional uint32 client_os_type = 2;
+ optional uint32 cloud_gaming_platform = 3;
+ optional bool recent_reauthentication = 4;
+}
+
+message CMsgGSApprove {
+ optional fixed64 steam_id = 1;
+ optional fixed64 owner_steam_id = 2;
+}
+
+message CMsgGSDeny {
+ optional fixed64 steam_id = 1;
+ optional int32 edeny_reason = 2;
+ optional string deny_string = 3;
+}
+
+message CMsgGSKick {
+ optional fixed64 steam_id = 1;
+ optional int32 edeny_reason = 2;
+}
+
+message CMsgClientAuthList {
+ optional uint32 tokens_left = 1;
+ optional uint32 last_request_seq = 2;
+ optional uint32 last_request_seq_from_server = 3;
+ repeated .CMsgAuthTicket tickets = 4;
+ repeated uint32 app_ids = 5;
+ optional uint32 message_sequence = 6;
+}
+
+message CMsgClientAuthListAck {
+ repeated uint32 ticket_crc = 1;
+ repeated uint32 app_ids = 2;
+ optional uint32 message_sequence = 3;
+}
+
+message CMsgClientLicenseList {
+ message License {
+ optional uint32 package_id = 1;
+ optional fixed32 time_created = 2;
+ optional fixed32 time_next_process = 3;
+ optional int32 minute_limit = 4;
+ optional int32 minutes_used = 5;
+ optional uint32 payment_method = 6;
+ optional uint32 flags = 7;
+ optional string purchase_country_code = 8;
+ optional uint32 license_type = 9;
+ optional int32 territory_code = 10;
+ optional int32 change_number = 11;
+ optional uint32 owner_id = 12;
+ optional uint32 initial_period = 13;
+ optional uint32 initial_time_unit = 14;
+ optional uint32 renewal_period = 15;
+ optional uint32 renewal_time_unit = 16;
+ optional uint64 access_token = 17;
+ optional uint32 master_package_id = 18;
+ }
+
+ optional int32 eresult = 1 [default = 2];
+ repeated .CMsgClientLicenseList.License licenses = 2;
+}
+
+message CMsgClientIsLimitedAccount {
+ optional bool bis_limited_account = 1;
+ optional bool bis_community_banned = 2;
+ optional bool bis_locked_account = 3;
+ optional bool bis_limited_account_allowed_to_invite_friends = 4;
+}
+
+message CMsgClientRequestedClientStats {
+ message StatsToSend {
+ optional uint32 client_stat = 1;
+ optional uint32 stat_aggregate_method = 2;
+ }
+
+ repeated .CMsgClientRequestedClientStats.StatsToSend stats_to_send = 1;
+}
+
+message CMsgClientStat2 {
+ message StatDetail {
+ optional uint32 client_stat = 1;
+ optional int64 ll_value = 2;
+ optional uint32 time_of_day = 3;
+ optional uint32 cell_id = 4;
+ optional uint32 depot_id = 5;
+ optional uint32 app_id = 6;
+ }
+
+ repeated .CMsgClientStat2.StatDetail stat_detail = 1;
+}
+
+message CMsgClientInviteToGame {
+ optional fixed64 steam_id_dest = 1;
+ optional fixed64 steam_id_src = 2;
+ optional string connect_string = 3;
+ optional string remote_play = 4;
+}
+
+message CMsgClientChatInvite {
+ optional fixed64 steam_id_invited = 1;
+ optional fixed64 steam_id_chat = 2;
+ optional fixed64 steam_id_patron = 3;
+ optional int32 chatroom_type = 4;
+ optional fixed64 steam_id_friend_chat = 5;
+ optional string chat_name = 6;
+ optional fixed64 game_id = 7;
+}
+
+message CMsgClientConnectionStats {
+ message Stats_Logon {
+ optional int32 connect_attempts = 1;
+ optional int32 connect_successes = 2;
+ optional int32 connect_failures = 3;
+ optional int32 connections_dropped = 4;
+ optional uint32 seconds_running = 5;
+ optional uint32 msec_tologonthistime = 6;
+ optional uint32 count_bad_cms = 7;
+ optional bool no_udp_connectivity = 8;
+ optional bool no_tcp_connectivity = 9;
+ optional bool no_websocket_443_connectivity = 10;
+ optional bool no_websocket_non_443_connectivity = 11;
+ }
+
+ message Stats_UDP {
+ optional uint64 pkts_sent = 1;
+ optional uint64 bytes_sent = 2;
+ optional uint64 pkts_recv = 3;
+ optional uint64 pkts_processed = 4;
+ optional uint64 bytes_recv = 5;
+ }
+
+ message Stats_VConn {
+ optional uint32 connections_udp = 1;
+ optional uint32 connections_tcp = 2;
+ optional .CMsgClientConnectionStats.Stats_UDP stats_udp = 3;
+ optional uint64 pkts_abandoned = 4;
+ optional uint64 conn_req_received = 5;
+ optional uint64 pkts_resent = 6;
+ optional uint64 msgs_sent = 7;
+ optional uint64 msgs_sent_failed = 8;
+ optional uint64 msgs_recv = 9;
+ optional uint64 datagrams_sent = 10;
+ optional uint64 datagrams_recv = 11;
+ optional uint64 bad_pkts_recv = 12;
+ optional uint64 unknown_conn_pkts_recv = 13;
+ optional uint64 missed_pkts_recv = 14;
+ optional uint64 dup_pkts_recv = 15;
+ optional uint64 failed_connect_challenges = 16;
+ optional uint32 micro_sec_avg_latency = 17;
+ optional uint32 micro_sec_min_latency = 18;
+ optional uint32 micro_sec_max_latency = 19;
+ optional uint32 mem_pool_msg_in_use = 20;
+ }
+
+ optional .CMsgClientConnectionStats.Stats_Logon stats_logon = 1;
+ optional .CMsgClientConnectionStats.Stats_VConn stats_vconn = 2;
+}
+
+message CMsgClientServersAvailable {
+ message Server_Types_Available {
+ optional uint32 server = 1;
+ optional bool changed = 2;
+ }
+
+ repeated .CMsgClientServersAvailable.Server_Types_Available server_types_available = 1;
+ optional uint32 server_type_for_auth_services = 2;
+}
+
+message CMsgClientReportOverlayDetourFailure {
+ repeated string failure_strings = 1;
+}
+
+message CMsgClientRequestEncryptedAppTicket {
+ optional uint32 app_id = 1;
+ optional bytes userdata = 2;
+}
+
+message CMsgClientRequestEncryptedAppTicketResponse {
+ optional uint32 app_id = 1;
+ optional int32 eresult = 2 [default = 2];
+ optional .EncryptedAppTicket encrypted_app_ticket = 3;
+}
+
+message CMsgClientWalletInfoUpdate {
+ optional bool has_wallet = 1;
+ optional int32 balance = 2;
+ optional int32 currency = 3;
+ optional int32 balance_delayed = 4;
+ optional int64 balance64 = 5 [(php_output_always_number) = true];
+ optional int64 balance64_delayed = 6 [(php_output_always_number) = true];
+ optional int32 realm = 7;
+}
+
+message CMsgClientAMGetClanOfficers {
+ optional fixed64 steamid_clan = 1;
+}
+
+message CMsgClientAMGetClanOfficersResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional fixed64 steamid_clan = 2;
+ optional int32 officer_count = 3;
+}
+
+message CMsgClientAMGetPersonaNameHistory {
+ message IdInstance {
+ optional fixed64 steamid = 1;
+ }
+
+ optional int32 id_count = 1;
+ repeated .CMsgClientAMGetPersonaNameHistory.IdInstance Ids = 2;
+}
+
+message CMsgClientAMGetPersonaNameHistoryResponse {
+ message NameTableInstance {
+ message NameInstance {
+ optional fixed32 name_since = 1;
+ optional string name = 2;
+ }
+
+ optional int32 eresult = 1 [default = 2];
+ optional fixed64 steamid = 2;
+ repeated .CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance.NameInstance names = 3;
+ }
+
+ repeated .CMsgClientAMGetPersonaNameHistoryResponse.NameTableInstance responses = 2;
+}
+
+message CMsgClientDeregisterWithServer {
+ optional uint32 eservertype = 1;
+ optional uint32 app_id = 2;
+}
+
+message CMsgClientClanState {
+ message NameInfo {
+ optional string clan_name = 1;
+ optional bytes sha_avatar = 2;
+ }
+
+ message UserCounts {
+ optional uint32 members = 1;
+ optional uint32 online = 2;
+ optional uint32 chatting = 3;
+ optional uint32 in_game = 4;
+ optional uint32 chat_room_members = 5;
+ }
+
+ message Event {
+ optional fixed64 gid = 1;
+ optional uint32 event_time = 2;
+ optional string headline = 3;
+ optional fixed64 game_id = 4;
+ optional bool just_posted = 5;
+ }
+
+ optional fixed64 steamid_clan = 1;
+ optional uint32 clan_account_flags = 3;
+ optional .CMsgClientClanState.NameInfo name_info = 4;
+ optional .CMsgClientClanState.UserCounts user_counts = 5;
+ repeated .CMsgClientClanState.Event events = 6;
+ repeated .CMsgClientClanState.Event announcements = 7;
+ optional bool chat_room_private = 8;
+}
diff --git a/protocols/Steam/src/protobuf-c/steammessages_clientserver_2.pb-c.cpp b/protocols/Steam/src/protobuf-c/steammessages_clientserver_2.pb-c.cpp
new file mode 100644
index 0000000000..10aea38942
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_clientserver_2.pb-c.cpp
@@ -0,0 +1,12244 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_clientserver_2.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "steammessages_clientserver_2.pb-c.h"
+size_t cmsg_client_update_user_game_info__get_packed_size
+ (const CMsgClientUpdateUserGameInfo *message)
+{
+ assert(message->descriptor == &cmsg_client_update_user_game_info__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_update_user_game_info__pack
+ (const CMsgClientUpdateUserGameInfo *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_update_user_game_info__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_update_user_game_info__pack_to_buffer
+ (const CMsgClientUpdateUserGameInfo *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_update_user_game_info__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientUpdateUserGameInfo *
+ cmsg_client_update_user_game_info__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientUpdateUserGameInfo *)
+ protobuf_c_message_unpack (&cmsg_client_update_user_game_info__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_update_user_game_info__free_unpacked
+ (CMsgClientUpdateUserGameInfo *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_update_user_game_info__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_rich_presence_upload__get_packed_size
+ (const CMsgClientRichPresenceUpload *message)
+{
+ assert(message->descriptor == &cmsg_client_rich_presence_upload__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_rich_presence_upload__pack
+ (const CMsgClientRichPresenceUpload *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_rich_presence_upload__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_rich_presence_upload__pack_to_buffer
+ (const CMsgClientRichPresenceUpload *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_rich_presence_upload__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRichPresenceUpload *
+ cmsg_client_rich_presence_upload__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRichPresenceUpload *)
+ protobuf_c_message_unpack (&cmsg_client_rich_presence_upload__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_rich_presence_upload__free_unpacked
+ (CMsgClientRichPresenceUpload *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_rich_presence_upload__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_rich_presence_request__get_packed_size
+ (const CMsgClientRichPresenceRequest *message)
+{
+ assert(message->descriptor == &cmsg_client_rich_presence_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_rich_presence_request__pack
+ (const CMsgClientRichPresenceRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_rich_presence_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_rich_presence_request__pack_to_buffer
+ (const CMsgClientRichPresenceRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_rich_presence_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRichPresenceRequest *
+ cmsg_client_rich_presence_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRichPresenceRequest *)
+ protobuf_c_message_unpack (&cmsg_client_rich_presence_request__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_rich_presence_request__free_unpacked
+ (CMsgClientRichPresenceRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_rich_presence_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_rich_presence_info__get_packed_size
+ (const CMsgClientRichPresenceInfo *message)
+{
+ assert(message->descriptor == &cmsg_client_rich_presence_info__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_rich_presence_info__pack
+ (const CMsgClientRichPresenceInfo *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_rich_presence_info__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_rich_presence_info__pack_to_buffer
+ (const CMsgClientRichPresenceInfo *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_rich_presence_info__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRichPresenceInfo *
+ cmsg_client_rich_presence_info__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRichPresenceInfo *)
+ protobuf_c_message_unpack (&cmsg_client_rich_presence_info__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_rich_presence_info__free_unpacked
+ (CMsgClientRichPresenceInfo *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_rich_presence_info__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_check_file_signature__get_packed_size
+ (const CMsgClientCheckFileSignature *message)
+{
+ assert(message->descriptor == &cmsg_client_check_file_signature__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_check_file_signature__pack
+ (const CMsgClientCheckFileSignature *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_check_file_signature__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_check_file_signature__pack_to_buffer
+ (const CMsgClientCheckFileSignature *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_check_file_signature__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientCheckFileSignature *
+ cmsg_client_check_file_signature__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientCheckFileSignature *)
+ protobuf_c_message_unpack (&cmsg_client_check_file_signature__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_check_file_signature__free_unpacked
+ (CMsgClientCheckFileSignature *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_check_file_signature__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_check_file_signature_response__get_packed_size
+ (const CMsgClientCheckFileSignatureResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_check_file_signature_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_check_file_signature_response__pack
+ (const CMsgClientCheckFileSignatureResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_check_file_signature_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_check_file_signature_response__pack_to_buffer
+ (const CMsgClientCheckFileSignatureResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_check_file_signature_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientCheckFileSignatureResponse *
+ cmsg_client_check_file_signature_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientCheckFileSignatureResponse *)
+ protobuf_c_message_unpack (&cmsg_client_check_file_signature_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_check_file_signature_response__free_unpacked
+ (CMsgClientCheckFileSignatureResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_check_file_signature_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_read_machine_auth__get_packed_size
+ (const CMsgClientReadMachineAuth *message)
+{
+ assert(message->descriptor == &cmsg_client_read_machine_auth__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_read_machine_auth__pack
+ (const CMsgClientReadMachineAuth *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_read_machine_auth__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_read_machine_auth__pack_to_buffer
+ (const CMsgClientReadMachineAuth *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_read_machine_auth__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientReadMachineAuth *
+ cmsg_client_read_machine_auth__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientReadMachineAuth *)
+ protobuf_c_message_unpack (&cmsg_client_read_machine_auth__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_read_machine_auth__free_unpacked
+ (CMsgClientReadMachineAuth *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_read_machine_auth__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_read_machine_auth_response__get_packed_size
+ (const CMsgClientReadMachineAuthResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_read_machine_auth_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_read_machine_auth_response__pack
+ (const CMsgClientReadMachineAuthResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_read_machine_auth_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_read_machine_auth_response__pack_to_buffer
+ (const CMsgClientReadMachineAuthResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_read_machine_auth_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientReadMachineAuthResponse *
+ cmsg_client_read_machine_auth_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientReadMachineAuthResponse *)
+ protobuf_c_message_unpack (&cmsg_client_read_machine_auth_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_read_machine_auth_response__free_unpacked
+ (CMsgClientReadMachineAuthResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_read_machine_auth_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_update_machine_auth__get_packed_size
+ (const CMsgClientUpdateMachineAuth *message)
+{
+ assert(message->descriptor == &cmsg_client_update_machine_auth__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_update_machine_auth__pack
+ (const CMsgClientUpdateMachineAuth *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_update_machine_auth__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_update_machine_auth__pack_to_buffer
+ (const CMsgClientUpdateMachineAuth *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_update_machine_auth__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientUpdateMachineAuth *
+ cmsg_client_update_machine_auth__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientUpdateMachineAuth *)
+ protobuf_c_message_unpack (&cmsg_client_update_machine_auth__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_update_machine_auth__free_unpacked
+ (CMsgClientUpdateMachineAuth *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_update_machine_auth__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_update_machine_auth_response__get_packed_size
+ (const CMsgClientUpdateMachineAuthResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_update_machine_auth_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_update_machine_auth_response__pack
+ (const CMsgClientUpdateMachineAuthResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_update_machine_auth_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_update_machine_auth_response__pack_to_buffer
+ (const CMsgClientUpdateMachineAuthResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_update_machine_auth_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientUpdateMachineAuthResponse *
+ cmsg_client_update_machine_auth_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientUpdateMachineAuthResponse *)
+ protobuf_c_message_unpack (&cmsg_client_update_machine_auth_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_update_machine_auth_response__free_unpacked
+ (CMsgClientUpdateMachineAuthResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_update_machine_auth_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_request_machine_auth__get_packed_size
+ (const CMsgClientRequestMachineAuth *message)
+{
+ assert(message->descriptor == &cmsg_client_request_machine_auth__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_request_machine_auth__pack
+ (const CMsgClientRequestMachineAuth *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_request_machine_auth__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_request_machine_auth__pack_to_buffer
+ (const CMsgClientRequestMachineAuth *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_request_machine_auth__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestMachineAuth *
+ cmsg_client_request_machine_auth__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestMachineAuth *)
+ protobuf_c_message_unpack (&cmsg_client_request_machine_auth__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_request_machine_auth__free_unpacked
+ (CMsgClientRequestMachineAuth *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_request_machine_auth__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_request_machine_auth_response__get_packed_size
+ (const CMsgClientRequestMachineAuthResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_request_machine_auth_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_request_machine_auth_response__pack
+ (const CMsgClientRequestMachineAuthResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_request_machine_auth_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_request_machine_auth_response__pack_to_buffer
+ (const CMsgClientRequestMachineAuthResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_request_machine_auth_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestMachineAuthResponse *
+ cmsg_client_request_machine_auth_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestMachineAuthResponse *)
+ protobuf_c_message_unpack (&cmsg_client_request_machine_auth_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_request_machine_auth_response__free_unpacked
+ (CMsgClientRequestMachineAuthResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_request_machine_auth_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_register_key__get_packed_size
+ (const CMsgClientRegisterKey *message)
+{
+ assert(message->descriptor == &cmsg_client_register_key__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_register_key__pack
+ (const CMsgClientRegisterKey *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_register_key__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_register_key__pack_to_buffer
+ (const CMsgClientRegisterKey *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_register_key__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRegisterKey *
+ cmsg_client_register_key__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRegisterKey *)
+ protobuf_c_message_unpack (&cmsg_client_register_key__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_register_key__free_unpacked
+ (CMsgClientRegisterKey *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_register_key__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_purchase_response__get_packed_size
+ (const CMsgClientPurchaseResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_purchase_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_purchase_response__pack
+ (const CMsgClientPurchaseResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_purchase_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_purchase_response__pack_to_buffer
+ (const CMsgClientPurchaseResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_purchase_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientPurchaseResponse *
+ cmsg_client_purchase_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientPurchaseResponse *)
+ protobuf_c_message_unpack (&cmsg_client_purchase_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_purchase_response__free_unpacked
+ (CMsgClientPurchaseResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_purchase_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_activate_oemlicense__get_packed_size
+ (const CMsgClientActivateOEMLicense *message)
+{
+ assert(message->descriptor == &cmsg_client_activate_oemlicense__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_activate_oemlicense__pack
+ (const CMsgClientActivateOEMLicense *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_activate_oemlicense__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_activate_oemlicense__pack_to_buffer
+ (const CMsgClientActivateOEMLicense *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_activate_oemlicense__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientActivateOEMLicense *
+ cmsg_client_activate_oemlicense__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientActivateOEMLicense *)
+ protobuf_c_message_unpack (&cmsg_client_activate_oemlicense__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_activate_oemlicense__free_unpacked
+ (CMsgClientActivateOEMLicense *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_activate_oemlicense__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_register_oemmachine__get_packed_size
+ (const CMsgClientRegisterOEMMachine *message)
+{
+ assert(message->descriptor == &cmsg_client_register_oemmachine__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_register_oemmachine__pack
+ (const CMsgClientRegisterOEMMachine *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_register_oemmachine__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_register_oemmachine__pack_to_buffer
+ (const CMsgClientRegisterOEMMachine *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_register_oemmachine__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRegisterOEMMachine *
+ cmsg_client_register_oemmachine__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRegisterOEMMachine *)
+ protobuf_c_message_unpack (&cmsg_client_register_oemmachine__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_register_oemmachine__free_unpacked
+ (CMsgClientRegisterOEMMachine *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_register_oemmachine__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_register_oemmachine_response__get_packed_size
+ (const CMsgClientRegisterOEMMachineResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_register_oemmachine_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_register_oemmachine_response__pack
+ (const CMsgClientRegisterOEMMachineResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_register_oemmachine_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_register_oemmachine_response__pack_to_buffer
+ (const CMsgClientRegisterOEMMachineResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_register_oemmachine_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRegisterOEMMachineResponse *
+ cmsg_client_register_oemmachine_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRegisterOEMMachineResponse *)
+ protobuf_c_message_unpack (&cmsg_client_register_oemmachine_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_register_oemmachine_response__free_unpacked
+ (CMsgClientRegisterOEMMachineResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_register_oemmachine_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_purchase_with_machine_id__get_packed_size
+ (const CMsgClientPurchaseWithMachineID *message)
+{
+ assert(message->descriptor == &cmsg_client_purchase_with_machine_id__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_purchase_with_machine_id__pack
+ (const CMsgClientPurchaseWithMachineID *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_purchase_with_machine_id__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_purchase_with_machine_id__pack_to_buffer
+ (const CMsgClientPurchaseWithMachineID *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_purchase_with_machine_id__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientPurchaseWithMachineID *
+ cmsg_client_purchase_with_machine_id__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientPurchaseWithMachineID *)
+ protobuf_c_message_unpack (&cmsg_client_purchase_with_machine_id__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_purchase_with_machine_id__free_unpacked
+ (CMsgClientPurchaseWithMachineID *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_purchase_with_machine_id__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_trading__initiate_trade_request__get_packed_size
+ (const CMsgTradingInitiateTradeRequest *message)
+{
+ assert(message->descriptor == &cmsg_trading__initiate_trade_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_trading__initiate_trade_request__pack
+ (const CMsgTradingInitiateTradeRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_trading__initiate_trade_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_trading__initiate_trade_request__pack_to_buffer
+ (const CMsgTradingInitiateTradeRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_trading__initiate_trade_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgTradingInitiateTradeRequest *
+ cmsg_trading__initiate_trade_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgTradingInitiateTradeRequest *)
+ protobuf_c_message_unpack (&cmsg_trading__initiate_trade_request__descriptor,
+ allocator, len, data);
+}
+void cmsg_trading__initiate_trade_request__free_unpacked
+ (CMsgTradingInitiateTradeRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_trading__initiate_trade_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_trading__initiate_trade_response__get_packed_size
+ (const CMsgTradingInitiateTradeResponse *message)
+{
+ assert(message->descriptor == &cmsg_trading__initiate_trade_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_trading__initiate_trade_response__pack
+ (const CMsgTradingInitiateTradeResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_trading__initiate_trade_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_trading__initiate_trade_response__pack_to_buffer
+ (const CMsgTradingInitiateTradeResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_trading__initiate_trade_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgTradingInitiateTradeResponse *
+ cmsg_trading__initiate_trade_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgTradingInitiateTradeResponse *)
+ protobuf_c_message_unpack (&cmsg_trading__initiate_trade_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_trading__initiate_trade_response__free_unpacked
+ (CMsgTradingInitiateTradeResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_trading__initiate_trade_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_trading__cancel_trade_request__get_packed_size
+ (const CMsgTradingCancelTradeRequest *message)
+{
+ assert(message->descriptor == &cmsg_trading__cancel_trade_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_trading__cancel_trade_request__pack
+ (const CMsgTradingCancelTradeRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_trading__cancel_trade_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_trading__cancel_trade_request__pack_to_buffer
+ (const CMsgTradingCancelTradeRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_trading__cancel_trade_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgTradingCancelTradeRequest *
+ cmsg_trading__cancel_trade_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgTradingCancelTradeRequest *)
+ protobuf_c_message_unpack (&cmsg_trading__cancel_trade_request__descriptor,
+ allocator, len, data);
+}
+void cmsg_trading__cancel_trade_request__free_unpacked
+ (CMsgTradingCancelTradeRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_trading__cancel_trade_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_trading__start_session__get_packed_size
+ (const CMsgTradingStartSession *message)
+{
+ assert(message->descriptor == &cmsg_trading__start_session__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_trading__start_session__pack
+ (const CMsgTradingStartSession *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_trading__start_session__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_trading__start_session__pack_to_buffer
+ (const CMsgTradingStartSession *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_trading__start_session__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgTradingStartSession *
+ cmsg_trading__start_session__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgTradingStartSession *)
+ protobuf_c_message_unpack (&cmsg_trading__start_session__descriptor,
+ allocator, len, data);
+}
+void cmsg_trading__start_session__free_unpacked
+ (CMsgTradingStartSession *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_trading__start_session__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_get_cdnauth_token__get_packed_size
+ (const CMsgClientGetCDNAuthToken *message)
+{
+ assert(message->descriptor == &cmsg_client_get_cdnauth_token__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_get_cdnauth_token__pack
+ (const CMsgClientGetCDNAuthToken *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_get_cdnauth_token__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_get_cdnauth_token__pack_to_buffer
+ (const CMsgClientGetCDNAuthToken *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_get_cdnauth_token__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGetCDNAuthToken *
+ cmsg_client_get_cdnauth_token__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGetCDNAuthToken *)
+ protobuf_c_message_unpack (&cmsg_client_get_cdnauth_token__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_get_cdnauth_token__free_unpacked
+ (CMsgClientGetCDNAuthToken *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_get_cdnauth_token__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_get_depot_decryption_key__get_packed_size
+ (const CMsgClientGetDepotDecryptionKey *message)
+{
+ assert(message->descriptor == &cmsg_client_get_depot_decryption_key__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_get_depot_decryption_key__pack
+ (const CMsgClientGetDepotDecryptionKey *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_get_depot_decryption_key__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_get_depot_decryption_key__pack_to_buffer
+ (const CMsgClientGetDepotDecryptionKey *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_get_depot_decryption_key__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGetDepotDecryptionKey *
+ cmsg_client_get_depot_decryption_key__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGetDepotDecryptionKey *)
+ protobuf_c_message_unpack (&cmsg_client_get_depot_decryption_key__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_get_depot_decryption_key__free_unpacked
+ (CMsgClientGetDepotDecryptionKey *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_get_depot_decryption_key__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_get_depot_decryption_key_response__get_packed_size
+ (const CMsgClientGetDepotDecryptionKeyResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_get_depot_decryption_key_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_get_depot_decryption_key_response__pack
+ (const CMsgClientGetDepotDecryptionKeyResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_get_depot_decryption_key_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_get_depot_decryption_key_response__pack_to_buffer
+ (const CMsgClientGetDepotDecryptionKeyResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_get_depot_decryption_key_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGetDepotDecryptionKeyResponse *
+ cmsg_client_get_depot_decryption_key_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGetDepotDecryptionKeyResponse *)
+ protobuf_c_message_unpack (&cmsg_client_get_depot_decryption_key_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_get_depot_decryption_key_response__free_unpacked
+ (CMsgClientGetDepotDecryptionKeyResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_get_depot_decryption_key_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_check_app_beta_password__get_packed_size
+ (const CMsgClientCheckAppBetaPassword *message)
+{
+ assert(message->descriptor == &cmsg_client_check_app_beta_password__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_check_app_beta_password__pack
+ (const CMsgClientCheckAppBetaPassword *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_check_app_beta_password__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_check_app_beta_password__pack_to_buffer
+ (const CMsgClientCheckAppBetaPassword *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_check_app_beta_password__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientCheckAppBetaPassword *
+ cmsg_client_check_app_beta_password__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientCheckAppBetaPassword *)
+ protobuf_c_message_unpack (&cmsg_client_check_app_beta_password__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_check_app_beta_password__free_unpacked
+ (CMsgClientCheckAppBetaPassword *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_check_app_beta_password__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_check_app_beta_password_response__get_packed_size
+ (const CMsgClientCheckAppBetaPasswordResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_check_app_beta_password_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_check_app_beta_password_response__pack
+ (const CMsgClientCheckAppBetaPasswordResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_check_app_beta_password_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_check_app_beta_password_response__pack_to_buffer
+ (const CMsgClientCheckAppBetaPasswordResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_check_app_beta_password_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientCheckAppBetaPasswordResponse *
+ cmsg_client_check_app_beta_password_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientCheckAppBetaPasswordResponse *)
+ protobuf_c_message_unpack (&cmsg_client_check_app_beta_password_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_check_app_beta_password_response__free_unpacked
+ (CMsgClientCheckAppBetaPasswordResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_check_app_beta_password_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_get_cdnauth_token_response__get_packed_size
+ (const CMsgClientGetCDNAuthTokenResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_get_cdnauth_token_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_get_cdnauth_token_response__pack
+ (const CMsgClientGetCDNAuthTokenResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_get_cdnauth_token_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_get_cdnauth_token_response__pack_to_buffer
+ (const CMsgClientGetCDNAuthTokenResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_get_cdnauth_token_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGetCDNAuthTokenResponse *
+ cmsg_client_get_cdnauth_token_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGetCDNAuthTokenResponse *)
+ protobuf_c_message_unpack (&cmsg_client_get_cdnauth_token_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_get_cdnauth_token_response__free_unpacked
+ (CMsgClientGetCDNAuthTokenResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_get_cdnauth_token_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_download_rate_statistics__get_packed_size
+ (const CMsgDownloadRateStatistics *message)
+{
+ assert(message->descriptor == &cmsg_download_rate_statistics__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_download_rate_statistics__pack
+ (const CMsgDownloadRateStatistics *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_download_rate_statistics__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_download_rate_statistics__pack_to_buffer
+ (const CMsgDownloadRateStatistics *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_download_rate_statistics__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgDownloadRateStatistics *
+ cmsg_download_rate_statistics__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgDownloadRateStatistics *)
+ protobuf_c_message_unpack (&cmsg_download_rate_statistics__descriptor,
+ allocator, len, data);
+}
+void cmsg_download_rate_statistics__free_unpacked
+ (CMsgDownloadRateStatistics *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_download_rate_statistics__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_request_account_data__get_packed_size
+ (const CMsgClientRequestAccountData *message)
+{
+ assert(message->descriptor == &cmsg_client_request_account_data__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_request_account_data__pack
+ (const CMsgClientRequestAccountData *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_request_account_data__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_request_account_data__pack_to_buffer
+ (const CMsgClientRequestAccountData *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_request_account_data__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestAccountData *
+ cmsg_client_request_account_data__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestAccountData *)
+ protobuf_c_message_unpack (&cmsg_client_request_account_data__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_request_account_data__free_unpacked
+ (CMsgClientRequestAccountData *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_request_account_data__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_request_account_data_response__get_packed_size
+ (const CMsgClientRequestAccountDataResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_request_account_data_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_request_account_data_response__pack
+ (const CMsgClientRequestAccountDataResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_request_account_data_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_request_account_data_response__pack_to_buffer
+ (const CMsgClientRequestAccountDataResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_request_account_data_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestAccountDataResponse *
+ cmsg_client_request_account_data_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestAccountDataResponse *)
+ protobuf_c_message_unpack (&cmsg_client_request_account_data_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_request_account_data_response__free_unpacked
+ (CMsgClientRequestAccountDataResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_request_account_data_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_ugsget_global_stats__get_packed_size
+ (const CMsgClientUGSGetGlobalStats *message)
+{
+ assert(message->descriptor == &cmsg_client_ugsget_global_stats__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_ugsget_global_stats__pack
+ (const CMsgClientUGSGetGlobalStats *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_ugsget_global_stats__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_ugsget_global_stats__pack_to_buffer
+ (const CMsgClientUGSGetGlobalStats *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_ugsget_global_stats__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientUGSGetGlobalStats *
+ cmsg_client_ugsget_global_stats__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientUGSGetGlobalStats *)
+ protobuf_c_message_unpack (&cmsg_client_ugsget_global_stats__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_ugsget_global_stats__free_unpacked
+ (CMsgClientUGSGetGlobalStats *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_ugsget_global_stats__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_ugsget_global_stats_response__get_packed_size
+ (const CMsgClientUGSGetGlobalStatsResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_ugsget_global_stats_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_ugsget_global_stats_response__pack
+ (const CMsgClientUGSGetGlobalStatsResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_ugsget_global_stats_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_ugsget_global_stats_response__pack_to_buffer
+ (const CMsgClientUGSGetGlobalStatsResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_ugsget_global_stats_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientUGSGetGlobalStatsResponse *
+ cmsg_client_ugsget_global_stats_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientUGSGetGlobalStatsResponse *)
+ protobuf_c_message_unpack (&cmsg_client_ugsget_global_stats_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_ugsget_global_stats_response__free_unpacked
+ (CMsgClientUGSGetGlobalStatsResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_ugsget_global_stats_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_redeem_guest_pass__get_packed_size
+ (const CMsgClientRedeemGuestPass *message)
+{
+ assert(message->descriptor == &cmsg_client_redeem_guest_pass__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_redeem_guest_pass__pack
+ (const CMsgClientRedeemGuestPass *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_redeem_guest_pass__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_redeem_guest_pass__pack_to_buffer
+ (const CMsgClientRedeemGuestPass *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_redeem_guest_pass__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRedeemGuestPass *
+ cmsg_client_redeem_guest_pass__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRedeemGuestPass *)
+ protobuf_c_message_unpack (&cmsg_client_redeem_guest_pass__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_redeem_guest_pass__free_unpacked
+ (CMsgClientRedeemGuestPass *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_redeem_guest_pass__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_redeem_guest_pass_response__get_packed_size
+ (const CMsgClientRedeemGuestPassResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_redeem_guest_pass_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_redeem_guest_pass_response__pack
+ (const CMsgClientRedeemGuestPassResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_redeem_guest_pass_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_redeem_guest_pass_response__pack_to_buffer
+ (const CMsgClientRedeemGuestPassResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_redeem_guest_pass_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRedeemGuestPassResponse *
+ cmsg_client_redeem_guest_pass_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRedeemGuestPassResponse *)
+ protobuf_c_message_unpack (&cmsg_client_redeem_guest_pass_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_redeem_guest_pass_response__free_unpacked
+ (CMsgClientRedeemGuestPassResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_redeem_guest_pass_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_get_clan_activity_counts__get_packed_size
+ (const CMsgClientGetClanActivityCounts *message)
+{
+ assert(message->descriptor == &cmsg_client_get_clan_activity_counts__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_get_clan_activity_counts__pack
+ (const CMsgClientGetClanActivityCounts *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_get_clan_activity_counts__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_get_clan_activity_counts__pack_to_buffer
+ (const CMsgClientGetClanActivityCounts *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_get_clan_activity_counts__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGetClanActivityCounts *
+ cmsg_client_get_clan_activity_counts__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGetClanActivityCounts *)
+ protobuf_c_message_unpack (&cmsg_client_get_clan_activity_counts__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_get_clan_activity_counts__free_unpacked
+ (CMsgClientGetClanActivityCounts *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_get_clan_activity_counts__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_get_clan_activity_counts_response__get_packed_size
+ (const CMsgClientGetClanActivityCountsResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_get_clan_activity_counts_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_get_clan_activity_counts_response__pack
+ (const CMsgClientGetClanActivityCountsResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_get_clan_activity_counts_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_get_clan_activity_counts_response__pack_to_buffer
+ (const CMsgClientGetClanActivityCountsResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_get_clan_activity_counts_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGetClanActivityCountsResponse *
+ cmsg_client_get_clan_activity_counts_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGetClanActivityCountsResponse *)
+ protobuf_c_message_unpack (&cmsg_client_get_clan_activity_counts_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_get_clan_activity_counts_response__free_unpacked
+ (CMsgClientGetClanActivityCountsResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_get_clan_activity_counts_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_ogsreport_string__get_packed_size
+ (const CMsgClientOGSReportString *message)
+{
+ assert(message->descriptor == &cmsg_client_ogsreport_string__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_ogsreport_string__pack
+ (const CMsgClientOGSReportString *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_ogsreport_string__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_ogsreport_string__pack_to_buffer
+ (const CMsgClientOGSReportString *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_ogsreport_string__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientOGSReportString *
+ cmsg_client_ogsreport_string__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientOGSReportString *)
+ protobuf_c_message_unpack (&cmsg_client_ogsreport_string__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_ogsreport_string__free_unpacked
+ (CMsgClientOGSReportString *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_ogsreport_string__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_ogsreport_bug__get_packed_size
+ (const CMsgClientOGSReportBug *message)
+{
+ assert(message->descriptor == &cmsg_client_ogsreport_bug__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_ogsreport_bug__pack
+ (const CMsgClientOGSReportBug *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_ogsreport_bug__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_ogsreport_bug__pack_to_buffer
+ (const CMsgClientOGSReportBug *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_ogsreport_bug__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientOGSReportBug *
+ cmsg_client_ogsreport_bug__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientOGSReportBug *)
+ protobuf_c_message_unpack (&cmsg_client_ogsreport_bug__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_ogsreport_bug__free_unpacked
+ (CMsgClientOGSReportBug *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_ogsreport_bug__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_sent_logs__get_packed_size
+ (const CMsgClientSentLogs *message)
+{
+ assert(message->descriptor == &cmsg_client_sent_logs__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_sent_logs__pack
+ (const CMsgClientSentLogs *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_sent_logs__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_sent_logs__pack_to_buffer
+ (const CMsgClientSentLogs *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_sent_logs__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientSentLogs *
+ cmsg_client_sent_logs__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientSentLogs *)
+ protobuf_c_message_unpack (&cmsg_client_sent_logs__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_sent_logs__free_unpacked
+ (CMsgClientSentLogs *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_sent_logs__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_gcclient__get_packed_size
+ (const CMsgGCClient *message)
+{
+ assert(message->descriptor == &cmsg_gcclient__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_gcclient__pack
+ (const CMsgGCClient *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_gcclient__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_gcclient__pack_to_buffer
+ (const CMsgGCClient *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_gcclient__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgGCClient *
+ cmsg_gcclient__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgGCClient *)
+ protobuf_c_message_unpack (&cmsg_gcclient__descriptor,
+ allocator, len, data);
+}
+void cmsg_gcclient__free_unpacked
+ (CMsgGCClient *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_gcclient__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_request_free_license__get_packed_size
+ (const CMsgClientRequestFreeLicense *message)
+{
+ assert(message->descriptor == &cmsg_client_request_free_license__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_request_free_license__pack
+ (const CMsgClientRequestFreeLicense *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_request_free_license__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_request_free_license__pack_to_buffer
+ (const CMsgClientRequestFreeLicense *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_request_free_license__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestFreeLicense *
+ cmsg_client_request_free_license__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestFreeLicense *)
+ protobuf_c_message_unpack (&cmsg_client_request_free_license__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_request_free_license__free_unpacked
+ (CMsgClientRequestFreeLicense *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_request_free_license__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_request_free_license_response__get_packed_size
+ (const CMsgClientRequestFreeLicenseResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_request_free_license_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_request_free_license_response__pack
+ (const CMsgClientRequestFreeLicenseResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_request_free_license_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_request_free_license_response__pack_to_buffer
+ (const CMsgClientRequestFreeLicenseResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_request_free_license_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestFreeLicenseResponse *
+ cmsg_client_request_free_license_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestFreeLicenseResponse *)
+ protobuf_c_message_unpack (&cmsg_client_request_free_license_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_request_free_license_response__free_unpacked
+ (CMsgClientRequestFreeLicenseResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_request_free_license_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_drmdownload_request_with_crash_data__get_packed_size
+ (const CMsgDRMDownloadRequestWithCrashData *message)
+{
+ assert(message->descriptor == &cmsg_drmdownload_request_with_crash_data__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_drmdownload_request_with_crash_data__pack
+ (const CMsgDRMDownloadRequestWithCrashData *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_drmdownload_request_with_crash_data__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_drmdownload_request_with_crash_data__pack_to_buffer
+ (const CMsgDRMDownloadRequestWithCrashData *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_drmdownload_request_with_crash_data__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgDRMDownloadRequestWithCrashData *
+ cmsg_drmdownload_request_with_crash_data__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgDRMDownloadRequestWithCrashData *)
+ protobuf_c_message_unpack (&cmsg_drmdownload_request_with_crash_data__descriptor,
+ allocator, len, data);
+}
+void cmsg_drmdownload_request_with_crash_data__free_unpacked
+ (CMsgDRMDownloadRequestWithCrashData *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_drmdownload_request_with_crash_data__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_drmdownload_response__get_packed_size
+ (const CMsgDRMDownloadResponse *message)
+{
+ assert(message->descriptor == &cmsg_drmdownload_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_drmdownload_response__pack
+ (const CMsgDRMDownloadResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_drmdownload_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_drmdownload_response__pack_to_buffer
+ (const CMsgDRMDownloadResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_drmdownload_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgDRMDownloadResponse *
+ cmsg_drmdownload_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgDRMDownloadResponse *)
+ protobuf_c_message_unpack (&cmsg_drmdownload_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_drmdownload_response__free_unpacked
+ (CMsgDRMDownloadResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_drmdownload_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_drmfinal_result__get_packed_size
+ (const CMsgDRMFinalResult *message)
+{
+ assert(message->descriptor == &cmsg_drmfinal_result__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_drmfinal_result__pack
+ (const CMsgDRMFinalResult *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_drmfinal_result__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_drmfinal_result__pack_to_buffer
+ (const CMsgDRMFinalResult *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_drmfinal_result__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgDRMFinalResult *
+ cmsg_drmfinal_result__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgDRMFinalResult *)
+ protobuf_c_message_unpack (&cmsg_drmfinal_result__descriptor,
+ allocator, len, data);
+}
+void cmsg_drmfinal_result__free_unpacked
+ (CMsgDRMFinalResult *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_drmfinal_result__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_dpcheck_special_survey__get_packed_size
+ (const CMsgClientDPCheckSpecialSurvey *message)
+{
+ assert(message->descriptor == &cmsg_client_dpcheck_special_survey__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_dpcheck_special_survey__pack
+ (const CMsgClientDPCheckSpecialSurvey *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_dpcheck_special_survey__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_dpcheck_special_survey__pack_to_buffer
+ (const CMsgClientDPCheckSpecialSurvey *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_dpcheck_special_survey__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientDPCheckSpecialSurvey *
+ cmsg_client_dpcheck_special_survey__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientDPCheckSpecialSurvey *)
+ protobuf_c_message_unpack (&cmsg_client_dpcheck_special_survey__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_dpcheck_special_survey__free_unpacked
+ (CMsgClientDPCheckSpecialSurvey *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_dpcheck_special_survey__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_dpcheck_special_survey_response__get_packed_size
+ (const CMsgClientDPCheckSpecialSurveyResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_dpcheck_special_survey_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_dpcheck_special_survey_response__pack
+ (const CMsgClientDPCheckSpecialSurveyResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_dpcheck_special_survey_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_dpcheck_special_survey_response__pack_to_buffer
+ (const CMsgClientDPCheckSpecialSurveyResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_dpcheck_special_survey_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientDPCheckSpecialSurveyResponse *
+ cmsg_client_dpcheck_special_survey_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientDPCheckSpecialSurveyResponse *)
+ protobuf_c_message_unpack (&cmsg_client_dpcheck_special_survey_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_dpcheck_special_survey_response__free_unpacked
+ (CMsgClientDPCheckSpecialSurveyResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_dpcheck_special_survey_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_dpsend_special_survey_response__get_packed_size
+ (const CMsgClientDPSendSpecialSurveyResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_dpsend_special_survey_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_dpsend_special_survey_response__pack
+ (const CMsgClientDPSendSpecialSurveyResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_dpsend_special_survey_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_dpsend_special_survey_response__pack_to_buffer
+ (const CMsgClientDPSendSpecialSurveyResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_dpsend_special_survey_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientDPSendSpecialSurveyResponse *
+ cmsg_client_dpsend_special_survey_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientDPSendSpecialSurveyResponse *)
+ protobuf_c_message_unpack (&cmsg_client_dpsend_special_survey_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_dpsend_special_survey_response__free_unpacked
+ (CMsgClientDPSendSpecialSurveyResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_dpsend_special_survey_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_dpsend_special_survey_response_reply__get_packed_size
+ (const CMsgClientDPSendSpecialSurveyResponseReply *message)
+{
+ assert(message->descriptor == &cmsg_client_dpsend_special_survey_response_reply__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_dpsend_special_survey_response_reply__pack
+ (const CMsgClientDPSendSpecialSurveyResponseReply *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_dpsend_special_survey_response_reply__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_dpsend_special_survey_response_reply__pack_to_buffer
+ (const CMsgClientDPSendSpecialSurveyResponseReply *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_dpsend_special_survey_response_reply__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientDPSendSpecialSurveyResponseReply *
+ cmsg_client_dpsend_special_survey_response_reply__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientDPSendSpecialSurveyResponseReply *)
+ protobuf_c_message_unpack (&cmsg_client_dpsend_special_survey_response_reply__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_dpsend_special_survey_response_reply__free_unpacked
+ (CMsgClientDPSendSpecialSurveyResponseReply *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_dpsend_special_survey_response_reply__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_request_forgotten_password_email__get_packed_size
+ (const CMsgClientRequestForgottenPasswordEmail *message)
+{
+ assert(message->descriptor == &cmsg_client_request_forgotten_password_email__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_request_forgotten_password_email__pack
+ (const CMsgClientRequestForgottenPasswordEmail *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_request_forgotten_password_email__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_request_forgotten_password_email__pack_to_buffer
+ (const CMsgClientRequestForgottenPasswordEmail *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_request_forgotten_password_email__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestForgottenPasswordEmail *
+ cmsg_client_request_forgotten_password_email__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestForgottenPasswordEmail *)
+ protobuf_c_message_unpack (&cmsg_client_request_forgotten_password_email__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_request_forgotten_password_email__free_unpacked
+ (CMsgClientRequestForgottenPasswordEmail *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_request_forgotten_password_email__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_request_forgotten_password_email_response__get_packed_size
+ (const CMsgClientRequestForgottenPasswordEmailResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_request_forgotten_password_email_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_request_forgotten_password_email_response__pack
+ (const CMsgClientRequestForgottenPasswordEmailResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_request_forgotten_password_email_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_request_forgotten_password_email_response__pack_to_buffer
+ (const CMsgClientRequestForgottenPasswordEmailResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_request_forgotten_password_email_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestForgottenPasswordEmailResponse *
+ cmsg_client_request_forgotten_password_email_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestForgottenPasswordEmailResponse *)
+ protobuf_c_message_unpack (&cmsg_client_request_forgotten_password_email_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_request_forgotten_password_email_response__free_unpacked
+ (CMsgClientRequestForgottenPasswordEmailResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_request_forgotten_password_email_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_item_announcements__get_packed_size
+ (const CMsgClientItemAnnouncements *message)
+{
+ assert(message->descriptor == &cmsg_client_item_announcements__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_item_announcements__pack
+ (const CMsgClientItemAnnouncements *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_item_announcements__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_item_announcements__pack_to_buffer
+ (const CMsgClientItemAnnouncements *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_item_announcements__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientItemAnnouncements *
+ cmsg_client_item_announcements__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientItemAnnouncements *)
+ protobuf_c_message_unpack (&cmsg_client_item_announcements__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_item_announcements__free_unpacked
+ (CMsgClientItemAnnouncements *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_item_announcements__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_request_item_announcements__get_packed_size
+ (const CMsgClientRequestItemAnnouncements *message)
+{
+ assert(message->descriptor == &cmsg_client_request_item_announcements__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_request_item_announcements__pack
+ (const CMsgClientRequestItemAnnouncements *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_request_item_announcements__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_request_item_announcements__pack_to_buffer
+ (const CMsgClientRequestItemAnnouncements *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_request_item_announcements__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestItemAnnouncements *
+ cmsg_client_request_item_announcements__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestItemAnnouncements *)
+ protobuf_c_message_unpack (&cmsg_client_request_item_announcements__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_request_item_announcements__free_unpacked
+ (CMsgClientRequestItemAnnouncements *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_request_item_announcements__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_user_notifications__get_packed_size
+ (const CMsgClientUserNotifications *message)
+{
+ assert(message->descriptor == &cmsg_client_user_notifications__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_user_notifications__pack
+ (const CMsgClientUserNotifications *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_user_notifications__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_user_notifications__pack_to_buffer
+ (const CMsgClientUserNotifications *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_user_notifications__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientUserNotifications *
+ cmsg_client_user_notifications__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientUserNotifications *)
+ protobuf_c_message_unpack (&cmsg_client_user_notifications__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_user_notifications__free_unpacked
+ (CMsgClientUserNotifications *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_user_notifications__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_comment_notifications__get_packed_size
+ (const CMsgClientCommentNotifications *message)
+{
+ assert(message->descriptor == &cmsg_client_comment_notifications__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_comment_notifications__pack
+ (const CMsgClientCommentNotifications *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_comment_notifications__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_comment_notifications__pack_to_buffer
+ (const CMsgClientCommentNotifications *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_comment_notifications__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientCommentNotifications *
+ cmsg_client_comment_notifications__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientCommentNotifications *)
+ protobuf_c_message_unpack (&cmsg_client_comment_notifications__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_comment_notifications__free_unpacked
+ (CMsgClientCommentNotifications *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_comment_notifications__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_request_comment_notifications__get_packed_size
+ (const CMsgClientRequestCommentNotifications *message)
+{
+ assert(message->descriptor == &cmsg_client_request_comment_notifications__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_request_comment_notifications__pack
+ (const CMsgClientRequestCommentNotifications *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_request_comment_notifications__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_request_comment_notifications__pack_to_buffer
+ (const CMsgClientRequestCommentNotifications *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_request_comment_notifications__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestCommentNotifications *
+ cmsg_client_request_comment_notifications__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestCommentNotifications *)
+ protobuf_c_message_unpack (&cmsg_client_request_comment_notifications__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_request_comment_notifications__free_unpacked
+ (CMsgClientRequestCommentNotifications *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_request_comment_notifications__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_offline_message_notification__get_packed_size
+ (const CMsgClientOfflineMessageNotification *message)
+{
+ assert(message->descriptor == &cmsg_client_offline_message_notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_offline_message_notification__pack
+ (const CMsgClientOfflineMessageNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_offline_message_notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_offline_message_notification__pack_to_buffer
+ (const CMsgClientOfflineMessageNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_offline_message_notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientOfflineMessageNotification *
+ cmsg_client_offline_message_notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientOfflineMessageNotification *)
+ protobuf_c_message_unpack (&cmsg_client_offline_message_notification__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_offline_message_notification__free_unpacked
+ (CMsgClientOfflineMessageNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_offline_message_notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_request_offline_message_count__get_packed_size
+ (const CMsgClientRequestOfflineMessageCount *message)
+{
+ assert(message->descriptor == &cmsg_client_request_offline_message_count__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_request_offline_message_count__pack
+ (const CMsgClientRequestOfflineMessageCount *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_request_offline_message_count__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_request_offline_message_count__pack_to_buffer
+ (const CMsgClientRequestOfflineMessageCount *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_request_offline_message_count__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestOfflineMessageCount *
+ cmsg_client_request_offline_message_count__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestOfflineMessageCount *)
+ protobuf_c_message_unpack (&cmsg_client_request_offline_message_count__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_request_offline_message_count__free_unpacked
+ (CMsgClientRequestOfflineMessageCount *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_request_offline_message_count__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_chat_get_friend_message_history__get_packed_size
+ (const CMsgClientChatGetFriendMessageHistory *message)
+{
+ assert(message->descriptor == &cmsg_client_chat_get_friend_message_history__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_chat_get_friend_message_history__pack
+ (const CMsgClientChatGetFriendMessageHistory *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_chat_get_friend_message_history__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_chat_get_friend_message_history__pack_to_buffer
+ (const CMsgClientChatGetFriendMessageHistory *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_chat_get_friend_message_history__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientChatGetFriendMessageHistory *
+ cmsg_client_chat_get_friend_message_history__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientChatGetFriendMessageHistory *)
+ protobuf_c_message_unpack (&cmsg_client_chat_get_friend_message_history__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_chat_get_friend_message_history__free_unpacked
+ (CMsgClientChatGetFriendMessageHistory *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_chat_get_friend_message_history__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_chat_get_friend_message_history_response__get_packed_size
+ (const CMsgClientChatGetFriendMessageHistoryResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_chat_get_friend_message_history_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_chat_get_friend_message_history_response__pack
+ (const CMsgClientChatGetFriendMessageHistoryResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_chat_get_friend_message_history_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_chat_get_friend_message_history_response__pack_to_buffer
+ (const CMsgClientChatGetFriendMessageHistoryResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_chat_get_friend_message_history_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientChatGetFriendMessageHistoryResponse *
+ cmsg_client_chat_get_friend_message_history_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientChatGetFriendMessageHistoryResponse *)
+ protobuf_c_message_unpack (&cmsg_client_chat_get_friend_message_history_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_chat_get_friend_message_history_response__free_unpacked
+ (CMsgClientChatGetFriendMessageHistoryResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_chat_get_friend_message_history_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_chat_get_friend_message_history_for_offline_messages__get_packed_size
+ (const CMsgClientChatGetFriendMessageHistoryForOfflineMessages *message)
+{
+ assert(message->descriptor == &cmsg_client_chat_get_friend_message_history_for_offline_messages__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_chat_get_friend_message_history_for_offline_messages__pack
+ (const CMsgClientChatGetFriendMessageHistoryForOfflineMessages *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_chat_get_friend_message_history_for_offline_messages__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_chat_get_friend_message_history_for_offline_messages__pack_to_buffer
+ (const CMsgClientChatGetFriendMessageHistoryForOfflineMessages *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_chat_get_friend_message_history_for_offline_messages__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientChatGetFriendMessageHistoryForOfflineMessages *
+ cmsg_client_chat_get_friend_message_history_for_offline_messages__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientChatGetFriendMessageHistoryForOfflineMessages *)
+ protobuf_c_message_unpack (&cmsg_client_chat_get_friend_message_history_for_offline_messages__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_chat_get_friend_message_history_for_offline_messages__free_unpacked
+ (CMsgClientChatGetFriendMessageHistoryForOfflineMessages *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_chat_get_friend_message_history_for_offline_messages__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_fsget_friends_steam_levels__get_packed_size
+ (const CMsgClientFSGetFriendsSteamLevels *message)
+{
+ assert(message->descriptor == &cmsg_client_fsget_friends_steam_levels__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_fsget_friends_steam_levels__pack
+ (const CMsgClientFSGetFriendsSteamLevels *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_fsget_friends_steam_levels__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_fsget_friends_steam_levels__pack_to_buffer
+ (const CMsgClientFSGetFriendsSteamLevels *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_fsget_friends_steam_levels__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientFSGetFriendsSteamLevels *
+ cmsg_client_fsget_friends_steam_levels__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientFSGetFriendsSteamLevels *)
+ protobuf_c_message_unpack (&cmsg_client_fsget_friends_steam_levels__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_fsget_friends_steam_levels__free_unpacked
+ (CMsgClientFSGetFriendsSteamLevels *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_fsget_friends_steam_levels__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_fsget_friends_steam_levels_response__get_packed_size
+ (const CMsgClientFSGetFriendsSteamLevelsResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_fsget_friends_steam_levels_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_fsget_friends_steam_levels_response__pack
+ (const CMsgClientFSGetFriendsSteamLevelsResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_fsget_friends_steam_levels_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_fsget_friends_steam_levels_response__pack_to_buffer
+ (const CMsgClientFSGetFriendsSteamLevelsResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_fsget_friends_steam_levels_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientFSGetFriendsSteamLevelsResponse *
+ cmsg_client_fsget_friends_steam_levels_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientFSGetFriendsSteamLevelsResponse *)
+ protobuf_c_message_unpack (&cmsg_client_fsget_friends_steam_levels_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_fsget_friends_steam_levels_response__free_unpacked
+ (CMsgClientFSGetFriendsSteamLevelsResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_fsget_friends_steam_levels_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_email_addr_info__get_packed_size
+ (const CMsgClientEmailAddrInfo *message)
+{
+ assert(message->descriptor == &cmsg_client_email_addr_info__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_email_addr_info__pack
+ (const CMsgClientEmailAddrInfo *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_email_addr_info__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_email_addr_info__pack_to_buffer
+ (const CMsgClientEmailAddrInfo *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_email_addr_info__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientEmailAddrInfo *
+ cmsg_client_email_addr_info__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientEmailAddrInfo *)
+ protobuf_c_message_unpack (&cmsg_client_email_addr_info__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_email_addr_info__free_unpacked
+ (CMsgClientEmailAddrInfo *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_email_addr_info__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_creitem_vote_summary__get_packed_size
+ (const CMsgCREItemVoteSummary *message)
+{
+ assert(message->descriptor == &cmsg_creitem_vote_summary__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_creitem_vote_summary__pack
+ (const CMsgCREItemVoteSummary *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_creitem_vote_summary__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_creitem_vote_summary__pack_to_buffer
+ (const CMsgCREItemVoteSummary *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_creitem_vote_summary__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgCREItemVoteSummary *
+ cmsg_creitem_vote_summary__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgCREItemVoteSummary *)
+ protobuf_c_message_unpack (&cmsg_creitem_vote_summary__descriptor,
+ allocator, len, data);
+}
+void cmsg_creitem_vote_summary__free_unpacked
+ (CMsgCREItemVoteSummary *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_creitem_vote_summary__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_creitem_vote_summary_response__get_packed_size
+ (const CMsgCREItemVoteSummaryResponse *message)
+{
+ assert(message->descriptor == &cmsg_creitem_vote_summary_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_creitem_vote_summary_response__pack
+ (const CMsgCREItemVoteSummaryResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_creitem_vote_summary_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_creitem_vote_summary_response__pack_to_buffer
+ (const CMsgCREItemVoteSummaryResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_creitem_vote_summary_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgCREItemVoteSummaryResponse *
+ cmsg_creitem_vote_summary_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgCREItemVoteSummaryResponse *)
+ protobuf_c_message_unpack (&cmsg_creitem_vote_summary_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_creitem_vote_summary_response__free_unpacked
+ (CMsgCREItemVoteSummaryResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_creitem_vote_summary_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_creupdate_user_published_item_vote__get_packed_size
+ (const CMsgCREUpdateUserPublishedItemVote *message)
+{
+ assert(message->descriptor == &cmsg_creupdate_user_published_item_vote__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_creupdate_user_published_item_vote__pack
+ (const CMsgCREUpdateUserPublishedItemVote *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_creupdate_user_published_item_vote__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_creupdate_user_published_item_vote__pack_to_buffer
+ (const CMsgCREUpdateUserPublishedItemVote *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_creupdate_user_published_item_vote__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgCREUpdateUserPublishedItemVote *
+ cmsg_creupdate_user_published_item_vote__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgCREUpdateUserPublishedItemVote *)
+ protobuf_c_message_unpack (&cmsg_creupdate_user_published_item_vote__descriptor,
+ allocator, len, data);
+}
+void cmsg_creupdate_user_published_item_vote__free_unpacked
+ (CMsgCREUpdateUserPublishedItemVote *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_creupdate_user_published_item_vote__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_creupdate_user_published_item_vote_response__get_packed_size
+ (const CMsgCREUpdateUserPublishedItemVoteResponse *message)
+{
+ assert(message->descriptor == &cmsg_creupdate_user_published_item_vote_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_creupdate_user_published_item_vote_response__pack
+ (const CMsgCREUpdateUserPublishedItemVoteResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_creupdate_user_published_item_vote_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_creupdate_user_published_item_vote_response__pack_to_buffer
+ (const CMsgCREUpdateUserPublishedItemVoteResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_creupdate_user_published_item_vote_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgCREUpdateUserPublishedItemVoteResponse *
+ cmsg_creupdate_user_published_item_vote_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgCREUpdateUserPublishedItemVoteResponse *)
+ protobuf_c_message_unpack (&cmsg_creupdate_user_published_item_vote_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_creupdate_user_published_item_vote_response__free_unpacked
+ (CMsgCREUpdateUserPublishedItemVoteResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_creupdate_user_published_item_vote_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_creget_user_published_item_vote_details__get_packed_size
+ (const CMsgCREGetUserPublishedItemVoteDetails *message)
+{
+ assert(message->descriptor == &cmsg_creget_user_published_item_vote_details__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_creget_user_published_item_vote_details__pack
+ (const CMsgCREGetUserPublishedItemVoteDetails *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_creget_user_published_item_vote_details__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_creget_user_published_item_vote_details__pack_to_buffer
+ (const CMsgCREGetUserPublishedItemVoteDetails *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_creget_user_published_item_vote_details__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgCREGetUserPublishedItemVoteDetails *
+ cmsg_creget_user_published_item_vote_details__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgCREGetUserPublishedItemVoteDetails *)
+ protobuf_c_message_unpack (&cmsg_creget_user_published_item_vote_details__descriptor,
+ allocator, len, data);
+}
+void cmsg_creget_user_published_item_vote_details__free_unpacked
+ (CMsgCREGetUserPublishedItemVoteDetails *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_creget_user_published_item_vote_details__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_creget_user_published_item_vote_details_response__get_packed_size
+ (const CMsgCREGetUserPublishedItemVoteDetailsResponse *message)
+{
+ assert(message->descriptor == &cmsg_creget_user_published_item_vote_details_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_creget_user_published_item_vote_details_response__pack
+ (const CMsgCREGetUserPublishedItemVoteDetailsResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_creget_user_published_item_vote_details_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_creget_user_published_item_vote_details_response__pack_to_buffer
+ (const CMsgCREGetUserPublishedItemVoteDetailsResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_creget_user_published_item_vote_details_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgCREGetUserPublishedItemVoteDetailsResponse *
+ cmsg_creget_user_published_item_vote_details_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgCREGetUserPublishedItemVoteDetailsResponse *)
+ protobuf_c_message_unpack (&cmsg_creget_user_published_item_vote_details_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_creget_user_published_item_vote_details_response__free_unpacked
+ (CMsgCREGetUserPublishedItemVoteDetailsResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_creget_user_published_item_vote_details_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_fsget_follower_count__get_packed_size
+ (const CMsgFSGetFollowerCount *message)
+{
+ assert(message->descriptor == &cmsg_fsget_follower_count__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_fsget_follower_count__pack
+ (const CMsgFSGetFollowerCount *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_fsget_follower_count__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_fsget_follower_count__pack_to_buffer
+ (const CMsgFSGetFollowerCount *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_fsget_follower_count__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgFSGetFollowerCount *
+ cmsg_fsget_follower_count__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgFSGetFollowerCount *)
+ protobuf_c_message_unpack (&cmsg_fsget_follower_count__descriptor,
+ allocator, len, data);
+}
+void cmsg_fsget_follower_count__free_unpacked
+ (CMsgFSGetFollowerCount *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_fsget_follower_count__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_fsget_follower_count_response__get_packed_size
+ (const CMsgFSGetFollowerCountResponse *message)
+{
+ assert(message->descriptor == &cmsg_fsget_follower_count_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_fsget_follower_count_response__pack
+ (const CMsgFSGetFollowerCountResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_fsget_follower_count_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_fsget_follower_count_response__pack_to_buffer
+ (const CMsgFSGetFollowerCountResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_fsget_follower_count_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgFSGetFollowerCountResponse *
+ cmsg_fsget_follower_count_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgFSGetFollowerCountResponse *)
+ protobuf_c_message_unpack (&cmsg_fsget_follower_count_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_fsget_follower_count_response__free_unpacked
+ (CMsgFSGetFollowerCountResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_fsget_follower_count_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_fsget_is_following__get_packed_size
+ (const CMsgFSGetIsFollowing *message)
+{
+ assert(message->descriptor == &cmsg_fsget_is_following__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_fsget_is_following__pack
+ (const CMsgFSGetIsFollowing *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_fsget_is_following__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_fsget_is_following__pack_to_buffer
+ (const CMsgFSGetIsFollowing *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_fsget_is_following__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgFSGetIsFollowing *
+ cmsg_fsget_is_following__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgFSGetIsFollowing *)
+ protobuf_c_message_unpack (&cmsg_fsget_is_following__descriptor,
+ allocator, len, data);
+}
+void cmsg_fsget_is_following__free_unpacked
+ (CMsgFSGetIsFollowing *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_fsget_is_following__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_fsget_is_following_response__get_packed_size
+ (const CMsgFSGetIsFollowingResponse *message)
+{
+ assert(message->descriptor == &cmsg_fsget_is_following_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_fsget_is_following_response__pack
+ (const CMsgFSGetIsFollowingResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_fsget_is_following_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_fsget_is_following_response__pack_to_buffer
+ (const CMsgFSGetIsFollowingResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_fsget_is_following_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgFSGetIsFollowingResponse *
+ cmsg_fsget_is_following_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgFSGetIsFollowingResponse *)
+ protobuf_c_message_unpack (&cmsg_fsget_is_following_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_fsget_is_following_response__free_unpacked
+ (CMsgFSGetIsFollowingResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_fsget_is_following_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_fsenumerate_following_list__get_packed_size
+ (const CMsgFSEnumerateFollowingList *message)
+{
+ assert(message->descriptor == &cmsg_fsenumerate_following_list__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_fsenumerate_following_list__pack
+ (const CMsgFSEnumerateFollowingList *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_fsenumerate_following_list__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_fsenumerate_following_list__pack_to_buffer
+ (const CMsgFSEnumerateFollowingList *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_fsenumerate_following_list__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgFSEnumerateFollowingList *
+ cmsg_fsenumerate_following_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgFSEnumerateFollowingList *)
+ protobuf_c_message_unpack (&cmsg_fsenumerate_following_list__descriptor,
+ allocator, len, data);
+}
+void cmsg_fsenumerate_following_list__free_unpacked
+ (CMsgFSEnumerateFollowingList *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_fsenumerate_following_list__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_fsenumerate_following_list_response__get_packed_size
+ (const CMsgFSEnumerateFollowingListResponse *message)
+{
+ assert(message->descriptor == &cmsg_fsenumerate_following_list_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_fsenumerate_following_list_response__pack
+ (const CMsgFSEnumerateFollowingListResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_fsenumerate_following_list_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_fsenumerate_following_list_response__pack_to_buffer
+ (const CMsgFSEnumerateFollowingListResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_fsenumerate_following_list_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgFSEnumerateFollowingListResponse *
+ cmsg_fsenumerate_following_list_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgFSEnumerateFollowingListResponse *)
+ protobuf_c_message_unpack (&cmsg_fsenumerate_following_list_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_fsenumerate_following_list_response__free_unpacked
+ (CMsgFSEnumerateFollowingListResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_fsenumerate_following_list_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_dpget_number_of_current_players__get_packed_size
+ (const CMsgDPGetNumberOfCurrentPlayers *message)
+{
+ assert(message->descriptor == &cmsg_dpget_number_of_current_players__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_dpget_number_of_current_players__pack
+ (const CMsgDPGetNumberOfCurrentPlayers *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_dpget_number_of_current_players__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_dpget_number_of_current_players__pack_to_buffer
+ (const CMsgDPGetNumberOfCurrentPlayers *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_dpget_number_of_current_players__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgDPGetNumberOfCurrentPlayers *
+ cmsg_dpget_number_of_current_players__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgDPGetNumberOfCurrentPlayers *)
+ protobuf_c_message_unpack (&cmsg_dpget_number_of_current_players__descriptor,
+ allocator, len, data);
+}
+void cmsg_dpget_number_of_current_players__free_unpacked
+ (CMsgDPGetNumberOfCurrentPlayers *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_dpget_number_of_current_players__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_dpget_number_of_current_players_response__get_packed_size
+ (const CMsgDPGetNumberOfCurrentPlayersResponse *message)
+{
+ assert(message->descriptor == &cmsg_dpget_number_of_current_players_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_dpget_number_of_current_players_response__pack
+ (const CMsgDPGetNumberOfCurrentPlayersResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_dpget_number_of_current_players_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_dpget_number_of_current_players_response__pack_to_buffer
+ (const CMsgDPGetNumberOfCurrentPlayersResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_dpget_number_of_current_players_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgDPGetNumberOfCurrentPlayersResponse *
+ cmsg_dpget_number_of_current_players_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgDPGetNumberOfCurrentPlayersResponse *)
+ protobuf_c_message_unpack (&cmsg_dpget_number_of_current_players_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_dpget_number_of_current_players_response__free_unpacked
+ (CMsgDPGetNumberOfCurrentPlayersResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_dpget_number_of_current_players_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_friend_user_status_published__get_packed_size
+ (const CMsgClientFriendUserStatusPublished *message)
+{
+ assert(message->descriptor == &cmsg_client_friend_user_status_published__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_friend_user_status_published__pack
+ (const CMsgClientFriendUserStatusPublished *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_friend_user_status_published__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_friend_user_status_published__pack_to_buffer
+ (const CMsgClientFriendUserStatusPublished *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_friend_user_status_published__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientFriendUserStatusPublished *
+ cmsg_client_friend_user_status_published__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientFriendUserStatusPublished *)
+ protobuf_c_message_unpack (&cmsg_client_friend_user_status_published__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_friend_user_status_published__free_unpacked
+ (CMsgClientFriendUserStatusPublished *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_friend_user_status_published__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_service_method_legacy__get_packed_size
+ (const CMsgClientServiceMethodLegacy *message)
+{
+ assert(message->descriptor == &cmsg_client_service_method_legacy__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_service_method_legacy__pack
+ (const CMsgClientServiceMethodLegacy *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_service_method_legacy__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_service_method_legacy__pack_to_buffer
+ (const CMsgClientServiceMethodLegacy *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_service_method_legacy__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientServiceMethodLegacy *
+ cmsg_client_service_method_legacy__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientServiceMethodLegacy *)
+ protobuf_c_message_unpack (&cmsg_client_service_method_legacy__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_service_method_legacy__free_unpacked
+ (CMsgClientServiceMethodLegacy *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_service_method_legacy__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_service_method_legacy_response__get_packed_size
+ (const CMsgClientServiceMethodLegacyResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_service_method_legacy_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_service_method_legacy_response__pack
+ (const CMsgClientServiceMethodLegacyResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_service_method_legacy_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_service_method_legacy_response__pack_to_buffer
+ (const CMsgClientServiceMethodLegacyResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_service_method_legacy_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientServiceMethodLegacyResponse *
+ cmsg_client_service_method_legacy_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientServiceMethodLegacyResponse *)
+ protobuf_c_message_unpack (&cmsg_client_service_method_legacy_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_service_method_legacy_response__free_unpacked
+ (CMsgClientServiceMethodLegacyResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_service_method_legacy_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_uimode__get_packed_size
+ (const CMsgClientUIMode *message)
+{
+ assert(message->descriptor == &cmsg_client_uimode__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_uimode__pack
+ (const CMsgClientUIMode *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_uimode__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_uimode__pack_to_buffer
+ (const CMsgClientUIMode *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_uimode__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientUIMode *
+ cmsg_client_uimode__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientUIMode *)
+ protobuf_c_message_unpack (&cmsg_client_uimode__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_uimode__free_unpacked
+ (CMsgClientUIMode *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_uimode__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_vanity_urlchanged_notification__get_packed_size
+ (const CMsgClientVanityURLChangedNotification *message)
+{
+ assert(message->descriptor == &cmsg_client_vanity_urlchanged_notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_vanity_urlchanged_notification__pack
+ (const CMsgClientVanityURLChangedNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_vanity_urlchanged_notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_vanity_urlchanged_notification__pack_to_buffer
+ (const CMsgClientVanityURLChangedNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_vanity_urlchanged_notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientVanityURLChangedNotification *
+ cmsg_client_vanity_urlchanged_notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientVanityURLChangedNotification *)
+ protobuf_c_message_unpack (&cmsg_client_vanity_urlchanged_notification__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_vanity_urlchanged_notification__free_unpacked
+ (CMsgClientVanityURLChangedNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_vanity_urlchanged_notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_authorize_local_device_request__get_packed_size
+ (const CMsgClientAuthorizeLocalDeviceRequest *message)
+{
+ assert(message->descriptor == &cmsg_client_authorize_local_device_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_authorize_local_device_request__pack
+ (const CMsgClientAuthorizeLocalDeviceRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_authorize_local_device_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_authorize_local_device_request__pack_to_buffer
+ (const CMsgClientAuthorizeLocalDeviceRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_authorize_local_device_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAuthorizeLocalDeviceRequest *
+ cmsg_client_authorize_local_device_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAuthorizeLocalDeviceRequest *)
+ protobuf_c_message_unpack (&cmsg_client_authorize_local_device_request__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_authorize_local_device_request__free_unpacked
+ (CMsgClientAuthorizeLocalDeviceRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_authorize_local_device_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_authorize_local_device__get_packed_size
+ (const CMsgClientAuthorizeLocalDevice *message)
+{
+ assert(message->descriptor == &cmsg_client_authorize_local_device__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_authorize_local_device__pack
+ (const CMsgClientAuthorizeLocalDevice *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_authorize_local_device__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_authorize_local_device__pack_to_buffer
+ (const CMsgClientAuthorizeLocalDevice *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_authorize_local_device__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAuthorizeLocalDevice *
+ cmsg_client_authorize_local_device__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAuthorizeLocalDevice *)
+ protobuf_c_message_unpack (&cmsg_client_authorize_local_device__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_authorize_local_device__free_unpacked
+ (CMsgClientAuthorizeLocalDevice *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_authorize_local_device__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_authorize_local_device_notification__get_packed_size
+ (const CMsgClientAuthorizeLocalDeviceNotification *message)
+{
+ assert(message->descriptor == &cmsg_client_authorize_local_device_notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_authorize_local_device_notification__pack
+ (const CMsgClientAuthorizeLocalDeviceNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_authorize_local_device_notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_authorize_local_device_notification__pack_to_buffer
+ (const CMsgClientAuthorizeLocalDeviceNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_authorize_local_device_notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAuthorizeLocalDeviceNotification *
+ cmsg_client_authorize_local_device_notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAuthorizeLocalDeviceNotification *)
+ protobuf_c_message_unpack (&cmsg_client_authorize_local_device_notification__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_authorize_local_device_notification__free_unpacked
+ (CMsgClientAuthorizeLocalDeviceNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_authorize_local_device_notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_deauthorize_device_request__get_packed_size
+ (const CMsgClientDeauthorizeDeviceRequest *message)
+{
+ assert(message->descriptor == &cmsg_client_deauthorize_device_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_deauthorize_device_request__pack
+ (const CMsgClientDeauthorizeDeviceRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_deauthorize_device_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_deauthorize_device_request__pack_to_buffer
+ (const CMsgClientDeauthorizeDeviceRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_deauthorize_device_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientDeauthorizeDeviceRequest *
+ cmsg_client_deauthorize_device_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientDeauthorizeDeviceRequest *)
+ protobuf_c_message_unpack (&cmsg_client_deauthorize_device_request__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_deauthorize_device_request__free_unpacked
+ (CMsgClientDeauthorizeDeviceRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_deauthorize_device_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_deauthorize_device__get_packed_size
+ (const CMsgClientDeauthorizeDevice *message)
+{
+ assert(message->descriptor == &cmsg_client_deauthorize_device__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_deauthorize_device__pack
+ (const CMsgClientDeauthorizeDevice *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_deauthorize_device__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_deauthorize_device__pack_to_buffer
+ (const CMsgClientDeauthorizeDevice *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_deauthorize_device__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientDeauthorizeDevice *
+ cmsg_client_deauthorize_device__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientDeauthorizeDevice *)
+ protobuf_c_message_unpack (&cmsg_client_deauthorize_device__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_deauthorize_device__free_unpacked
+ (CMsgClientDeauthorizeDevice *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_deauthorize_device__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_use_local_device_authorizations__get_packed_size
+ (const CMsgClientUseLocalDeviceAuthorizations *message)
+{
+ assert(message->descriptor == &cmsg_client_use_local_device_authorizations__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_use_local_device_authorizations__pack
+ (const CMsgClientUseLocalDeviceAuthorizations *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_use_local_device_authorizations__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_use_local_device_authorizations__pack_to_buffer
+ (const CMsgClientUseLocalDeviceAuthorizations *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_use_local_device_authorizations__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientUseLocalDeviceAuthorizations *
+ cmsg_client_use_local_device_authorizations__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientUseLocalDeviceAuthorizations *)
+ protobuf_c_message_unpack (&cmsg_client_use_local_device_authorizations__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_use_local_device_authorizations__free_unpacked
+ (CMsgClientUseLocalDeviceAuthorizations *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_use_local_device_authorizations__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_get_authorized_devices__get_packed_size
+ (const CMsgClientGetAuthorizedDevices *message)
+{
+ assert(message->descriptor == &cmsg_client_get_authorized_devices__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_get_authorized_devices__pack
+ (const CMsgClientGetAuthorizedDevices *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_get_authorized_devices__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_get_authorized_devices__pack_to_buffer
+ (const CMsgClientGetAuthorizedDevices *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_get_authorized_devices__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGetAuthorizedDevices *
+ cmsg_client_get_authorized_devices__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGetAuthorizedDevices *)
+ protobuf_c_message_unpack (&cmsg_client_get_authorized_devices__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_get_authorized_devices__free_unpacked
+ (CMsgClientGetAuthorizedDevices *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_get_authorized_devices__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_get_authorized_devices_response__get_packed_size
+ (const CMsgClientGetAuthorizedDevicesResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_get_authorized_devices_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_get_authorized_devices_response__pack
+ (const CMsgClientGetAuthorizedDevicesResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_get_authorized_devices_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_get_authorized_devices_response__pack_to_buffer
+ (const CMsgClientGetAuthorizedDevicesResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_get_authorized_devices_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGetAuthorizedDevicesResponse *
+ cmsg_client_get_authorized_devices_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGetAuthorizedDevicesResponse *)
+ protobuf_c_message_unpack (&cmsg_client_get_authorized_devices_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_get_authorized_devices_response__free_unpacked
+ (CMsgClientGetAuthorizedDevicesResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_get_authorized_devices_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_shared_library_lock_status__get_packed_size
+ (const CMsgClientSharedLibraryLockStatus *message)
+{
+ assert(message->descriptor == &cmsg_client_shared_library_lock_status__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_shared_library_lock_status__pack
+ (const CMsgClientSharedLibraryLockStatus *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_shared_library_lock_status__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_shared_library_lock_status__pack_to_buffer
+ (const CMsgClientSharedLibraryLockStatus *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_shared_library_lock_status__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientSharedLibraryLockStatus *
+ cmsg_client_shared_library_lock_status__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientSharedLibraryLockStatus *)
+ protobuf_c_message_unpack (&cmsg_client_shared_library_lock_status__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_shared_library_lock_status__free_unpacked
+ (CMsgClientSharedLibraryLockStatus *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_shared_library_lock_status__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_shared_library_stop_playing__get_packed_size
+ (const CMsgClientSharedLibraryStopPlaying *message)
+{
+ assert(message->descriptor == &cmsg_client_shared_library_stop_playing__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_shared_library_stop_playing__pack
+ (const CMsgClientSharedLibraryStopPlaying *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_shared_library_stop_playing__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_shared_library_stop_playing__pack_to_buffer
+ (const CMsgClientSharedLibraryStopPlaying *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_shared_library_stop_playing__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientSharedLibraryStopPlaying *
+ cmsg_client_shared_library_stop_playing__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientSharedLibraryStopPlaying *)
+ protobuf_c_message_unpack (&cmsg_client_shared_library_stop_playing__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_shared_library_stop_playing__free_unpacked
+ (CMsgClientSharedLibraryStopPlaying *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_shared_library_stop_playing__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_service_call__get_packed_size
+ (const CMsgClientServiceCall *message)
+{
+ assert(message->descriptor == &cmsg_client_service_call__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_service_call__pack
+ (const CMsgClientServiceCall *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_service_call__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_service_call__pack_to_buffer
+ (const CMsgClientServiceCall *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_service_call__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientServiceCall *
+ cmsg_client_service_call__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientServiceCall *)
+ protobuf_c_message_unpack (&cmsg_client_service_call__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_service_call__free_unpacked
+ (CMsgClientServiceCall *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_service_call__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_service_module__get_packed_size
+ (const CMsgClientServiceModule *message)
+{
+ assert(message->descriptor == &cmsg_client_service_module__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_service_module__pack
+ (const CMsgClientServiceModule *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_service_module__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_service_module__pack_to_buffer
+ (const CMsgClientServiceModule *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_service_module__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientServiceModule *
+ cmsg_client_service_module__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientServiceModule *)
+ protobuf_c_message_unpack (&cmsg_client_service_module__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_service_module__free_unpacked
+ (CMsgClientServiceModule *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_service_module__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_service_call_response__get_packed_size
+ (const CMsgClientServiceCallResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_service_call_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_service_call_response__pack
+ (const CMsgClientServiceCallResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_service_call_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_service_call_response__pack_to_buffer
+ (const CMsgClientServiceCallResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_service_call_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientServiceCallResponse *
+ cmsg_client_service_call_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientServiceCallResponse *)
+ protobuf_c_message_unpack (&cmsg_client_service_call_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_service_call_response__free_unpacked
+ (CMsgClientServiceCallResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_service_call_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_amunlock_h264__get_packed_size
+ (const CMsgAMUnlockH264 *message)
+{
+ assert(message->descriptor == &cmsg_amunlock_h264__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_amunlock_h264__pack
+ (const CMsgAMUnlockH264 *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_amunlock_h264__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_amunlock_h264__pack_to_buffer
+ (const CMsgAMUnlockH264 *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_amunlock_h264__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgAMUnlockH264 *
+ cmsg_amunlock_h264__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgAMUnlockH264 *)
+ protobuf_c_message_unpack (&cmsg_amunlock_h264__descriptor,
+ allocator, len, data);
+}
+void cmsg_amunlock_h264__free_unpacked
+ (CMsgAMUnlockH264 *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_amunlock_h264__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_amunlock_h264_response__get_packed_size
+ (const CMsgAMUnlockH264Response *message)
+{
+ assert(message->descriptor == &cmsg_amunlock_h264_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_amunlock_h264_response__pack
+ (const CMsgAMUnlockH264Response *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_amunlock_h264_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_amunlock_h264_response__pack_to_buffer
+ (const CMsgAMUnlockH264Response *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_amunlock_h264_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgAMUnlockH264Response *
+ cmsg_amunlock_h264_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgAMUnlockH264Response *)
+ protobuf_c_message_unpack (&cmsg_amunlock_h264_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_amunlock_h264_response__free_unpacked
+ (CMsgAMUnlockH264Response *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_amunlock_h264_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_playing_session_state__get_packed_size
+ (const CMsgClientPlayingSessionState *message)
+{
+ assert(message->descriptor == &cmsg_client_playing_session_state__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_playing_session_state__pack
+ (const CMsgClientPlayingSessionState *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_playing_session_state__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_playing_session_state__pack_to_buffer
+ (const CMsgClientPlayingSessionState *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_playing_session_state__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientPlayingSessionState *
+ cmsg_client_playing_session_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientPlayingSessionState *)
+ protobuf_c_message_unpack (&cmsg_client_playing_session_state__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_playing_session_state__free_unpacked
+ (CMsgClientPlayingSessionState *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_playing_session_state__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_kick_playing_session__get_packed_size
+ (const CMsgClientKickPlayingSession *message)
+{
+ assert(message->descriptor == &cmsg_client_kick_playing_session__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_kick_playing_session__pack
+ (const CMsgClientKickPlayingSession *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_kick_playing_session__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_kick_playing_session__pack_to_buffer
+ (const CMsgClientKickPlayingSession *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_kick_playing_session__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientKickPlayingSession *
+ cmsg_client_kick_playing_session__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientKickPlayingSession *)
+ protobuf_c_message_unpack (&cmsg_client_kick_playing_session__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_kick_playing_session__free_unpacked
+ (CMsgClientKickPlayingSession *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_kick_playing_session__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_voice_call_pre_authorize__get_packed_size
+ (const CMsgClientVoiceCallPreAuthorize *message)
+{
+ assert(message->descriptor == &cmsg_client_voice_call_pre_authorize__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_voice_call_pre_authorize__pack
+ (const CMsgClientVoiceCallPreAuthorize *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_voice_call_pre_authorize__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_voice_call_pre_authorize__pack_to_buffer
+ (const CMsgClientVoiceCallPreAuthorize *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_voice_call_pre_authorize__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientVoiceCallPreAuthorize *
+ cmsg_client_voice_call_pre_authorize__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientVoiceCallPreAuthorize *)
+ protobuf_c_message_unpack (&cmsg_client_voice_call_pre_authorize__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_voice_call_pre_authorize__free_unpacked
+ (CMsgClientVoiceCallPreAuthorize *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_voice_call_pre_authorize__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_voice_call_pre_authorize_response__get_packed_size
+ (const CMsgClientVoiceCallPreAuthorizeResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_voice_call_pre_authorize_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_voice_call_pre_authorize_response__pack
+ (const CMsgClientVoiceCallPreAuthorizeResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_voice_call_pre_authorize_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_voice_call_pre_authorize_response__pack_to_buffer
+ (const CMsgClientVoiceCallPreAuthorizeResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_voice_call_pre_authorize_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientVoiceCallPreAuthorizeResponse *
+ cmsg_client_voice_call_pre_authorize_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientVoiceCallPreAuthorizeResponse *)
+ protobuf_c_message_unpack (&cmsg_client_voice_call_pre_authorize_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_voice_call_pre_authorize_response__free_unpacked
+ (CMsgClientVoiceCallPreAuthorizeResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_voice_call_pre_authorize_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_badge_crafted_notification__get_packed_size
+ (const CMsgBadgeCraftedNotification *message)
+{
+ assert(message->descriptor == &cmsg_badge_crafted_notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_badge_crafted_notification__pack
+ (const CMsgBadgeCraftedNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_badge_crafted_notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_badge_crafted_notification__pack_to_buffer
+ (const CMsgBadgeCraftedNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_badge_crafted_notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgBadgeCraftedNotification *
+ cmsg_badge_crafted_notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgBadgeCraftedNotification *)
+ protobuf_c_message_unpack (&cmsg_badge_crafted_notification__descriptor,
+ allocator, len, data);
+}
+void cmsg_badge_crafted_notification__free_unpacked
+ (CMsgBadgeCraftedNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_badge_crafted_notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_start_peer_content_server__get_packed_size
+ (const CMsgClientStartPeerContentServer *message)
+{
+ assert(message->descriptor == &cmsg_client_start_peer_content_server__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_start_peer_content_server__pack
+ (const CMsgClientStartPeerContentServer *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_start_peer_content_server__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_start_peer_content_server__pack_to_buffer
+ (const CMsgClientStartPeerContentServer *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_start_peer_content_server__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientStartPeerContentServer *
+ cmsg_client_start_peer_content_server__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientStartPeerContentServer *)
+ protobuf_c_message_unpack (&cmsg_client_start_peer_content_server__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_start_peer_content_server__free_unpacked
+ (CMsgClientStartPeerContentServer *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_start_peer_content_server__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_start_peer_content_server_response__get_packed_size
+ (const CMsgClientStartPeerContentServerResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_start_peer_content_server_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_start_peer_content_server_response__pack
+ (const CMsgClientStartPeerContentServerResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_start_peer_content_server_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_start_peer_content_server_response__pack_to_buffer
+ (const CMsgClientStartPeerContentServerResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_start_peer_content_server_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientStartPeerContentServerResponse *
+ cmsg_client_start_peer_content_server_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientStartPeerContentServerResponse *)
+ protobuf_c_message_unpack (&cmsg_client_start_peer_content_server_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_start_peer_content_server_response__free_unpacked
+ (CMsgClientStartPeerContentServerResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_start_peer_content_server_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_get_peer_content_info__get_packed_size
+ (const CMsgClientGetPeerContentInfo *message)
+{
+ assert(message->descriptor == &cmsg_client_get_peer_content_info__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_get_peer_content_info__pack
+ (const CMsgClientGetPeerContentInfo *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_get_peer_content_info__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_get_peer_content_info__pack_to_buffer
+ (const CMsgClientGetPeerContentInfo *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_get_peer_content_info__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGetPeerContentInfo *
+ cmsg_client_get_peer_content_info__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGetPeerContentInfo *)
+ protobuf_c_message_unpack (&cmsg_client_get_peer_content_info__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_get_peer_content_info__free_unpacked
+ (CMsgClientGetPeerContentInfo *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_get_peer_content_info__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_get_peer_content_info_response__get_packed_size
+ (const CMsgClientGetPeerContentInfoResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_get_peer_content_info_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_get_peer_content_info_response__pack
+ (const CMsgClientGetPeerContentInfoResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_get_peer_content_info_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_get_peer_content_info_response__pack_to_buffer
+ (const CMsgClientGetPeerContentInfoResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_get_peer_content_info_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGetPeerContentInfoResponse *
+ cmsg_client_get_peer_content_info_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGetPeerContentInfoResponse *)
+ protobuf_c_message_unpack (&cmsg_client_get_peer_content_info_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_get_peer_content_info_response__free_unpacked
+ (CMsgClientGetPeerContentInfoResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_get_peer_content_info_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+static const ProtobufCFieldDescriptor cmsg_client_update_user_game_info__field_descriptors[5] =
+{
+ {
+ "steamid_idgs",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientUpdateUserGameInfo, has_steamid_idgs),
+ offsetof(CMsgClientUpdateUserGameInfo, steamid_idgs),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "gameid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientUpdateUserGameInfo, has_gameid),
+ offsetof(CMsgClientUpdateUserGameInfo, gameid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_ip",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUpdateUserGameInfo, has_game_ip),
+ offsetof(CMsgClientUpdateUserGameInfo, game_ip),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_port",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUpdateUserGameInfo, has_game_port),
+ offsetof(CMsgClientUpdateUserGameInfo, game_port),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "token",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientUpdateUserGameInfo, has_token),
+ offsetof(CMsgClientUpdateUserGameInfo, token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_update_user_game_info__field_indices_by_name[] = {
+ 2, /* field[2] = game_ip */
+ 3, /* field[3] = game_port */
+ 1, /* field[1] = gameid */
+ 0, /* field[0] = steamid_idgs */
+ 4, /* field[4] = token */
+};
+static const ProtobufCIntRange cmsg_client_update_user_game_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cmsg_client_update_user_game_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientUpdateUserGameInfo",
+ "CMsgClientUpdateUserGameInfo",
+ "CMsgClientUpdateUserGameInfo",
+ "",
+ sizeof(CMsgClientUpdateUserGameInfo),
+ 5,
+ cmsg_client_update_user_game_info__field_descriptors,
+ cmsg_client_update_user_game_info__field_indices_by_name,
+ 1, cmsg_client_update_user_game_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_rich_presence_upload__field_descriptors[2] =
+{
+ {
+ "rich_presence_kv",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientRichPresenceUpload, has_rich_presence_kv),
+ offsetof(CMsgClientRichPresenceUpload, rich_presence_kv),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid_broadcast",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientRichPresenceUpload, n_steamid_broadcast),
+ offsetof(CMsgClientRichPresenceUpload, steamid_broadcast),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_rich_presence_upload__field_indices_by_name[] = {
+ 0, /* field[0] = rich_presence_kv */
+ 1, /* field[1] = steamid_broadcast */
+};
+static const ProtobufCIntRange cmsg_client_rich_presence_upload__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_rich_presence_upload__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRichPresenceUpload",
+ "CMsgClientRichPresenceUpload",
+ "CMsgClientRichPresenceUpload",
+ "",
+ sizeof(CMsgClientRichPresenceUpload),
+ 2,
+ cmsg_client_rich_presence_upload__field_descriptors,
+ cmsg_client_rich_presence_upload__field_indices_by_name,
+ 1, cmsg_client_rich_presence_upload__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_rich_presence_request__field_descriptors[1] =
+{
+ {
+ "steamid_request",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientRichPresenceRequest, n_steamid_request),
+ offsetof(CMsgClientRichPresenceRequest, steamid_request),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_rich_presence_request__field_indices_by_name[] = {
+ 0, /* field[0] = steamid_request */
+};
+static const ProtobufCIntRange cmsg_client_rich_presence_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_rich_presence_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRichPresenceRequest",
+ "CMsgClientRichPresenceRequest",
+ "CMsgClientRichPresenceRequest",
+ "",
+ sizeof(CMsgClientRichPresenceRequest),
+ 1,
+ cmsg_client_rich_presence_request__field_descriptors,
+ cmsg_client_rich_presence_request__field_indices_by_name,
+ 1, cmsg_client_rich_presence_request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_rich_presence_info__rich_presence__field_descriptors[2] =
+{
+ {
+ "steamid_user",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientRichPresenceInfo__RichPresence, has_steamid_user),
+ offsetof(CMsgClientRichPresenceInfo__RichPresence, steamid_user),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "rich_presence_kv",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientRichPresenceInfo__RichPresence, has_rich_presence_kv),
+ offsetof(CMsgClientRichPresenceInfo__RichPresence, rich_presence_kv),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_rich_presence_info__rich_presence__field_indices_by_name[] = {
+ 1, /* field[1] = rich_presence_kv */
+ 0, /* field[0] = steamid_user */
+};
+static const ProtobufCIntRange cmsg_client_rich_presence_info__rich_presence__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_rich_presence_info__rich_presence__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRichPresenceInfo.RichPresence",
+ "RichPresence",
+ "CMsgClientRichPresenceInfo__RichPresence",
+ "",
+ sizeof(CMsgClientRichPresenceInfo__RichPresence),
+ 2,
+ cmsg_client_rich_presence_info__rich_presence__field_descriptors,
+ cmsg_client_rich_presence_info__rich_presence__field_indices_by_name,
+ 1, cmsg_client_rich_presence_info__rich_presence__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_rich_presence_info__field_descriptors[1] =
+{
+ {
+ "rich_presence",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientRichPresenceInfo, n_rich_presence),
+ offsetof(CMsgClientRichPresenceInfo, rich_presence),
+ &cmsg_client_rich_presence_info__rich_presence__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_rich_presence_info__field_indices_by_name[] = {
+ 0, /* field[0] = rich_presence */
+};
+static const ProtobufCIntRange cmsg_client_rich_presence_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_rich_presence_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRichPresenceInfo",
+ "CMsgClientRichPresenceInfo",
+ "CMsgClientRichPresenceInfo",
+ "",
+ sizeof(CMsgClientRichPresenceInfo),
+ 1,
+ cmsg_client_rich_presence_info__field_descriptors,
+ cmsg_client_rich_presence_info__field_indices_by_name,
+ 1, cmsg_client_rich_presence_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_check_file_signature__field_descriptors[1] =
+{
+ {
+ "app_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCheckFileSignature, has_app_id),
+ offsetof(CMsgClientCheckFileSignature, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_check_file_signature__field_indices_by_name[] = {
+ 0, /* field[0] = app_id */
+};
+static const ProtobufCIntRange cmsg_client_check_file_signature__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_check_file_signature__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientCheckFileSignature",
+ "CMsgClientCheckFileSignature",
+ "CMsgClientCheckFileSignature",
+ "",
+ sizeof(CMsgClientCheckFileSignature),
+ 1,
+ cmsg_client_check_file_signature__field_descriptors,
+ cmsg_client_check_file_signature__field_indices_by_name,
+ 1, cmsg_client_check_file_signature__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_check_file_signature_response__field_descriptors[10] =
+{
+ {
+ "app_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCheckFileSignatureResponse, has_app_id),
+ offsetof(CMsgClientCheckFileSignatureResponse, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "pid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCheckFileSignatureResponse, has_pid),
+ offsetof(CMsgClientCheckFileSignatureResponse, pid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "eresult",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCheckFileSignatureResponse, has_eresult),
+ offsetof(CMsgClientCheckFileSignatureResponse, eresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "filename",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientCheckFileSignatureResponse, filename),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "esignatureresult",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCheckFileSignatureResponse, has_esignatureresult),
+ offsetof(CMsgClientCheckFileSignatureResponse, esignatureresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sha_file",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientCheckFileSignatureResponse, has_sha_file),
+ offsetof(CMsgClientCheckFileSignatureResponse, sha_file),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "signatureheader",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientCheckFileSignatureResponse, has_signatureheader),
+ offsetof(CMsgClientCheckFileSignatureResponse, signatureheader),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "filesize",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCheckFileSignatureResponse, has_filesize),
+ offsetof(CMsgClientCheckFileSignatureResponse, filesize),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "getlasterror",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCheckFileSignatureResponse, has_getlasterror),
+ offsetof(CMsgClientCheckFileSignatureResponse, getlasterror),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "evalvesignaturecheckdetail",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCheckFileSignatureResponse, has_evalvesignaturecheckdetail),
+ offsetof(CMsgClientCheckFileSignatureResponse, evalvesignaturecheckdetail),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_check_file_signature_response__field_indices_by_name[] = {
+ 0, /* field[0] = app_id */
+ 2, /* field[2] = eresult */
+ 4, /* field[4] = esignatureresult */
+ 9, /* field[9] = evalvesignaturecheckdetail */
+ 3, /* field[3] = filename */
+ 7, /* field[7] = filesize */
+ 8, /* field[8] = getlasterror */
+ 1, /* field[1] = pid */
+ 5, /* field[5] = sha_file */
+ 6, /* field[6] = signatureheader */
+};
+static const ProtobufCIntRange cmsg_client_check_file_signature_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 10 }
+};
+const ProtobufCMessageDescriptor cmsg_client_check_file_signature_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientCheckFileSignatureResponse",
+ "CMsgClientCheckFileSignatureResponse",
+ "CMsgClientCheckFileSignatureResponse",
+ "",
+ sizeof(CMsgClientCheckFileSignatureResponse),
+ 10,
+ cmsg_client_check_file_signature_response__field_descriptors,
+ cmsg_client_check_file_signature_response__field_indices_by_name,
+ 1, cmsg_client_check_file_signature_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_read_machine_auth__field_descriptors[3] =
+{
+ {
+ "filename",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientReadMachineAuth, filename),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "offset",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientReadMachineAuth, has_offset),
+ offsetof(CMsgClientReadMachineAuth, offset),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "cubtoread",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientReadMachineAuth, has_cubtoread),
+ offsetof(CMsgClientReadMachineAuth, cubtoread),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_read_machine_auth__field_indices_by_name[] = {
+ 2, /* field[2] = cubtoread */
+ 0, /* field[0] = filename */
+ 1, /* field[1] = offset */
+};
+static const ProtobufCIntRange cmsg_client_read_machine_auth__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_read_machine_auth__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientReadMachineAuth",
+ "CMsgClientReadMachineAuth",
+ "CMsgClientReadMachineAuth",
+ "",
+ sizeof(CMsgClientReadMachineAuth),
+ 3,
+ cmsg_client_read_machine_auth__field_descriptors,
+ cmsg_client_read_machine_auth__field_indices_by_name,
+ 1, cmsg_client_read_machine_auth__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_read_machine_auth_response__field_descriptors[9] =
+{
+ {
+ "filename",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientReadMachineAuthResponse, filename),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "eresult",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientReadMachineAuthResponse, has_eresult),
+ offsetof(CMsgClientReadMachineAuthResponse, eresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "filesize",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientReadMachineAuthResponse, has_filesize),
+ offsetof(CMsgClientReadMachineAuthResponse, filesize),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sha_file",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientReadMachineAuthResponse, has_sha_file),
+ offsetof(CMsgClientReadMachineAuthResponse, sha_file),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "getlasterror",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientReadMachineAuthResponse, has_getlasterror),
+ offsetof(CMsgClientReadMachineAuthResponse, getlasterror),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "offset",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientReadMachineAuthResponse, has_offset),
+ offsetof(CMsgClientReadMachineAuthResponse, offset),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "cubread",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientReadMachineAuthResponse, has_cubread),
+ offsetof(CMsgClientReadMachineAuthResponse, cubread),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "bytes_read",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientReadMachineAuthResponse, has_bytes_read),
+ offsetof(CMsgClientReadMachineAuthResponse, bytes_read),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "filename_sentry",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientReadMachineAuthResponse, filename_sentry),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_read_machine_auth_response__field_indices_by_name[] = {
+ 7, /* field[7] = bytes_read */
+ 6, /* field[6] = cubread */
+ 1, /* field[1] = eresult */
+ 0, /* field[0] = filename */
+ 8, /* field[8] = filename_sentry */
+ 2, /* field[2] = filesize */
+ 4, /* field[4] = getlasterror */
+ 5, /* field[5] = offset */
+ 3, /* field[3] = sha_file */
+};
+static const ProtobufCIntRange cmsg_client_read_machine_auth_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 9 }
+};
+const ProtobufCMessageDescriptor cmsg_client_read_machine_auth_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientReadMachineAuthResponse",
+ "CMsgClientReadMachineAuthResponse",
+ "CMsgClientReadMachineAuthResponse",
+ "",
+ sizeof(CMsgClientReadMachineAuthResponse),
+ 9,
+ cmsg_client_read_machine_auth_response__field_descriptors,
+ cmsg_client_read_machine_auth_response__field_indices_by_name,
+ 1, cmsg_client_read_machine_auth_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_update_machine_auth__field_descriptors[8] =
+{
+ {
+ "filename",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientUpdateMachineAuth, filename),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "offset",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUpdateMachineAuth, has_offset),
+ offsetof(CMsgClientUpdateMachineAuth, offset),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "cubtowrite",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUpdateMachineAuth, has_cubtowrite),
+ offsetof(CMsgClientUpdateMachineAuth, cubtowrite),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "bytes",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientUpdateMachineAuth, has_bytes),
+ offsetof(CMsgClientUpdateMachineAuth, bytes),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "otp_type",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUpdateMachineAuth, has_otp_type),
+ offsetof(CMsgClientUpdateMachineAuth, otp_type),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "otp_identifier",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientUpdateMachineAuth, otp_identifier),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "otp_sharedsecret",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientUpdateMachineAuth, has_otp_sharedsecret),
+ offsetof(CMsgClientUpdateMachineAuth, otp_sharedsecret),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "otp_timedrift",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUpdateMachineAuth, has_otp_timedrift),
+ offsetof(CMsgClientUpdateMachineAuth, otp_timedrift),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_update_machine_auth__field_indices_by_name[] = {
+ 3, /* field[3] = bytes */
+ 2, /* field[2] = cubtowrite */
+ 0, /* field[0] = filename */
+ 1, /* field[1] = offset */
+ 5, /* field[5] = otp_identifier */
+ 6, /* field[6] = otp_sharedsecret */
+ 7, /* field[7] = otp_timedrift */
+ 4, /* field[4] = otp_type */
+};
+static const ProtobufCIntRange cmsg_client_update_machine_auth__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor cmsg_client_update_machine_auth__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientUpdateMachineAuth",
+ "CMsgClientUpdateMachineAuth",
+ "CMsgClientUpdateMachineAuth",
+ "",
+ sizeof(CMsgClientUpdateMachineAuth),
+ 8,
+ cmsg_client_update_machine_auth__field_descriptors,
+ cmsg_client_update_machine_auth__field_indices_by_name,
+ 1, cmsg_client_update_machine_auth__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_update_machine_auth_response__field_descriptors[10] =
+{
+ {
+ "filename",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientUpdateMachineAuthResponse, filename),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "eresult",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUpdateMachineAuthResponse, has_eresult),
+ offsetof(CMsgClientUpdateMachineAuthResponse, eresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "filesize",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUpdateMachineAuthResponse, has_filesize),
+ offsetof(CMsgClientUpdateMachineAuthResponse, filesize),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sha_file",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientUpdateMachineAuthResponse, has_sha_file),
+ offsetof(CMsgClientUpdateMachineAuthResponse, sha_file),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "getlasterror",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUpdateMachineAuthResponse, has_getlasterror),
+ offsetof(CMsgClientUpdateMachineAuthResponse, getlasterror),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "offset",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUpdateMachineAuthResponse, has_offset),
+ offsetof(CMsgClientUpdateMachineAuthResponse, offset),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "cubwrote",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUpdateMachineAuthResponse, has_cubwrote),
+ offsetof(CMsgClientUpdateMachineAuthResponse, cubwrote),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "otp_type",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientUpdateMachineAuthResponse, has_otp_type),
+ offsetof(CMsgClientUpdateMachineAuthResponse, otp_type),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "otp_value",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUpdateMachineAuthResponse, has_otp_value),
+ offsetof(CMsgClientUpdateMachineAuthResponse, otp_value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "otp_identifier",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientUpdateMachineAuthResponse, otp_identifier),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_update_machine_auth_response__field_indices_by_name[] = {
+ 6, /* field[6] = cubwrote */
+ 1, /* field[1] = eresult */
+ 0, /* field[0] = filename */
+ 2, /* field[2] = filesize */
+ 4, /* field[4] = getlasterror */
+ 5, /* field[5] = offset */
+ 9, /* field[9] = otp_identifier */
+ 7, /* field[7] = otp_type */
+ 8, /* field[8] = otp_value */
+ 3, /* field[3] = sha_file */
+};
+static const ProtobufCIntRange cmsg_client_update_machine_auth_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 10 }
+};
+const ProtobufCMessageDescriptor cmsg_client_update_machine_auth_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientUpdateMachineAuthResponse",
+ "CMsgClientUpdateMachineAuthResponse",
+ "CMsgClientUpdateMachineAuthResponse",
+ "",
+ sizeof(CMsgClientUpdateMachineAuthResponse),
+ 10,
+ cmsg_client_update_machine_auth_response__field_descriptors,
+ cmsg_client_update_machine_auth_response__field_indices_by_name,
+ 1, cmsg_client_update_machine_auth_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_request_machine_auth__field_descriptors[11] =
+{
+ {
+ "filename",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientRequestMachineAuth, filename),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "eresult_sentryfile",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestMachineAuth, has_eresult_sentryfile),
+ offsetof(CMsgClientRequestMachineAuth, eresult_sentryfile),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "filesize",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestMachineAuth, has_filesize),
+ offsetof(CMsgClientRequestMachineAuth, filesize),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sha_sentryfile",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientRequestMachineAuth, has_sha_sentryfile),
+ offsetof(CMsgClientRequestMachineAuth, sha_sentryfile),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "lock_account_action",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientRequestMachineAuth, has_lock_account_action),
+ offsetof(CMsgClientRequestMachineAuth, lock_account_action),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "otp_type",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestMachineAuth, has_otp_type),
+ offsetof(CMsgClientRequestMachineAuth, otp_type),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "otp_identifier",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientRequestMachineAuth, otp_identifier),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "otp_sharedsecret",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientRequestMachineAuth, has_otp_sharedsecret),
+ offsetof(CMsgClientRequestMachineAuth, otp_sharedsecret),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "otp_value",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestMachineAuth, has_otp_value),
+ offsetof(CMsgClientRequestMachineAuth, otp_value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "machine_name",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientRequestMachineAuth, machine_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "machine_name_userchosen",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientRequestMachineAuth, machine_name_userchosen),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_request_machine_auth__field_indices_by_name[] = {
+ 1, /* field[1] = eresult_sentryfile */
+ 0, /* field[0] = filename */
+ 2, /* field[2] = filesize */
+ 4, /* field[4] = lock_account_action */
+ 9, /* field[9] = machine_name */
+ 10, /* field[10] = machine_name_userchosen */
+ 6, /* field[6] = otp_identifier */
+ 7, /* field[7] = otp_sharedsecret */
+ 5, /* field[5] = otp_type */
+ 8, /* field[8] = otp_value */
+ 3, /* field[3] = sha_sentryfile */
+};
+static const ProtobufCIntRange cmsg_client_request_machine_auth__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 6, 4 },
+ { 0, 11 }
+};
+const ProtobufCMessageDescriptor cmsg_client_request_machine_auth__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestMachineAuth",
+ "CMsgClientRequestMachineAuth",
+ "CMsgClientRequestMachineAuth",
+ "",
+ sizeof(CMsgClientRequestMachineAuth),
+ 11,
+ cmsg_client_request_machine_auth__field_descriptors,
+ cmsg_client_request_machine_auth__field_indices_by_name,
+ 2, cmsg_client_request_machine_auth__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_request_machine_auth_response__field_descriptors[1] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestMachineAuthResponse, has_eresult),
+ offsetof(CMsgClientRequestMachineAuthResponse, eresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_request_machine_auth_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_client_request_machine_auth_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_request_machine_auth_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestMachineAuthResponse",
+ "CMsgClientRequestMachineAuthResponse",
+ "CMsgClientRequestMachineAuthResponse",
+ "",
+ sizeof(CMsgClientRequestMachineAuthResponse),
+ 1,
+ cmsg_client_request_machine_auth_response__field_descriptors,
+ cmsg_client_request_machine_auth_response__field_indices_by_name,
+ 1, cmsg_client_request_machine_auth_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_register_key__field_descriptors[1] =
+{
+ {
+ "key",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientRegisterKey, key),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_register_key__field_indices_by_name[] = {
+ 0, /* field[0] = key */
+};
+static const ProtobufCIntRange cmsg_client_register_key__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_register_key__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRegisterKey",
+ "CMsgClientRegisterKey",
+ "CMsgClientRegisterKey",
+ "",
+ sizeof(CMsgClientRegisterKey),
+ 1,
+ cmsg_client_register_key__field_descriptors,
+ cmsg_client_register_key__field_indices_by_name,
+ 1, cmsg_client_register_key__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_purchase_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_purchase_response__field_descriptors[3] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientPurchaseResponse, has_eresult),
+ offsetof(CMsgClientPurchaseResponse, eresult),
+ NULL,
+ &cmsg_client_purchase_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "purchase_result_details",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientPurchaseResponse, has_purchase_result_details),
+ offsetof(CMsgClientPurchaseResponse, purchase_result_details),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "purchase_receipt_info",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientPurchaseResponse, has_purchase_receipt_info),
+ offsetof(CMsgClientPurchaseResponse, purchase_receipt_info),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_purchase_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 2, /* field[2] = purchase_receipt_info */
+ 1, /* field[1] = purchase_result_details */
+};
+static const ProtobufCIntRange cmsg_client_purchase_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_purchase_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPurchaseResponse",
+ "CMsgClientPurchaseResponse",
+ "CMsgClientPurchaseResponse",
+ "",
+ sizeof(CMsgClientPurchaseResponse),
+ 3,
+ cmsg_client_purchase_response__field_descriptors,
+ cmsg_client_purchase_response__field_indices_by_name,
+ 1, cmsg_client_purchase_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_activate_oemlicense__field_descriptors[6] =
+{
+ {
+ "bios_manufacturer",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientActivateOEMLicense, bios_manufacturer),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "bios_serialnumber",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientActivateOEMLicense, bios_serialnumber),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "license_file",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientActivateOEMLicense, has_license_file),
+ offsetof(CMsgClientActivateOEMLicense, license_file),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "mainboard_manufacturer",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientActivateOEMLicense, mainboard_manufacturer),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "mainboard_product",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientActivateOEMLicense, mainboard_product),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "mainboard_serialnumber",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientActivateOEMLicense, mainboard_serialnumber),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_activate_oemlicense__field_indices_by_name[] = {
+ 0, /* field[0] = bios_manufacturer */
+ 1, /* field[1] = bios_serialnumber */
+ 2, /* field[2] = license_file */
+ 3, /* field[3] = mainboard_manufacturer */
+ 4, /* field[4] = mainboard_product */
+ 5, /* field[5] = mainboard_serialnumber */
+};
+static const ProtobufCIntRange cmsg_client_activate_oemlicense__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor cmsg_client_activate_oemlicense__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientActivateOEMLicense",
+ "CMsgClientActivateOEMLicense",
+ "CMsgClientActivateOEMLicense",
+ "",
+ sizeof(CMsgClientActivateOEMLicense),
+ 6,
+ cmsg_client_activate_oemlicense__field_descriptors,
+ cmsg_client_activate_oemlicense__field_indices_by_name,
+ 1, cmsg_client_activate_oemlicense__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_register_oemmachine__field_descriptors[1] =
+{
+ {
+ "oem_register_file",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientRegisterOEMMachine, has_oem_register_file),
+ offsetof(CMsgClientRegisterOEMMachine, oem_register_file),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_register_oemmachine__field_indices_by_name[] = {
+ 0, /* field[0] = oem_register_file */
+};
+static const ProtobufCIntRange cmsg_client_register_oemmachine__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_register_oemmachine__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRegisterOEMMachine",
+ "CMsgClientRegisterOEMMachine",
+ "CMsgClientRegisterOEMMachine",
+ "",
+ sizeof(CMsgClientRegisterOEMMachine),
+ 1,
+ cmsg_client_register_oemmachine__field_descriptors,
+ cmsg_client_register_oemmachine__field_indices_by_name,
+ 1, cmsg_client_register_oemmachine__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_register_oemmachine_response__field_descriptors[1] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRegisterOEMMachineResponse, has_eresult),
+ offsetof(CMsgClientRegisterOEMMachineResponse, eresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_register_oemmachine_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_client_register_oemmachine_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_register_oemmachine_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRegisterOEMMachineResponse",
+ "CMsgClientRegisterOEMMachineResponse",
+ "CMsgClientRegisterOEMMachineResponse",
+ "",
+ sizeof(CMsgClientRegisterOEMMachineResponse),
+ 1,
+ cmsg_client_register_oemmachine_response__field_descriptors,
+ cmsg_client_register_oemmachine_response__field_indices_by_name,
+ 1, cmsg_client_register_oemmachine_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_purchase_with_machine_id__field_descriptors[2] =
+{
+ {
+ "package_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPurchaseWithMachineID, has_package_id),
+ offsetof(CMsgClientPurchaseWithMachineID, package_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "machine_info",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientPurchaseWithMachineID, has_machine_info),
+ offsetof(CMsgClientPurchaseWithMachineID, machine_info),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_purchase_with_machine_id__field_indices_by_name[] = {
+ 1, /* field[1] = machine_info */
+ 0, /* field[0] = package_id */
+};
+static const ProtobufCIntRange cmsg_client_purchase_with_machine_id__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_purchase_with_machine_id__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPurchaseWithMachineID",
+ "CMsgClientPurchaseWithMachineID",
+ "CMsgClientPurchaseWithMachineID",
+ "",
+ sizeof(CMsgClientPurchaseWithMachineID),
+ 2,
+ cmsg_client_purchase_with_machine_id__field_descriptors,
+ cmsg_client_purchase_with_machine_id__field_indices_by_name,
+ 1, cmsg_client_purchase_with_machine_id__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_trading__initiate_trade_request__field_descriptors[3] =
+{
+ {
+ "trade_request_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgTradingInitiateTradeRequest, has_trade_request_id),
+ offsetof(CMsgTradingInitiateTradeRequest, trade_request_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "other_steamid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgTradingInitiateTradeRequest, has_other_steamid),
+ offsetof(CMsgTradingInitiateTradeRequest, other_steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "other_name",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgTradingInitiateTradeRequest, other_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_trading__initiate_trade_request__field_indices_by_name[] = {
+ 2, /* field[2] = other_name */
+ 1, /* field[1] = other_steamid */
+ 0, /* field[0] = trade_request_id */
+};
+static const ProtobufCIntRange cmsg_trading__initiate_trade_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_trading__initiate_trade_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgTrading_InitiateTradeRequest",
+ "CMsgTradingInitiateTradeRequest",
+ "CMsgTradingInitiateTradeRequest",
+ "",
+ sizeof(CMsgTradingInitiateTradeRequest),
+ 3,
+ cmsg_trading__initiate_trade_request__field_descriptors,
+ cmsg_trading__initiate_trade_request__field_indices_by_name,
+ 1, cmsg_trading__initiate_trade_request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_trading__initiate_trade_response__field_descriptors[9] =
+{
+ {
+ "response",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgTradingInitiateTradeResponse, has_response),
+ offsetof(CMsgTradingInitiateTradeResponse, response),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "trade_request_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgTradingInitiateTradeResponse, has_trade_request_id),
+ offsetof(CMsgTradingInitiateTradeResponse, trade_request_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "other_steamid",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgTradingInitiateTradeResponse, has_other_steamid),
+ offsetof(CMsgTradingInitiateTradeResponse, other_steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamguard_required_days",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgTradingInitiateTradeResponse, has_steamguard_required_days),
+ offsetof(CMsgTradingInitiateTradeResponse, steamguard_required_days),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "new_device_cooldown_days",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgTradingInitiateTradeResponse, has_new_device_cooldown_days),
+ offsetof(CMsgTradingInitiateTradeResponse, new_device_cooldown_days),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "default_password_reset_probation_days",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgTradingInitiateTradeResponse, has_default_password_reset_probation_days),
+ offsetof(CMsgTradingInitiateTradeResponse, default_password_reset_probation_days),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "password_reset_probation_days",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgTradingInitiateTradeResponse, has_password_reset_probation_days),
+ offsetof(CMsgTradingInitiateTradeResponse, password_reset_probation_days),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "default_email_change_probation_days",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgTradingInitiateTradeResponse, has_default_email_change_probation_days),
+ offsetof(CMsgTradingInitiateTradeResponse, default_email_change_probation_days),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "email_change_probation_days",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgTradingInitiateTradeResponse, has_email_change_probation_days),
+ offsetof(CMsgTradingInitiateTradeResponse, email_change_probation_days),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_trading__initiate_trade_response__field_indices_by_name[] = {
+ 7, /* field[7] = default_email_change_probation_days */
+ 5, /* field[5] = default_password_reset_probation_days */
+ 8, /* field[8] = email_change_probation_days */
+ 4, /* field[4] = new_device_cooldown_days */
+ 2, /* field[2] = other_steamid */
+ 6, /* field[6] = password_reset_probation_days */
+ 0, /* field[0] = response */
+ 3, /* field[3] = steamguard_required_days */
+ 1, /* field[1] = trade_request_id */
+};
+static const ProtobufCIntRange cmsg_trading__initiate_trade_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 9 }
+};
+const ProtobufCMessageDescriptor cmsg_trading__initiate_trade_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgTrading_InitiateTradeResponse",
+ "CMsgTradingInitiateTradeResponse",
+ "CMsgTradingInitiateTradeResponse",
+ "",
+ sizeof(CMsgTradingInitiateTradeResponse),
+ 9,
+ cmsg_trading__initiate_trade_response__field_descriptors,
+ cmsg_trading__initiate_trade_response__field_indices_by_name,
+ 1, cmsg_trading__initiate_trade_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_trading__cancel_trade_request__field_descriptors[1] =
+{
+ {
+ "other_steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgTradingCancelTradeRequest, has_other_steamid),
+ offsetof(CMsgTradingCancelTradeRequest, other_steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_trading__cancel_trade_request__field_indices_by_name[] = {
+ 0, /* field[0] = other_steamid */
+};
+static const ProtobufCIntRange cmsg_trading__cancel_trade_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_trading__cancel_trade_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgTrading_CancelTradeRequest",
+ "CMsgTradingCancelTradeRequest",
+ "CMsgTradingCancelTradeRequest",
+ "",
+ sizeof(CMsgTradingCancelTradeRequest),
+ 1,
+ cmsg_trading__cancel_trade_request__field_descriptors,
+ cmsg_trading__cancel_trade_request__field_indices_by_name,
+ 1, cmsg_trading__cancel_trade_request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_trading__start_session__field_descriptors[1] =
+{
+ {
+ "other_steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgTradingStartSession, has_other_steamid),
+ offsetof(CMsgTradingStartSession, other_steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_trading__start_session__field_indices_by_name[] = {
+ 0, /* field[0] = other_steamid */
+};
+static const ProtobufCIntRange cmsg_trading__start_session__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_trading__start_session__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgTrading_StartSession",
+ "CMsgTradingStartSession",
+ "CMsgTradingStartSession",
+ "",
+ sizeof(CMsgTradingStartSession),
+ 1,
+ cmsg_trading__start_session__field_descriptors,
+ cmsg_trading__start_session__field_indices_by_name,
+ 1, cmsg_trading__start_session__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_get_cdnauth_token__field_descriptors[3] =
+{
+ {
+ "depot_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetCDNAuthToken, has_depot_id),
+ offsetof(CMsgClientGetCDNAuthToken, depot_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "host_name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientGetCDNAuthToken, host_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetCDNAuthToken, has_app_id),
+ offsetof(CMsgClientGetCDNAuthToken, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_get_cdnauth_token__field_indices_by_name[] = {
+ 2, /* field[2] = app_id */
+ 0, /* field[0] = depot_id */
+ 1, /* field[1] = host_name */
+};
+static const ProtobufCIntRange cmsg_client_get_cdnauth_token__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_get_cdnauth_token__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGetCDNAuthToken",
+ "CMsgClientGetCDNAuthToken",
+ "CMsgClientGetCDNAuthToken",
+ "",
+ sizeof(CMsgClientGetCDNAuthToken),
+ 3,
+ cmsg_client_get_cdnauth_token__field_descriptors,
+ cmsg_client_get_cdnauth_token__field_indices_by_name,
+ 1, cmsg_client_get_cdnauth_token__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_get_depot_decryption_key__field_descriptors[2] =
+{
+ {
+ "depot_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetDepotDecryptionKey, has_depot_id),
+ offsetof(CMsgClientGetDepotDecryptionKey, depot_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetDepotDecryptionKey, has_app_id),
+ offsetof(CMsgClientGetDepotDecryptionKey, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_get_depot_decryption_key__field_indices_by_name[] = {
+ 1, /* field[1] = app_id */
+ 0, /* field[0] = depot_id */
+};
+static const ProtobufCIntRange cmsg_client_get_depot_decryption_key__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_get_depot_decryption_key__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGetDepotDecryptionKey",
+ "CMsgClientGetDepotDecryptionKey",
+ "CMsgClientGetDepotDecryptionKey",
+ "",
+ sizeof(CMsgClientGetDepotDecryptionKey),
+ 2,
+ cmsg_client_get_depot_decryption_key__field_descriptors,
+ cmsg_client_get_depot_decryption_key__field_indices_by_name,
+ 1, cmsg_client_get_depot_decryption_key__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_get_depot_decryption_key_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_get_depot_decryption_key_response__field_descriptors[3] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientGetDepotDecryptionKeyResponse, has_eresult),
+ offsetof(CMsgClientGetDepotDecryptionKeyResponse, eresult),
+ NULL,
+ &cmsg_client_get_depot_decryption_key_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "depot_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetDepotDecryptionKeyResponse, has_depot_id),
+ offsetof(CMsgClientGetDepotDecryptionKeyResponse, depot_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "depot_encryption_key",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientGetDepotDecryptionKeyResponse, has_depot_encryption_key),
+ offsetof(CMsgClientGetDepotDecryptionKeyResponse, depot_encryption_key),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_get_depot_decryption_key_response__field_indices_by_name[] = {
+ 2, /* field[2] = depot_encryption_key */
+ 1, /* field[1] = depot_id */
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_client_get_depot_decryption_key_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_get_depot_decryption_key_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGetDepotDecryptionKeyResponse",
+ "CMsgClientGetDepotDecryptionKeyResponse",
+ "CMsgClientGetDepotDecryptionKeyResponse",
+ "",
+ sizeof(CMsgClientGetDepotDecryptionKeyResponse),
+ 3,
+ cmsg_client_get_depot_decryption_key_response__field_descriptors,
+ cmsg_client_get_depot_decryption_key_response__field_indices_by_name,
+ 1, cmsg_client_get_depot_decryption_key_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_check_app_beta_password__field_descriptors[3] =
+{
+ {
+ "app_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCheckAppBetaPassword, has_app_id),
+ offsetof(CMsgClientCheckAppBetaPassword, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "betapassword",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientCheckAppBetaPassword, betapassword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "language",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientCheckAppBetaPassword, has_language),
+ offsetof(CMsgClientCheckAppBetaPassword, language),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_check_app_beta_password__field_indices_by_name[] = {
+ 0, /* field[0] = app_id */
+ 1, /* field[1] = betapassword */
+ 2, /* field[2] = language */
+};
+static const ProtobufCIntRange cmsg_client_check_app_beta_password__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_check_app_beta_password__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientCheckAppBetaPassword",
+ "CMsgClientCheckAppBetaPassword",
+ "CMsgClientCheckAppBetaPassword",
+ "",
+ sizeof(CMsgClientCheckAppBetaPassword),
+ 3,
+ cmsg_client_check_app_beta_password__field_descriptors,
+ cmsg_client_check_app_beta_password__field_indices_by_name,
+ 1, cmsg_client_check_app_beta_password__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_check_app_beta_password_response__beta_password__field_descriptors[3] =
+{
+ {
+ "betaname",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientCheckAppBetaPasswordResponse__BetaPassword, betaname),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "betapassword",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientCheckAppBetaPasswordResponse__BetaPassword, betapassword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "betadescription",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientCheckAppBetaPasswordResponse__BetaPassword, betadescription),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_check_app_beta_password_response__beta_password__field_indices_by_name[] = {
+ 2, /* field[2] = betadescription */
+ 0, /* field[0] = betaname */
+ 1, /* field[1] = betapassword */
+};
+static const ProtobufCIntRange cmsg_client_check_app_beta_password_response__beta_password__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_check_app_beta_password_response__beta_password__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientCheckAppBetaPasswordResponse.BetaPassword",
+ "BetaPassword",
+ "CMsgClientCheckAppBetaPasswordResponse__BetaPassword",
+ "",
+ sizeof(CMsgClientCheckAppBetaPasswordResponse__BetaPassword),
+ 3,
+ cmsg_client_check_app_beta_password_response__beta_password__field_descriptors,
+ cmsg_client_check_app_beta_password_response__beta_password__field_indices_by_name,
+ 1, cmsg_client_check_app_beta_password_response__beta_password__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_check_app_beta_password_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_check_app_beta_password_response__field_descriptors[2] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientCheckAppBetaPasswordResponse, has_eresult),
+ offsetof(CMsgClientCheckAppBetaPasswordResponse, eresult),
+ NULL,
+ &cmsg_client_check_app_beta_password_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "betapasswords",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientCheckAppBetaPasswordResponse, n_betapasswords),
+ offsetof(CMsgClientCheckAppBetaPasswordResponse, betapasswords),
+ &cmsg_client_check_app_beta_password_response__beta_password__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_check_app_beta_password_response__field_indices_by_name[] = {
+ 1, /* field[1] = betapasswords */
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_client_check_app_beta_password_response__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 4, 1 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_check_app_beta_password_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientCheckAppBetaPasswordResponse",
+ "CMsgClientCheckAppBetaPasswordResponse",
+ "CMsgClientCheckAppBetaPasswordResponse",
+ "",
+ sizeof(CMsgClientCheckAppBetaPasswordResponse),
+ 2,
+ cmsg_client_check_app_beta_password_response__field_descriptors,
+ cmsg_client_check_app_beta_password_response__field_indices_by_name,
+ 2, cmsg_client_check_app_beta_password_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const uint32_t cmsg_client_get_cdnauth_token_response__eresult__default_value = 2u;
+static const ProtobufCFieldDescriptor cmsg_client_get_cdnauth_token_response__field_descriptors[3] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetCDNAuthTokenResponse, has_eresult),
+ offsetof(CMsgClientGetCDNAuthTokenResponse, eresult),
+ NULL,
+ &cmsg_client_get_cdnauth_token_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "token",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientGetCDNAuthTokenResponse, token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "expiration_time",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetCDNAuthTokenResponse, has_expiration_time),
+ offsetof(CMsgClientGetCDNAuthTokenResponse, expiration_time),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_get_cdnauth_token_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 2, /* field[2] = expiration_time */
+ 1, /* field[1] = token */
+};
+static const ProtobufCIntRange cmsg_client_get_cdnauth_token_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_get_cdnauth_token_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGetCDNAuthTokenResponse",
+ "CMsgClientGetCDNAuthTokenResponse",
+ "CMsgClientGetCDNAuthTokenResponse",
+ "",
+ sizeof(CMsgClientGetCDNAuthTokenResponse),
+ 3,
+ cmsg_client_get_cdnauth_token_response__field_descriptors,
+ cmsg_client_get_cdnauth_token_response__field_indices_by_name,
+ 1, cmsg_client_get_cdnauth_token_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_download_rate_statistics__stats_info__field_descriptors[8] =
+{
+ {
+ "source_type",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, has_source_type),
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, source_type),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "source_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, has_source_id),
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, source_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "seconds",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, has_seconds),
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, seconds),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "bytes",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, has_bytes),
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, bytes),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "host_name",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, host_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "microseconds",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, has_microseconds),
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, microseconds),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "used_ipv6",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, has_used_ipv6),
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, used_ipv6),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "proxied",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, has_proxied),
+ offsetof(CMsgDownloadRateStatistics__StatsInfo, proxied),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_download_rate_statistics__stats_info__field_indices_by_name[] = {
+ 3, /* field[3] = bytes */
+ 4, /* field[4] = host_name */
+ 5, /* field[5] = microseconds */
+ 7, /* field[7] = proxied */
+ 2, /* field[2] = seconds */
+ 1, /* field[1] = source_id */
+ 0, /* field[0] = source_type */
+ 6, /* field[6] = used_ipv6 */
+};
+static const ProtobufCIntRange cmsg_download_rate_statistics__stats_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor cmsg_download_rate_statistics__stats_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgDownloadRateStatistics.StatsInfo",
+ "StatsInfo",
+ "CMsgDownloadRateStatistics__StatsInfo",
+ "",
+ sizeof(CMsgDownloadRateStatistics__StatsInfo),
+ 8,
+ cmsg_download_rate_statistics__stats_info__field_descriptors,
+ cmsg_download_rate_statistics__stats_info__field_indices_by_name,
+ 1, cmsg_download_rate_statistics__stats_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_download_rate_statistics__field_descriptors[4] =
+{
+ {
+ "cell_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDownloadRateStatistics, has_cell_id),
+ offsetof(CMsgDownloadRateStatistics, cell_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "stats",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgDownloadRateStatistics, n_stats),
+ offsetof(CMsgDownloadRateStatistics, stats),
+ &cmsg_download_rate_statistics__stats_info__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "throttling_kbps",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDownloadRateStatistics, has_throttling_kbps),
+ offsetof(CMsgDownloadRateStatistics, throttling_kbps),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steam_realm",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDownloadRateStatistics, has_steam_realm),
+ offsetof(CMsgDownloadRateStatistics, steam_realm),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_download_rate_statistics__field_indices_by_name[] = {
+ 0, /* field[0] = cell_id */
+ 1, /* field[1] = stats */
+ 3, /* field[3] = steam_realm */
+ 2, /* field[2] = throttling_kbps */
+};
+static const ProtobufCIntRange cmsg_download_rate_statistics__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cmsg_download_rate_statistics__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgDownloadRateStatistics",
+ "CMsgDownloadRateStatistics",
+ "CMsgDownloadRateStatistics",
+ "",
+ sizeof(CMsgDownloadRateStatistics),
+ 4,
+ cmsg_download_rate_statistics__field_descriptors,
+ cmsg_download_rate_statistics__field_indices_by_name,
+ 1, cmsg_download_rate_statistics__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_request_account_data__field_descriptors[2] =
+{
+ {
+ "account_or_email",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientRequestAccountData, account_or_email),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "action",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestAccountData, has_action),
+ offsetof(CMsgClientRequestAccountData, action),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_request_account_data__field_indices_by_name[] = {
+ 0, /* field[0] = account_or_email */
+ 1, /* field[1] = action */
+};
+static const ProtobufCIntRange cmsg_client_request_account_data__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_request_account_data__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestAccountData",
+ "CMsgClientRequestAccountData",
+ "CMsgClientRequestAccountData",
+ "",
+ sizeof(CMsgClientRequestAccountData),
+ 2,
+ cmsg_client_request_account_data__field_descriptors,
+ cmsg_client_request_account_data__field_indices_by_name,
+ 1, cmsg_client_request_account_data__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_request_account_data_response__field_descriptors[7] =
+{
+ {
+ "action",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestAccountDataResponse, has_action),
+ offsetof(CMsgClientRequestAccountDataResponse, action),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "eresult",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestAccountDataResponse, has_eresult),
+ offsetof(CMsgClientRequestAccountDataResponse, eresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "account_name",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientRequestAccountDataResponse, account_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ct_matches",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestAccountDataResponse, has_ct_matches),
+ offsetof(CMsgClientRequestAccountDataResponse, ct_matches),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "account_name_suggestion1",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientRequestAccountDataResponse, account_name_suggestion1),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "account_name_suggestion2",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientRequestAccountDataResponse, account_name_suggestion2),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "account_name_suggestion3",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientRequestAccountDataResponse, account_name_suggestion3),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_request_account_data_response__field_indices_by_name[] = {
+ 2, /* field[2] = account_name */
+ 4, /* field[4] = account_name_suggestion1 */
+ 5, /* field[5] = account_name_suggestion2 */
+ 6, /* field[6] = account_name_suggestion3 */
+ 0, /* field[0] = action */
+ 3, /* field[3] = ct_matches */
+ 1, /* field[1] = eresult */
+};
+static const ProtobufCIntRange cmsg_client_request_account_data_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cmsg_client_request_account_data_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestAccountDataResponse",
+ "CMsgClientRequestAccountDataResponse",
+ "CMsgClientRequestAccountDataResponse",
+ "",
+ sizeof(CMsgClientRequestAccountDataResponse),
+ 7,
+ cmsg_client_request_account_data_response__field_descriptors,
+ cmsg_client_request_account_data_response__field_indices_by_name,
+ 1, cmsg_client_request_account_data_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_ugsget_global_stats__field_descriptors[5] =
+{
+ {
+ "gameid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientUGSGetGlobalStats, has_gameid),
+ offsetof(CMsgClientUGSGetGlobalStats, gameid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "history_days_requested",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUGSGetGlobalStats, has_history_days_requested),
+ offsetof(CMsgClientUGSGetGlobalStats, history_days_requested),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_last_requested",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED32,
+ offsetof(CMsgClientUGSGetGlobalStats, has_time_last_requested),
+ offsetof(CMsgClientUGSGetGlobalStats, time_last_requested),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "first_day_cached",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUGSGetGlobalStats, has_first_day_cached),
+ offsetof(CMsgClientUGSGetGlobalStats, first_day_cached),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "days_cached",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUGSGetGlobalStats, has_days_cached),
+ offsetof(CMsgClientUGSGetGlobalStats, days_cached),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_ugsget_global_stats__field_indices_by_name[] = {
+ 4, /* field[4] = days_cached */
+ 3, /* field[3] = first_day_cached */
+ 0, /* field[0] = gameid */
+ 1, /* field[1] = history_days_requested */
+ 2, /* field[2] = time_last_requested */
+};
+static const ProtobufCIntRange cmsg_client_ugsget_global_stats__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cmsg_client_ugsget_global_stats__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientUGSGetGlobalStats",
+ "CMsgClientUGSGetGlobalStats",
+ "CMsgClientUGSGetGlobalStats",
+ "",
+ sizeof(CMsgClientUGSGetGlobalStats),
+ 5,
+ cmsg_client_ugsget_global_stats__field_descriptors,
+ cmsg_client_ugsget_global_stats__field_indices_by_name,
+ 1, cmsg_client_ugsget_global_stats__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_ugsget_global_stats_response__day__stat__field_descriptors[2] =
+{
+ {
+ "stat_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientUGSGetGlobalStatsResponse__Day__Stat, has_stat_id),
+ offsetof(CMsgClientUGSGetGlobalStatsResponse__Day__Stat, stat_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "data",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT64,
+ offsetof(CMsgClientUGSGetGlobalStatsResponse__Day__Stat, has_data),
+ offsetof(CMsgClientUGSGetGlobalStatsResponse__Day__Stat, data),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_ugsget_global_stats_response__day__stat__field_indices_by_name[] = {
+ 1, /* field[1] = data */
+ 0, /* field[0] = stat_id */
+};
+static const ProtobufCIntRange cmsg_client_ugsget_global_stats_response__day__stat__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_ugsget_global_stats_response__day__stat__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientUGSGetGlobalStatsResponse.Day.Stat",
+ "Stat",
+ "CMsgClientUGSGetGlobalStatsResponse__Day__Stat",
+ "",
+ sizeof(CMsgClientUGSGetGlobalStatsResponse__Day__Stat),
+ 2,
+ cmsg_client_ugsget_global_stats_response__day__stat__field_descriptors,
+ cmsg_client_ugsget_global_stats_response__day__stat__field_indices_by_name,
+ 1, cmsg_client_ugsget_global_stats_response__day__stat__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_ugsget_global_stats_response__day__field_descriptors[2] =
+{
+ {
+ "day_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUGSGetGlobalStatsResponse__Day, has_day_id),
+ offsetof(CMsgClientUGSGetGlobalStatsResponse__Day, day_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "stats",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientUGSGetGlobalStatsResponse__Day, n_stats),
+ offsetof(CMsgClientUGSGetGlobalStatsResponse__Day, stats),
+ &cmsg_client_ugsget_global_stats_response__day__stat__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_ugsget_global_stats_response__day__field_indices_by_name[] = {
+ 0, /* field[0] = day_id */
+ 1, /* field[1] = stats */
+};
+static const ProtobufCIntRange cmsg_client_ugsget_global_stats_response__day__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_ugsget_global_stats_response__day__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientUGSGetGlobalStatsResponse.Day",
+ "Day",
+ "CMsgClientUGSGetGlobalStatsResponse__Day",
+ "",
+ sizeof(CMsgClientUGSGetGlobalStatsResponse__Day),
+ 2,
+ cmsg_client_ugsget_global_stats_response__day__field_descriptors,
+ cmsg_client_ugsget_global_stats_response__day__field_indices_by_name,
+ 1, cmsg_client_ugsget_global_stats_response__day__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_ugsget_global_stats_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_ugsget_global_stats_response__field_descriptors[4] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientUGSGetGlobalStatsResponse, has_eresult),
+ offsetof(CMsgClientUGSGetGlobalStatsResponse, eresult),
+ NULL,
+ &cmsg_client_ugsget_global_stats_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "timestamp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED32,
+ offsetof(CMsgClientUGSGetGlobalStatsResponse, has_timestamp),
+ offsetof(CMsgClientUGSGetGlobalStatsResponse, timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "day_current",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientUGSGetGlobalStatsResponse, has_day_current),
+ offsetof(CMsgClientUGSGetGlobalStatsResponse, day_current),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "days",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientUGSGetGlobalStatsResponse, n_days),
+ offsetof(CMsgClientUGSGetGlobalStatsResponse, days),
+ &cmsg_client_ugsget_global_stats_response__day__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_ugsget_global_stats_response__field_indices_by_name[] = {
+ 2, /* field[2] = day_current */
+ 3, /* field[3] = days */
+ 0, /* field[0] = eresult */
+ 1, /* field[1] = timestamp */
+};
+static const ProtobufCIntRange cmsg_client_ugsget_global_stats_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cmsg_client_ugsget_global_stats_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientUGSGetGlobalStatsResponse",
+ "CMsgClientUGSGetGlobalStatsResponse",
+ "CMsgClientUGSGetGlobalStatsResponse",
+ "",
+ sizeof(CMsgClientUGSGetGlobalStatsResponse),
+ 4,
+ cmsg_client_ugsget_global_stats_response__field_descriptors,
+ cmsg_client_ugsget_global_stats_response__field_indices_by_name,
+ 1, cmsg_client_ugsget_global_stats_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_redeem_guest_pass__field_descriptors[1] =
+{
+ {
+ "guest_pass_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientRedeemGuestPass, has_guest_pass_id),
+ offsetof(CMsgClientRedeemGuestPass, guest_pass_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_redeem_guest_pass__field_indices_by_name[] = {
+ 0, /* field[0] = guest_pass_id */
+};
+static const ProtobufCIntRange cmsg_client_redeem_guest_pass__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_redeem_guest_pass__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRedeemGuestPass",
+ "CMsgClientRedeemGuestPass",
+ "CMsgClientRedeemGuestPass",
+ "",
+ sizeof(CMsgClientRedeemGuestPass),
+ 1,
+ cmsg_client_redeem_guest_pass__field_descriptors,
+ cmsg_client_redeem_guest_pass__field_indices_by_name,
+ 1, cmsg_client_redeem_guest_pass__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const uint32_t cmsg_client_redeem_guest_pass_response__eresult__default_value = 2u;
+static const ProtobufCFieldDescriptor cmsg_client_redeem_guest_pass_response__field_descriptors[3] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRedeemGuestPassResponse, has_eresult),
+ offsetof(CMsgClientRedeemGuestPassResponse, eresult),
+ NULL,
+ &cmsg_client_redeem_guest_pass_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "package_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRedeemGuestPassResponse, has_package_id),
+ offsetof(CMsgClientRedeemGuestPassResponse, package_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "must_own_appid",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRedeemGuestPassResponse, has_must_own_appid),
+ offsetof(CMsgClientRedeemGuestPassResponse, must_own_appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_redeem_guest_pass_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 2, /* field[2] = must_own_appid */
+ 1, /* field[1] = package_id */
+};
+static const ProtobufCIntRange cmsg_client_redeem_guest_pass_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_redeem_guest_pass_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRedeemGuestPassResponse",
+ "CMsgClientRedeemGuestPassResponse",
+ "CMsgClientRedeemGuestPassResponse",
+ "",
+ sizeof(CMsgClientRedeemGuestPassResponse),
+ 3,
+ cmsg_client_redeem_guest_pass_response__field_descriptors,
+ cmsg_client_redeem_guest_pass_response__field_indices_by_name,
+ 1, cmsg_client_redeem_guest_pass_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_get_clan_activity_counts__field_descriptors[1] =
+{
+ {
+ "steamid_clans",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientGetClanActivityCounts, n_steamid_clans),
+ offsetof(CMsgClientGetClanActivityCounts, steamid_clans),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_get_clan_activity_counts__field_indices_by_name[] = {
+ 0, /* field[0] = steamid_clans */
+};
+static const ProtobufCIntRange cmsg_client_get_clan_activity_counts__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_get_clan_activity_counts__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGetClanActivityCounts",
+ "CMsgClientGetClanActivityCounts",
+ "CMsgClientGetClanActivityCounts",
+ "",
+ sizeof(CMsgClientGetClanActivityCounts),
+ 1,
+ cmsg_client_get_clan_activity_counts__field_descriptors,
+ cmsg_client_get_clan_activity_counts__field_indices_by_name,
+ 1, cmsg_client_get_clan_activity_counts__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const uint32_t cmsg_client_get_clan_activity_counts_response__eresult__default_value = 2u;
+static const ProtobufCFieldDescriptor cmsg_client_get_clan_activity_counts_response__field_descriptors[1] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetClanActivityCountsResponse, has_eresult),
+ offsetof(CMsgClientGetClanActivityCountsResponse, eresult),
+ NULL,
+ &cmsg_client_get_clan_activity_counts_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_get_clan_activity_counts_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_client_get_clan_activity_counts_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_get_clan_activity_counts_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGetClanActivityCountsResponse",
+ "CMsgClientGetClanActivityCountsResponse",
+ "CMsgClientGetClanActivityCountsResponse",
+ "",
+ sizeof(CMsgClientGetClanActivityCountsResponse),
+ 1,
+ cmsg_client_get_clan_activity_counts_response__field_descriptors,
+ cmsg_client_get_clan_activity_counts_response__field_indices_by_name,
+ 1, cmsg_client_get_clan_activity_counts_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_ogsreport_string__field_descriptors[5] =
+{
+ {
+ "accumulated",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientOGSReportString, has_accumulated),
+ offsetof(CMsgClientOGSReportString, accumulated),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sessionid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientOGSReportString, has_sessionid),
+ offsetof(CMsgClientOGSReportString, sessionid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "severity",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientOGSReportString, has_severity),
+ offsetof(CMsgClientOGSReportString, severity),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "formatter",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientOGSReportString, formatter),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "varargs",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientOGSReportString, has_varargs),
+ offsetof(CMsgClientOGSReportString, varargs),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_ogsreport_string__field_indices_by_name[] = {
+ 0, /* field[0] = accumulated */
+ 3, /* field[3] = formatter */
+ 1, /* field[1] = sessionid */
+ 2, /* field[2] = severity */
+ 4, /* field[4] = varargs */
+};
+static const ProtobufCIntRange cmsg_client_ogsreport_string__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cmsg_client_ogsreport_string__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientOGSReportString",
+ "CMsgClientOGSReportString",
+ "CMsgClientOGSReportString",
+ "",
+ sizeof(CMsgClientOGSReportString),
+ 5,
+ cmsg_client_ogsreport_string__field_descriptors,
+ cmsg_client_ogsreport_string__field_indices_by_name,
+ 1, cmsg_client_ogsreport_string__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_ogsreport_bug__field_descriptors[3] =
+{
+ {
+ "sessionid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientOGSReportBug, has_sessionid),
+ offsetof(CMsgClientOGSReportBug, sessionid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "bugtext",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientOGSReportBug, bugtext),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "screenshot",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientOGSReportBug, has_screenshot),
+ offsetof(CMsgClientOGSReportBug, screenshot),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_ogsreport_bug__field_indices_by_name[] = {
+ 1, /* field[1] = bugtext */
+ 2, /* field[2] = screenshot */
+ 0, /* field[0] = sessionid */
+};
+static const ProtobufCIntRange cmsg_client_ogsreport_bug__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_ogsreport_bug__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientOGSReportBug",
+ "CMsgClientOGSReportBug",
+ "CMsgClientOGSReportBug",
+ "",
+ sizeof(CMsgClientOGSReportBug),
+ 3,
+ cmsg_client_ogsreport_bug__field_descriptors,
+ cmsg_client_ogsreport_bug__field_indices_by_name,
+ 1, cmsg_client_ogsreport_bug__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cmsg_client_sent_logs__field_descriptors NULL
+#define cmsg_client_sent_logs__field_indices_by_name NULL
+#define cmsg_client_sent_logs__number_ranges NULL
+const ProtobufCMessageDescriptor cmsg_client_sent_logs__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientSentLogs",
+ "CMsgClientSentLogs",
+ "CMsgClientSentLogs",
+ "",
+ sizeof(CMsgClientSentLogs),
+ 0,
+ cmsg_client_sent_logs__field_descriptors,
+ cmsg_client_sent_logs__field_indices_by_name,
+ 0, cmsg_client_sent_logs__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_gcclient__field_descriptors[6] =
+{
+ {
+ "appid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgGCClient, has_appid),
+ offsetof(CMsgGCClient, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "msgtype",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgGCClient, has_msgtype),
+ offsetof(CMsgGCClient, msgtype),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "payload",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgGCClient, has_payload),
+ offsetof(CMsgGCClient, payload),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgGCClient, has_steamid),
+ offsetof(CMsgGCClient, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "gcname",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgGCClient, gcname),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ip",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgGCClient, has_ip),
+ offsetof(CMsgGCClient, ip),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_gcclient__field_indices_by_name[] = {
+ 0, /* field[0] = appid */
+ 4, /* field[4] = gcname */
+ 5, /* field[5] = ip */
+ 1, /* field[1] = msgtype */
+ 2, /* field[2] = payload */
+ 3, /* field[3] = steamid */
+};
+static const ProtobufCIntRange cmsg_gcclient__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor cmsg_gcclient__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgGCClient",
+ "CMsgGCClient",
+ "CMsgGCClient",
+ "",
+ sizeof(CMsgGCClient),
+ 6,
+ cmsg_gcclient__field_descriptors,
+ cmsg_gcclient__field_indices_by_name,
+ 1, cmsg_gcclient__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_request_free_license__field_descriptors[1] =
+{
+ {
+ "appids",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestFreeLicense, n_appids),
+ offsetof(CMsgClientRequestFreeLicense, appids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_request_free_license__field_indices_by_name[] = {
+ 0, /* field[0] = appids */
+};
+static const ProtobufCIntRange cmsg_client_request_free_license__number_ranges[1 + 1] =
+{
+ { 2, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_request_free_license__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestFreeLicense",
+ "CMsgClientRequestFreeLicense",
+ "CMsgClientRequestFreeLicense",
+ "",
+ sizeof(CMsgClientRequestFreeLicense),
+ 1,
+ cmsg_client_request_free_license__field_descriptors,
+ cmsg_client_request_free_license__field_indices_by_name,
+ 1, cmsg_client_request_free_license__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const uint32_t cmsg_client_request_free_license_response__eresult__default_value = 2u;
+static const ProtobufCFieldDescriptor cmsg_client_request_free_license_response__field_descriptors[3] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestFreeLicenseResponse, has_eresult),
+ offsetof(CMsgClientRequestFreeLicenseResponse, eresult),
+ NULL,
+ &cmsg_client_request_free_license_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "granted_packageids",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestFreeLicenseResponse, n_granted_packageids),
+ offsetof(CMsgClientRequestFreeLicenseResponse, granted_packageids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "granted_appids",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestFreeLicenseResponse, n_granted_appids),
+ offsetof(CMsgClientRequestFreeLicenseResponse, granted_appids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_request_free_license_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 2, /* field[2] = granted_appids */
+ 1, /* field[1] = granted_packageids */
+};
+static const ProtobufCIntRange cmsg_client_request_free_license_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_request_free_license_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestFreeLicenseResponse",
+ "CMsgClientRequestFreeLicenseResponse",
+ "CMsgClientRequestFreeLicenseResponse",
+ "",
+ sizeof(CMsgClientRequestFreeLicenseResponse),
+ 3,
+ cmsg_client_request_free_license_response__field_descriptors,
+ cmsg_client_request_free_license_response__field_indices_by_name,
+ 1, cmsg_client_request_free_license_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_drmdownload_request_with_crash_data__field_descriptors[8] =
+{
+ {
+ "download_flags",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDRMDownloadRequestWithCrashData, has_download_flags),
+ offsetof(CMsgDRMDownloadRequestWithCrashData, download_flags),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "download_types_known",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDRMDownloadRequestWithCrashData, has_download_types_known),
+ offsetof(CMsgDRMDownloadRequestWithCrashData, download_types_known),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "guid_drm",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgDRMDownloadRequestWithCrashData, has_guid_drm),
+ offsetof(CMsgDRMDownloadRequestWithCrashData, guid_drm),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "guid_split",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgDRMDownloadRequestWithCrashData, has_guid_split),
+ offsetof(CMsgDRMDownloadRequestWithCrashData, guid_split),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "guid_merge",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgDRMDownloadRequestWithCrashData, has_guid_merge),
+ offsetof(CMsgDRMDownloadRequestWithCrashData, guid_merge),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "module_name",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgDRMDownloadRequestWithCrashData, module_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "module_path",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgDRMDownloadRequestWithCrashData, module_path),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "crash_data",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgDRMDownloadRequestWithCrashData, has_crash_data),
+ offsetof(CMsgDRMDownloadRequestWithCrashData, crash_data),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_drmdownload_request_with_crash_data__field_indices_by_name[] = {
+ 7, /* field[7] = crash_data */
+ 0, /* field[0] = download_flags */
+ 1, /* field[1] = download_types_known */
+ 2, /* field[2] = guid_drm */
+ 4, /* field[4] = guid_merge */
+ 3, /* field[3] = guid_split */
+ 5, /* field[5] = module_name */
+ 6, /* field[6] = module_path */
+};
+static const ProtobufCIntRange cmsg_drmdownload_request_with_crash_data__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor cmsg_drmdownload_request_with_crash_data__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgDRMDownloadRequestWithCrashData",
+ "CMsgDRMDownloadRequestWithCrashData",
+ "CMsgDRMDownloadRequestWithCrashData",
+ "",
+ sizeof(CMsgDRMDownloadRequestWithCrashData),
+ 8,
+ cmsg_drmdownload_request_with_crash_data__field_descriptors,
+ cmsg_drmdownload_request_with_crash_data__field_indices_by_name,
+ 1, cmsg_drmdownload_request_with_crash_data__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const uint32_t cmsg_drmdownload_response__eresult__default_value = 2u;
+static const ProtobufCFieldDescriptor cmsg_drmdownload_response__field_descriptors[8] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDRMDownloadResponse, has_eresult),
+ offsetof(CMsgDRMDownloadResponse, eresult),
+ NULL,
+ &cmsg_drmdownload_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDRMDownloadResponse, has_app_id),
+ offsetof(CMsgDRMDownloadResponse, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "blob_download_type",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDRMDownloadResponse, has_blob_download_type),
+ offsetof(CMsgDRMDownloadResponse, blob_download_type),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "merge_guid",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgDRMDownloadResponse, has_merge_guid),
+ offsetof(CMsgDRMDownloadResponse, merge_guid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "download_file_dfs_ip",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDRMDownloadResponse, has_download_file_dfs_ip),
+ offsetof(CMsgDRMDownloadResponse, download_file_dfs_ip),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "download_file_dfs_port",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDRMDownloadResponse, has_download_file_dfs_port),
+ offsetof(CMsgDRMDownloadResponse, download_file_dfs_port),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "download_file_url",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgDRMDownloadResponse, download_file_url),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "module_path",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgDRMDownloadResponse, module_path),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_drmdownload_response__field_indices_by_name[] = {
+ 1, /* field[1] = app_id */
+ 2, /* field[2] = blob_download_type */
+ 4, /* field[4] = download_file_dfs_ip */
+ 5, /* field[5] = download_file_dfs_port */
+ 6, /* field[6] = download_file_url */
+ 0, /* field[0] = eresult */
+ 3, /* field[3] = merge_guid */
+ 7, /* field[7] = module_path */
+};
+static const ProtobufCIntRange cmsg_drmdownload_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor cmsg_drmdownload_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgDRMDownloadResponse",
+ "CMsgDRMDownloadResponse",
+ "CMsgDRMDownloadResponse",
+ "",
+ sizeof(CMsgDRMDownloadResponse),
+ 8,
+ cmsg_drmdownload_response__field_descriptors,
+ cmsg_drmdownload_response__field_indices_by_name,
+ 1, cmsg_drmdownload_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const uint32_t cmsg_drmfinal_result__e_result__default_value = 2u;
+static const ProtobufCFieldDescriptor cmsg_drmfinal_result__field_descriptors[8] =
+{
+ {
+ "eResult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDRMFinalResult, has_eresult),
+ offsetof(CMsgDRMFinalResult, eresult),
+ NULL,
+ &cmsg_drmfinal_result__e_result__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDRMFinalResult, has_app_id),
+ offsetof(CMsgDRMFinalResult, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "blob_download_type",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDRMFinalResult, has_blob_download_type),
+ offsetof(CMsgDRMFinalResult, blob_download_type),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "error_detail",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDRMFinalResult, has_error_detail),
+ offsetof(CMsgDRMFinalResult, error_detail),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "merge_guid",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgDRMFinalResult, has_merge_guid),
+ offsetof(CMsgDRMFinalResult, merge_guid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "download_file_dfs_ip",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDRMFinalResult, has_download_file_dfs_ip),
+ offsetof(CMsgDRMFinalResult, download_file_dfs_ip),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "download_file_dfs_port",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDRMFinalResult, has_download_file_dfs_port),
+ offsetof(CMsgDRMFinalResult, download_file_dfs_port),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "download_file_url",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgDRMFinalResult, download_file_url),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_drmfinal_result__field_indices_by_name[] = {
+ 1, /* field[1] = app_id */
+ 2, /* field[2] = blob_download_type */
+ 5, /* field[5] = download_file_dfs_ip */
+ 6, /* field[6] = download_file_dfs_port */
+ 7, /* field[7] = download_file_url */
+ 0, /* field[0] = eResult */
+ 3, /* field[3] = error_detail */
+ 4, /* field[4] = merge_guid */
+};
+static const ProtobufCIntRange cmsg_drmfinal_result__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor cmsg_drmfinal_result__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgDRMFinalResult",
+ "CMsgDRMFinalResult",
+ "CMsgDRMFinalResult",
+ "",
+ sizeof(CMsgDRMFinalResult),
+ 8,
+ cmsg_drmfinal_result__field_descriptors,
+ cmsg_drmfinal_result__field_indices_by_name,
+ 1, cmsg_drmfinal_result__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_dpcheck_special_survey__field_descriptors[1] =
+{
+ {
+ "survey_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientDPCheckSpecialSurvey, has_survey_id),
+ offsetof(CMsgClientDPCheckSpecialSurvey, survey_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_dpcheck_special_survey__field_indices_by_name[] = {
+ 0, /* field[0] = survey_id */
+};
+static const ProtobufCIntRange cmsg_client_dpcheck_special_survey__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_dpcheck_special_survey__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientDPCheckSpecialSurvey",
+ "CMsgClientDPCheckSpecialSurvey",
+ "CMsgClientDPCheckSpecialSurvey",
+ "",
+ sizeof(CMsgClientDPCheckSpecialSurvey),
+ 1,
+ cmsg_client_dpcheck_special_survey__field_descriptors,
+ cmsg_client_dpcheck_special_survey__field_indices_by_name,
+ 1, cmsg_client_dpcheck_special_survey__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const uint32_t cmsg_client_dpcheck_special_survey_response__e_result__default_value = 2u;
+static const ProtobufCFieldDescriptor cmsg_client_dpcheck_special_survey_response__field_descriptors[6] =
+{
+ {
+ "eResult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientDPCheckSpecialSurveyResponse, has_eresult),
+ offsetof(CMsgClientDPCheckSpecialSurveyResponse, eresult),
+ NULL,
+ &cmsg_client_dpcheck_special_survey_response__e_result__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "state",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientDPCheckSpecialSurveyResponse, has_state),
+ offsetof(CMsgClientDPCheckSpecialSurveyResponse, state),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "name",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientDPCheckSpecialSurveyResponse, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "custom_url",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientDPCheckSpecialSurveyResponse, custom_url),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "include_software",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientDPCheckSpecialSurveyResponse, has_include_software),
+ offsetof(CMsgClientDPCheckSpecialSurveyResponse, include_software),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "token",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientDPCheckSpecialSurveyResponse, has_token),
+ offsetof(CMsgClientDPCheckSpecialSurveyResponse, token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_dpcheck_special_survey_response__field_indices_by_name[] = {
+ 3, /* field[3] = custom_url */
+ 0, /* field[0] = eResult */
+ 4, /* field[4] = include_software */
+ 2, /* field[2] = name */
+ 1, /* field[1] = state */
+ 5, /* field[5] = token */
+};
+static const ProtobufCIntRange cmsg_client_dpcheck_special_survey_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor cmsg_client_dpcheck_special_survey_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientDPCheckSpecialSurveyResponse",
+ "CMsgClientDPCheckSpecialSurveyResponse",
+ "CMsgClientDPCheckSpecialSurveyResponse",
+ "",
+ sizeof(CMsgClientDPCheckSpecialSurveyResponse),
+ 6,
+ cmsg_client_dpcheck_special_survey_response__field_descriptors,
+ cmsg_client_dpcheck_special_survey_response__field_indices_by_name,
+ 1, cmsg_client_dpcheck_special_survey_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_dpsend_special_survey_response__field_descriptors[2] =
+{
+ {
+ "survey_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientDPSendSpecialSurveyResponse, has_survey_id),
+ offsetof(CMsgClientDPSendSpecialSurveyResponse, survey_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "data",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientDPSendSpecialSurveyResponse, has_data),
+ offsetof(CMsgClientDPSendSpecialSurveyResponse, data),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_dpsend_special_survey_response__field_indices_by_name[] = {
+ 1, /* field[1] = data */
+ 0, /* field[0] = survey_id */
+};
+static const ProtobufCIntRange cmsg_client_dpsend_special_survey_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_dpsend_special_survey_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientDPSendSpecialSurveyResponse",
+ "CMsgClientDPSendSpecialSurveyResponse",
+ "CMsgClientDPSendSpecialSurveyResponse",
+ "",
+ sizeof(CMsgClientDPSendSpecialSurveyResponse),
+ 2,
+ cmsg_client_dpsend_special_survey_response__field_descriptors,
+ cmsg_client_dpsend_special_survey_response__field_indices_by_name,
+ 1, cmsg_client_dpsend_special_survey_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const uint32_t cmsg_client_dpsend_special_survey_response_reply__e_result__default_value = 2u;
+static const ProtobufCFieldDescriptor cmsg_client_dpsend_special_survey_response_reply__field_descriptors[2] =
+{
+ {
+ "eResult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientDPSendSpecialSurveyResponseReply, has_eresult),
+ offsetof(CMsgClientDPSendSpecialSurveyResponseReply, eresult),
+ NULL,
+ &cmsg_client_dpsend_special_survey_response_reply__e_result__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "token",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientDPSendSpecialSurveyResponseReply, has_token),
+ offsetof(CMsgClientDPSendSpecialSurveyResponseReply, token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_dpsend_special_survey_response_reply__field_indices_by_name[] = {
+ 0, /* field[0] = eResult */
+ 1, /* field[1] = token */
+};
+static const ProtobufCIntRange cmsg_client_dpsend_special_survey_response_reply__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_dpsend_special_survey_response_reply__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientDPSendSpecialSurveyResponseReply",
+ "CMsgClientDPSendSpecialSurveyResponseReply",
+ "CMsgClientDPSendSpecialSurveyResponseReply",
+ "",
+ sizeof(CMsgClientDPSendSpecialSurveyResponseReply),
+ 2,
+ cmsg_client_dpsend_special_survey_response_reply__field_descriptors,
+ cmsg_client_dpsend_special_survey_response_reply__field_indices_by_name,
+ 1, cmsg_client_dpsend_special_survey_response_reply__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_request_forgotten_password_email__field_descriptors[2] =
+{
+ {
+ "account_name",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientRequestForgottenPasswordEmail, account_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "password_tried",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientRequestForgottenPasswordEmail, password_tried),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_request_forgotten_password_email__field_indices_by_name[] = {
+ 0, /* field[0] = account_name */
+ 1, /* field[1] = password_tried */
+};
+static const ProtobufCIntRange cmsg_client_request_forgotten_password_email__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_request_forgotten_password_email__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestForgottenPasswordEmail",
+ "CMsgClientRequestForgottenPasswordEmail",
+ "CMsgClientRequestForgottenPasswordEmail",
+ "",
+ sizeof(CMsgClientRequestForgottenPasswordEmail),
+ 2,
+ cmsg_client_request_forgotten_password_email__field_descriptors,
+ cmsg_client_request_forgotten_password_email__field_indices_by_name,
+ 1, cmsg_client_request_forgotten_password_email__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_request_forgotten_password_email_response__field_descriptors[2] =
+{
+ {
+ "eResult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestForgottenPasswordEmailResponse, has_eresult),
+ offsetof(CMsgClientRequestForgottenPasswordEmailResponse, eresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "use_secret_question",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientRequestForgottenPasswordEmailResponse, has_use_secret_question),
+ offsetof(CMsgClientRequestForgottenPasswordEmailResponse, use_secret_question),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_request_forgotten_password_email_response__field_indices_by_name[] = {
+ 0, /* field[0] = eResult */
+ 1, /* field[1] = use_secret_question */
+};
+static const ProtobufCIntRange cmsg_client_request_forgotten_password_email_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_request_forgotten_password_email_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestForgottenPasswordEmailResponse",
+ "CMsgClientRequestForgottenPasswordEmailResponse",
+ "CMsgClientRequestForgottenPasswordEmailResponse",
+ "",
+ sizeof(CMsgClientRequestForgottenPasswordEmailResponse),
+ 2,
+ cmsg_client_request_forgotten_password_email_response__field_descriptors,
+ cmsg_client_request_forgotten_password_email_response__field_indices_by_name,
+ 1, cmsg_client_request_forgotten_password_email_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_item_announcements__unseen_item__field_descriptors[6] =
+{
+ {
+ "appid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientItemAnnouncements__UnseenItem, has_appid),
+ offsetof(CMsgClientItemAnnouncements__UnseenItem, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "context_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientItemAnnouncements__UnseenItem, has_context_id),
+ offsetof(CMsgClientItemAnnouncements__UnseenItem, context_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "asset_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientItemAnnouncements__UnseenItem, has_asset_id),
+ offsetof(CMsgClientItemAnnouncements__UnseenItem, asset_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "amount",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientItemAnnouncements__UnseenItem, has_amount),
+ offsetof(CMsgClientItemAnnouncements__UnseenItem, amount),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "rtime32_gained",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED32,
+ offsetof(CMsgClientItemAnnouncements__UnseenItem, has_rtime32_gained),
+ offsetof(CMsgClientItemAnnouncements__UnseenItem, rtime32_gained),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "source_appid",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientItemAnnouncements__UnseenItem, has_source_appid),
+ offsetof(CMsgClientItemAnnouncements__UnseenItem, source_appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_item_announcements__unseen_item__field_indices_by_name[] = {
+ 3, /* field[3] = amount */
+ 0, /* field[0] = appid */
+ 2, /* field[2] = asset_id */
+ 1, /* field[1] = context_id */
+ 4, /* field[4] = rtime32_gained */
+ 5, /* field[5] = source_appid */
+};
+static const ProtobufCIntRange cmsg_client_item_announcements__unseen_item__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor cmsg_client_item_announcements__unseen_item__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientItemAnnouncements.UnseenItem",
+ "UnseenItem",
+ "CMsgClientItemAnnouncements__UnseenItem",
+ "",
+ sizeof(CMsgClientItemAnnouncements__UnseenItem),
+ 6,
+ cmsg_client_item_announcements__unseen_item__field_descriptors,
+ cmsg_client_item_announcements__unseen_item__field_indices_by_name,
+ 1, cmsg_client_item_announcements__unseen_item__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_item_announcements__field_descriptors[2] =
+{
+ {
+ "count_new_items",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientItemAnnouncements, has_count_new_items),
+ offsetof(CMsgClientItemAnnouncements, count_new_items),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "unseen_items",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientItemAnnouncements, n_unseen_items),
+ offsetof(CMsgClientItemAnnouncements, unseen_items),
+ &cmsg_client_item_announcements__unseen_item__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_item_announcements__field_indices_by_name[] = {
+ 0, /* field[0] = count_new_items */
+ 1, /* field[1] = unseen_items */
+};
+static const ProtobufCIntRange cmsg_client_item_announcements__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_item_announcements__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientItemAnnouncements",
+ "CMsgClientItemAnnouncements",
+ "CMsgClientItemAnnouncements",
+ "",
+ sizeof(CMsgClientItemAnnouncements),
+ 2,
+ cmsg_client_item_announcements__field_descriptors,
+ cmsg_client_item_announcements__field_indices_by_name,
+ 1, cmsg_client_item_announcements__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cmsg_client_request_item_announcements__field_descriptors NULL
+#define cmsg_client_request_item_announcements__field_indices_by_name NULL
+#define cmsg_client_request_item_announcements__number_ranges NULL
+const ProtobufCMessageDescriptor cmsg_client_request_item_announcements__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestItemAnnouncements",
+ "CMsgClientRequestItemAnnouncements",
+ "CMsgClientRequestItemAnnouncements",
+ "",
+ sizeof(CMsgClientRequestItemAnnouncements),
+ 0,
+ cmsg_client_request_item_announcements__field_descriptors,
+ cmsg_client_request_item_announcements__field_indices_by_name,
+ 0, cmsg_client_request_item_announcements__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_user_notifications__notification__field_descriptors[2] =
+{
+ {
+ "user_notification_type",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUserNotifications__Notification, has_user_notification_type),
+ offsetof(CMsgClientUserNotifications__Notification, user_notification_type),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "count",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUserNotifications__Notification, has_count),
+ offsetof(CMsgClientUserNotifications__Notification, count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_user_notifications__notification__field_indices_by_name[] = {
+ 1, /* field[1] = count */
+ 0, /* field[0] = user_notification_type */
+};
+static const ProtobufCIntRange cmsg_client_user_notifications__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_user_notifications__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientUserNotifications.Notification",
+ "Notification",
+ "CMsgClientUserNotifications__Notification",
+ "",
+ sizeof(CMsgClientUserNotifications__Notification),
+ 2,
+ cmsg_client_user_notifications__notification__field_descriptors,
+ cmsg_client_user_notifications__notification__field_indices_by_name,
+ 1, cmsg_client_user_notifications__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_user_notifications__field_descriptors[1] =
+{
+ {
+ "notifications",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientUserNotifications, n_notifications),
+ offsetof(CMsgClientUserNotifications, notifications),
+ &cmsg_client_user_notifications__notification__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_user_notifications__field_indices_by_name[] = {
+ 0, /* field[0] = notifications */
+};
+static const ProtobufCIntRange cmsg_client_user_notifications__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_user_notifications__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientUserNotifications",
+ "CMsgClientUserNotifications",
+ "CMsgClientUserNotifications",
+ "",
+ sizeof(CMsgClientUserNotifications),
+ 1,
+ cmsg_client_user_notifications__field_descriptors,
+ cmsg_client_user_notifications__field_indices_by_name,
+ 1, cmsg_client_user_notifications__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_comment_notifications__field_descriptors[3] =
+{
+ {
+ "count_new_comments",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCommentNotifications, has_count_new_comments),
+ offsetof(CMsgClientCommentNotifications, count_new_comments),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "count_new_comments_owner",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCommentNotifications, has_count_new_comments_owner),
+ offsetof(CMsgClientCommentNotifications, count_new_comments_owner),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "count_new_comments_subscriptions",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCommentNotifications, has_count_new_comments_subscriptions),
+ offsetof(CMsgClientCommentNotifications, count_new_comments_subscriptions),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_comment_notifications__field_indices_by_name[] = {
+ 0, /* field[0] = count_new_comments */
+ 1, /* field[1] = count_new_comments_owner */
+ 2, /* field[2] = count_new_comments_subscriptions */
+};
+static const ProtobufCIntRange cmsg_client_comment_notifications__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_comment_notifications__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientCommentNotifications",
+ "CMsgClientCommentNotifications",
+ "CMsgClientCommentNotifications",
+ "",
+ sizeof(CMsgClientCommentNotifications),
+ 3,
+ cmsg_client_comment_notifications__field_descriptors,
+ cmsg_client_comment_notifications__field_indices_by_name,
+ 1, cmsg_client_comment_notifications__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cmsg_client_request_comment_notifications__field_descriptors NULL
+#define cmsg_client_request_comment_notifications__field_indices_by_name NULL
+#define cmsg_client_request_comment_notifications__number_ranges NULL
+const ProtobufCMessageDescriptor cmsg_client_request_comment_notifications__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestCommentNotifications",
+ "CMsgClientRequestCommentNotifications",
+ "CMsgClientRequestCommentNotifications",
+ "",
+ sizeof(CMsgClientRequestCommentNotifications),
+ 0,
+ cmsg_client_request_comment_notifications__field_descriptors,
+ cmsg_client_request_comment_notifications__field_indices_by_name,
+ 0, cmsg_client_request_comment_notifications__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_offline_message_notification__field_descriptors[2] =
+{
+ {
+ "offline_messages",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientOfflineMessageNotification, has_offline_messages),
+ offsetof(CMsgClientOfflineMessageNotification, offline_messages),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends_with_offline_messages",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientOfflineMessageNotification, n_friends_with_offline_messages),
+ offsetof(CMsgClientOfflineMessageNotification, friends_with_offline_messages),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_offline_message_notification__field_indices_by_name[] = {
+ 1, /* field[1] = friends_with_offline_messages */
+ 0, /* field[0] = offline_messages */
+};
+static const ProtobufCIntRange cmsg_client_offline_message_notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_offline_message_notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientOfflineMessageNotification",
+ "CMsgClientOfflineMessageNotification",
+ "CMsgClientOfflineMessageNotification",
+ "",
+ sizeof(CMsgClientOfflineMessageNotification),
+ 2,
+ cmsg_client_offline_message_notification__field_descriptors,
+ cmsg_client_offline_message_notification__field_indices_by_name,
+ 1, cmsg_client_offline_message_notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cmsg_client_request_offline_message_count__field_descriptors NULL
+#define cmsg_client_request_offline_message_count__field_indices_by_name NULL
+#define cmsg_client_request_offline_message_count__number_ranges NULL
+const ProtobufCMessageDescriptor cmsg_client_request_offline_message_count__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestOfflineMessageCount",
+ "CMsgClientRequestOfflineMessageCount",
+ "CMsgClientRequestOfflineMessageCount",
+ "",
+ sizeof(CMsgClientRequestOfflineMessageCount),
+ 0,
+ cmsg_client_request_offline_message_count__field_descriptors,
+ cmsg_client_request_offline_message_count__field_indices_by_name,
+ 0, cmsg_client_request_offline_message_count__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_chat_get_friend_message_history__field_descriptors[1] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientChatGetFriendMessageHistory, has_steamid),
+ offsetof(CMsgClientChatGetFriendMessageHistory, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_chat_get_friend_message_history__field_indices_by_name[] = {
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cmsg_client_chat_get_friend_message_history__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_chat_get_friend_message_history__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientChatGetFriendMessageHistory",
+ "CMsgClientChatGetFriendMessageHistory",
+ "CMsgClientChatGetFriendMessageHistory",
+ "",
+ sizeof(CMsgClientChatGetFriendMessageHistory),
+ 1,
+ cmsg_client_chat_get_friend_message_history__field_descriptors,
+ cmsg_client_chat_get_friend_message_history__field_indices_by_name,
+ 1, cmsg_client_chat_get_friend_message_history__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_chat_get_friend_message_history_response__friend_message__field_descriptors[4] =
+{
+ {
+ "accountid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage, has_accountid),
+ offsetof(CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage, accountid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "timestamp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage, has_timestamp),
+ offsetof(CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage, timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage, message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "unread",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage, has_unread),
+ offsetof(CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage, unread),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_chat_get_friend_message_history_response__friend_message__field_indices_by_name[] = {
+ 0, /* field[0] = accountid */
+ 2, /* field[2] = message */
+ 1, /* field[1] = timestamp */
+ 3, /* field[3] = unread */
+};
+static const ProtobufCIntRange cmsg_client_chat_get_friend_message_history_response__friend_message__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cmsg_client_chat_get_friend_message_history_response__friend_message__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientChatGetFriendMessageHistoryResponse.FriendMessage",
+ "FriendMessage",
+ "CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage",
+ "",
+ sizeof(CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage),
+ 4,
+ cmsg_client_chat_get_friend_message_history_response__friend_message__field_descriptors,
+ cmsg_client_chat_get_friend_message_history_response__friend_message__field_indices_by_name,
+ 1, cmsg_client_chat_get_friend_message_history_response__friend_message__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_chat_get_friend_message_history_response__field_descriptors[3] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientChatGetFriendMessageHistoryResponse, has_steamid),
+ offsetof(CMsgClientChatGetFriendMessageHistoryResponse, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "success",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientChatGetFriendMessageHistoryResponse, has_success),
+ offsetof(CMsgClientChatGetFriendMessageHistoryResponse, success),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "messages",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientChatGetFriendMessageHistoryResponse, n_messages),
+ offsetof(CMsgClientChatGetFriendMessageHistoryResponse, messages),
+ &cmsg_client_chat_get_friend_message_history_response__friend_message__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_chat_get_friend_message_history_response__field_indices_by_name[] = {
+ 2, /* field[2] = messages */
+ 0, /* field[0] = steamid */
+ 1, /* field[1] = success */
+};
+static const ProtobufCIntRange cmsg_client_chat_get_friend_message_history_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_chat_get_friend_message_history_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientChatGetFriendMessageHistoryResponse",
+ "CMsgClientChatGetFriendMessageHistoryResponse",
+ "CMsgClientChatGetFriendMessageHistoryResponse",
+ "",
+ sizeof(CMsgClientChatGetFriendMessageHistoryResponse),
+ 3,
+ cmsg_client_chat_get_friend_message_history_response__field_descriptors,
+ cmsg_client_chat_get_friend_message_history_response__field_indices_by_name,
+ 1, cmsg_client_chat_get_friend_message_history_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cmsg_client_chat_get_friend_message_history_for_offline_messages__field_descriptors NULL
+#define cmsg_client_chat_get_friend_message_history_for_offline_messages__field_indices_by_name NULL
+#define cmsg_client_chat_get_friend_message_history_for_offline_messages__number_ranges NULL
+const ProtobufCMessageDescriptor cmsg_client_chat_get_friend_message_history_for_offline_messages__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientChatGetFriendMessageHistoryForOfflineMessages",
+ "CMsgClientChatGetFriendMessageHistoryForOfflineMessages",
+ "CMsgClientChatGetFriendMessageHistoryForOfflineMessages",
+ "",
+ sizeof(CMsgClientChatGetFriendMessageHistoryForOfflineMessages),
+ 0,
+ cmsg_client_chat_get_friend_message_history_for_offline_messages__field_descriptors,
+ cmsg_client_chat_get_friend_message_history_for_offline_messages__field_indices_by_name,
+ 0, cmsg_client_chat_get_friend_message_history_for_offline_messages__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_fsget_friends_steam_levels__field_descriptors[1] =
+{
+ {
+ "accountids",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientFSGetFriendsSteamLevels, n_accountids),
+ offsetof(CMsgClientFSGetFriendsSteamLevels, accountids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_fsget_friends_steam_levels__field_indices_by_name[] = {
+ 0, /* field[0] = accountids */
+};
+static const ProtobufCIntRange cmsg_client_fsget_friends_steam_levels__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_fsget_friends_steam_levels__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientFSGetFriendsSteamLevels",
+ "CMsgClientFSGetFriendsSteamLevels",
+ "CMsgClientFSGetFriendsSteamLevels",
+ "",
+ sizeof(CMsgClientFSGetFriendsSteamLevels),
+ 1,
+ cmsg_client_fsget_friends_steam_levels__field_descriptors,
+ cmsg_client_fsget_friends_steam_levels__field_indices_by_name,
+ 1, cmsg_client_fsget_friends_steam_levels__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_fsget_friends_steam_levels_response__friend__field_descriptors[2] =
+{
+ {
+ "accountid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientFSGetFriendsSteamLevelsResponse__Friend, has_accountid),
+ offsetof(CMsgClientFSGetFriendsSteamLevelsResponse__Friend, accountid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "level",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientFSGetFriendsSteamLevelsResponse__Friend, has_level),
+ offsetof(CMsgClientFSGetFriendsSteamLevelsResponse__Friend, level),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_fsget_friends_steam_levels_response__friend__field_indices_by_name[] = {
+ 0, /* field[0] = accountid */
+ 1, /* field[1] = level */
+};
+static const ProtobufCIntRange cmsg_client_fsget_friends_steam_levels_response__friend__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_fsget_friends_steam_levels_response__friend__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientFSGetFriendsSteamLevelsResponse.Friend",
+ "Friend",
+ "CMsgClientFSGetFriendsSteamLevelsResponse__Friend",
+ "",
+ sizeof(CMsgClientFSGetFriendsSteamLevelsResponse__Friend),
+ 2,
+ cmsg_client_fsget_friends_steam_levels_response__friend__field_descriptors,
+ cmsg_client_fsget_friends_steam_levels_response__friend__field_indices_by_name,
+ 1, cmsg_client_fsget_friends_steam_levels_response__friend__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_fsget_friends_steam_levels_response__field_descriptors[1] =
+{
+ {
+ "friends",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientFSGetFriendsSteamLevelsResponse, n_friends),
+ offsetof(CMsgClientFSGetFriendsSteamLevelsResponse, friends),
+ &cmsg_client_fsget_friends_steam_levels_response__friend__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_fsget_friends_steam_levels_response__field_indices_by_name[] = {
+ 0, /* field[0] = friends */
+};
+static const ProtobufCIntRange cmsg_client_fsget_friends_steam_levels_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_fsget_friends_steam_levels_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientFSGetFriendsSteamLevelsResponse",
+ "CMsgClientFSGetFriendsSteamLevelsResponse",
+ "CMsgClientFSGetFriendsSteamLevelsResponse",
+ "",
+ sizeof(CMsgClientFSGetFriendsSteamLevelsResponse),
+ 1,
+ cmsg_client_fsget_friends_steam_levels_response__field_descriptors,
+ cmsg_client_fsget_friends_steam_levels_response__field_indices_by_name,
+ 1, cmsg_client_fsget_friends_steam_levels_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_email_addr_info__field_descriptors[5] =
+{
+ {
+ "email_address",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientEmailAddrInfo, email_address),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "email_is_validated",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientEmailAddrInfo, has_email_is_validated),
+ offsetof(CMsgClientEmailAddrInfo, email_is_validated),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "email_validation_changed",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientEmailAddrInfo, has_email_validation_changed),
+ offsetof(CMsgClientEmailAddrInfo, email_validation_changed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "credential_change_requires_code",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientEmailAddrInfo, has_credential_change_requires_code),
+ offsetof(CMsgClientEmailAddrInfo, credential_change_requires_code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "password_or_secretqa_change_requires_code",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientEmailAddrInfo, has_password_or_secretqa_change_requires_code),
+ offsetof(CMsgClientEmailAddrInfo, password_or_secretqa_change_requires_code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_email_addr_info__field_indices_by_name[] = {
+ 3, /* field[3] = credential_change_requires_code */
+ 0, /* field[0] = email_address */
+ 1, /* field[1] = email_is_validated */
+ 2, /* field[2] = email_validation_changed */
+ 4, /* field[4] = password_or_secretqa_change_requires_code */
+};
+static const ProtobufCIntRange cmsg_client_email_addr_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cmsg_client_email_addr_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientEmailAddrInfo",
+ "CMsgClientEmailAddrInfo",
+ "CMsgClientEmailAddrInfo",
+ "",
+ sizeof(CMsgClientEmailAddrInfo),
+ 5,
+ cmsg_client_email_addr_info__field_descriptors,
+ cmsg_client_email_addr_info__field_indices_by_name,
+ 1, cmsg_client_email_addr_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_creitem_vote_summary__published_file_id__field_descriptors[1] =
+{
+ {
+ "published_file_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgCREItemVoteSummary__PublishedFileId, has_published_file_id),
+ offsetof(CMsgCREItemVoteSummary__PublishedFileId, published_file_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_creitem_vote_summary__published_file_id__field_indices_by_name[] = {
+ 0, /* field[0] = published_file_id */
+};
+static const ProtobufCIntRange cmsg_creitem_vote_summary__published_file_id__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_creitem_vote_summary__published_file_id__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgCREItemVoteSummary.PublishedFileId",
+ "PublishedFileId",
+ "CMsgCREItemVoteSummary__PublishedFileId",
+ "",
+ sizeof(CMsgCREItemVoteSummary__PublishedFileId),
+ 1,
+ cmsg_creitem_vote_summary__published_file_id__field_descriptors,
+ cmsg_creitem_vote_summary__published_file_id__field_indices_by_name,
+ 1, cmsg_creitem_vote_summary__published_file_id__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_creitem_vote_summary__field_descriptors[1] =
+{
+ {
+ "published_file_ids",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgCREItemVoteSummary, n_published_file_ids),
+ offsetof(CMsgCREItemVoteSummary, published_file_ids),
+ &cmsg_creitem_vote_summary__published_file_id__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_creitem_vote_summary__field_indices_by_name[] = {
+ 0, /* field[0] = published_file_ids */
+};
+static const ProtobufCIntRange cmsg_creitem_vote_summary__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_creitem_vote_summary__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgCREItemVoteSummary",
+ "CMsgCREItemVoteSummary",
+ "CMsgCREItemVoteSummary",
+ "",
+ sizeof(CMsgCREItemVoteSummary),
+ 1,
+ cmsg_creitem_vote_summary__field_descriptors,
+ cmsg_creitem_vote_summary__field_indices_by_name,
+ 1, cmsg_creitem_vote_summary__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_creitem_vote_summary_response__item_vote_summary__field_descriptors[5] =
+{
+ {
+ "published_file_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgCREItemVoteSummaryResponse__ItemVoteSummary, has_published_file_id),
+ offsetof(CMsgCREItemVoteSummaryResponse__ItemVoteSummary, published_file_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "votes_for",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgCREItemVoteSummaryResponse__ItemVoteSummary, has_votes_for),
+ offsetof(CMsgCREItemVoteSummaryResponse__ItemVoteSummary, votes_for),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "votes_against",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgCREItemVoteSummaryResponse__ItemVoteSummary, has_votes_against),
+ offsetof(CMsgCREItemVoteSummaryResponse__ItemVoteSummary, votes_against),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reports",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgCREItemVoteSummaryResponse__ItemVoteSummary, has_reports),
+ offsetof(CMsgCREItemVoteSummaryResponse__ItemVoteSummary, reports),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "score",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FLOAT,
+ offsetof(CMsgCREItemVoteSummaryResponse__ItemVoteSummary, has_score),
+ offsetof(CMsgCREItemVoteSummaryResponse__ItemVoteSummary, score),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_creitem_vote_summary_response__item_vote_summary__field_indices_by_name[] = {
+ 0, /* field[0] = published_file_id */
+ 3, /* field[3] = reports */
+ 4, /* field[4] = score */
+ 2, /* field[2] = votes_against */
+ 1, /* field[1] = votes_for */
+};
+static const ProtobufCIntRange cmsg_creitem_vote_summary_response__item_vote_summary__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cmsg_creitem_vote_summary_response__item_vote_summary__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgCREItemVoteSummaryResponse.ItemVoteSummary",
+ "ItemVoteSummary",
+ "CMsgCREItemVoteSummaryResponse__ItemVoteSummary",
+ "",
+ sizeof(CMsgCREItemVoteSummaryResponse__ItemVoteSummary),
+ 5,
+ cmsg_creitem_vote_summary_response__item_vote_summary__field_descriptors,
+ cmsg_creitem_vote_summary_response__item_vote_summary__field_indices_by_name,
+ 1, cmsg_creitem_vote_summary_response__item_vote_summary__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_creitem_vote_summary_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_creitem_vote_summary_response__field_descriptors[2] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgCREItemVoteSummaryResponse, has_eresult),
+ offsetof(CMsgCREItemVoteSummaryResponse, eresult),
+ NULL,
+ &cmsg_creitem_vote_summary_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "item_vote_summaries",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgCREItemVoteSummaryResponse, n_item_vote_summaries),
+ offsetof(CMsgCREItemVoteSummaryResponse, item_vote_summaries),
+ &cmsg_creitem_vote_summary_response__item_vote_summary__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_creitem_vote_summary_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 1, /* field[1] = item_vote_summaries */
+};
+static const ProtobufCIntRange cmsg_creitem_vote_summary_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_creitem_vote_summary_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgCREItemVoteSummaryResponse",
+ "CMsgCREItemVoteSummaryResponse",
+ "CMsgCREItemVoteSummaryResponse",
+ "",
+ sizeof(CMsgCREItemVoteSummaryResponse),
+ 2,
+ cmsg_creitem_vote_summary_response__field_descriptors,
+ cmsg_creitem_vote_summary_response__field_indices_by_name,
+ 1, cmsg_creitem_vote_summary_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_creupdate_user_published_item_vote__field_descriptors[2] =
+{
+ {
+ "published_file_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgCREUpdateUserPublishedItemVote, has_published_file_id),
+ offsetof(CMsgCREUpdateUserPublishedItemVote, published_file_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "vote_up",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgCREUpdateUserPublishedItemVote, has_vote_up),
+ offsetof(CMsgCREUpdateUserPublishedItemVote, vote_up),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_creupdate_user_published_item_vote__field_indices_by_name[] = {
+ 0, /* field[0] = published_file_id */
+ 1, /* field[1] = vote_up */
+};
+static const ProtobufCIntRange cmsg_creupdate_user_published_item_vote__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_creupdate_user_published_item_vote__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgCREUpdateUserPublishedItemVote",
+ "CMsgCREUpdateUserPublishedItemVote",
+ "CMsgCREUpdateUserPublishedItemVote",
+ "",
+ sizeof(CMsgCREUpdateUserPublishedItemVote),
+ 2,
+ cmsg_creupdate_user_published_item_vote__field_descriptors,
+ cmsg_creupdate_user_published_item_vote__field_indices_by_name,
+ 1, cmsg_creupdate_user_published_item_vote__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_creupdate_user_published_item_vote_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_creupdate_user_published_item_vote_response__field_descriptors[1] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgCREUpdateUserPublishedItemVoteResponse, has_eresult),
+ offsetof(CMsgCREUpdateUserPublishedItemVoteResponse, eresult),
+ NULL,
+ &cmsg_creupdate_user_published_item_vote_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_creupdate_user_published_item_vote_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_creupdate_user_published_item_vote_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_creupdate_user_published_item_vote_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgCREUpdateUserPublishedItemVoteResponse",
+ "CMsgCREUpdateUserPublishedItemVoteResponse",
+ "CMsgCREUpdateUserPublishedItemVoteResponse",
+ "",
+ sizeof(CMsgCREUpdateUserPublishedItemVoteResponse),
+ 1,
+ cmsg_creupdate_user_published_item_vote_response__field_descriptors,
+ cmsg_creupdate_user_published_item_vote_response__field_indices_by_name,
+ 1, cmsg_creupdate_user_published_item_vote_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_creget_user_published_item_vote_details__published_file_id__field_descriptors[1] =
+{
+ {
+ "published_file_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgCREGetUserPublishedItemVoteDetails__PublishedFileId, has_published_file_id),
+ offsetof(CMsgCREGetUserPublishedItemVoteDetails__PublishedFileId, published_file_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_creget_user_published_item_vote_details__published_file_id__field_indices_by_name[] = {
+ 0, /* field[0] = published_file_id */
+};
+static const ProtobufCIntRange cmsg_creget_user_published_item_vote_details__published_file_id__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_creget_user_published_item_vote_details__published_file_id__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgCREGetUserPublishedItemVoteDetails.PublishedFileId",
+ "PublishedFileId",
+ "CMsgCREGetUserPublishedItemVoteDetails__PublishedFileId",
+ "",
+ sizeof(CMsgCREGetUserPublishedItemVoteDetails__PublishedFileId),
+ 1,
+ cmsg_creget_user_published_item_vote_details__published_file_id__field_descriptors,
+ cmsg_creget_user_published_item_vote_details__published_file_id__field_indices_by_name,
+ 1, cmsg_creget_user_published_item_vote_details__published_file_id__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_creget_user_published_item_vote_details__field_descriptors[1] =
+{
+ {
+ "published_file_ids",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgCREGetUserPublishedItemVoteDetails, n_published_file_ids),
+ offsetof(CMsgCREGetUserPublishedItemVoteDetails, published_file_ids),
+ &cmsg_creget_user_published_item_vote_details__published_file_id__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_creget_user_published_item_vote_details__field_indices_by_name[] = {
+ 0, /* field[0] = published_file_ids */
+};
+static const ProtobufCIntRange cmsg_creget_user_published_item_vote_details__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_creget_user_published_item_vote_details__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgCREGetUserPublishedItemVoteDetails",
+ "CMsgCREGetUserPublishedItemVoteDetails",
+ "CMsgCREGetUserPublishedItemVoteDetails",
+ "",
+ sizeof(CMsgCREGetUserPublishedItemVoteDetails),
+ 1,
+ cmsg_creget_user_published_item_vote_details__field_descriptors,
+ cmsg_creget_user_published_item_vote_details__field_indices_by_name,
+ 1, cmsg_creget_user_published_item_vote_details__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_creget_user_published_item_vote_details_response__user_item_vote_detail__vote__default_value = 0;
+static const ProtobufCFieldDescriptor cmsg_creget_user_published_item_vote_details_response__user_item_vote_detail__field_descriptors[2] =
+{
+ {
+ "published_file_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgCREGetUserPublishedItemVoteDetailsResponse__UserItemVoteDetail, has_published_file_id),
+ offsetof(CMsgCREGetUserPublishedItemVoteDetailsResponse__UserItemVoteDetail, published_file_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "vote",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgCREGetUserPublishedItemVoteDetailsResponse__UserItemVoteDetail, has_vote),
+ offsetof(CMsgCREGetUserPublishedItemVoteDetailsResponse__UserItemVoteDetail, vote),
+ NULL,
+ &cmsg_creget_user_published_item_vote_details_response__user_item_vote_detail__vote__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_creget_user_published_item_vote_details_response__user_item_vote_detail__field_indices_by_name[] = {
+ 0, /* field[0] = published_file_id */
+ 1, /* field[1] = vote */
+};
+static const ProtobufCIntRange cmsg_creget_user_published_item_vote_details_response__user_item_vote_detail__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_creget_user_published_item_vote_details_response__user_item_vote_detail__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgCREGetUserPublishedItemVoteDetailsResponse.UserItemVoteDetail",
+ "UserItemVoteDetail",
+ "CMsgCREGetUserPublishedItemVoteDetailsResponse__UserItemVoteDetail",
+ "",
+ sizeof(CMsgCREGetUserPublishedItemVoteDetailsResponse__UserItemVoteDetail),
+ 2,
+ cmsg_creget_user_published_item_vote_details_response__user_item_vote_detail__field_descriptors,
+ cmsg_creget_user_published_item_vote_details_response__user_item_vote_detail__field_indices_by_name,
+ 1, cmsg_creget_user_published_item_vote_details_response__user_item_vote_detail__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_creget_user_published_item_vote_details_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_creget_user_published_item_vote_details_response__field_descriptors[2] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgCREGetUserPublishedItemVoteDetailsResponse, has_eresult),
+ offsetof(CMsgCREGetUserPublishedItemVoteDetailsResponse, eresult),
+ NULL,
+ &cmsg_creget_user_published_item_vote_details_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "user_item_vote_details",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgCREGetUserPublishedItemVoteDetailsResponse, n_user_item_vote_details),
+ offsetof(CMsgCREGetUserPublishedItemVoteDetailsResponse, user_item_vote_details),
+ &cmsg_creget_user_published_item_vote_details_response__user_item_vote_detail__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_creget_user_published_item_vote_details_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 1, /* field[1] = user_item_vote_details */
+};
+static const ProtobufCIntRange cmsg_creget_user_published_item_vote_details_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_creget_user_published_item_vote_details_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgCREGetUserPublishedItemVoteDetailsResponse",
+ "CMsgCREGetUserPublishedItemVoteDetailsResponse",
+ "CMsgCREGetUserPublishedItemVoteDetailsResponse",
+ "",
+ sizeof(CMsgCREGetUserPublishedItemVoteDetailsResponse),
+ 2,
+ cmsg_creget_user_published_item_vote_details_response__field_descriptors,
+ cmsg_creget_user_published_item_vote_details_response__field_indices_by_name,
+ 1, cmsg_creget_user_published_item_vote_details_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_fsget_follower_count__field_descriptors[1] =
+{
+ {
+ "steam_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgFSGetFollowerCount, has_steam_id),
+ offsetof(CMsgFSGetFollowerCount, steam_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_fsget_follower_count__field_indices_by_name[] = {
+ 0, /* field[0] = steam_id */
+};
+static const ProtobufCIntRange cmsg_fsget_follower_count__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_fsget_follower_count__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgFSGetFollowerCount",
+ "CMsgFSGetFollowerCount",
+ "CMsgFSGetFollowerCount",
+ "",
+ sizeof(CMsgFSGetFollowerCount),
+ 1,
+ cmsg_fsget_follower_count__field_descriptors,
+ cmsg_fsget_follower_count__field_indices_by_name,
+ 1, cmsg_fsget_follower_count__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_fsget_follower_count_response__eresult__default_value = 2;
+static const int32_t cmsg_fsget_follower_count_response__count__default_value = 0;
+static const ProtobufCFieldDescriptor cmsg_fsget_follower_count_response__field_descriptors[2] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgFSGetFollowerCountResponse, has_eresult),
+ offsetof(CMsgFSGetFollowerCountResponse, eresult),
+ NULL,
+ &cmsg_fsget_follower_count_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "count",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgFSGetFollowerCountResponse, has_count),
+ offsetof(CMsgFSGetFollowerCountResponse, count),
+ NULL,
+ &cmsg_fsget_follower_count_response__count__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_fsget_follower_count_response__field_indices_by_name[] = {
+ 1, /* field[1] = count */
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_fsget_follower_count_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_fsget_follower_count_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgFSGetFollowerCountResponse",
+ "CMsgFSGetFollowerCountResponse",
+ "CMsgFSGetFollowerCountResponse",
+ "",
+ sizeof(CMsgFSGetFollowerCountResponse),
+ 2,
+ cmsg_fsget_follower_count_response__field_descriptors,
+ cmsg_fsget_follower_count_response__field_indices_by_name,
+ 1, cmsg_fsget_follower_count_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_fsget_is_following__field_descriptors[1] =
+{
+ {
+ "steam_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgFSGetIsFollowing, has_steam_id),
+ offsetof(CMsgFSGetIsFollowing, steam_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_fsget_is_following__field_indices_by_name[] = {
+ 0, /* field[0] = steam_id */
+};
+static const ProtobufCIntRange cmsg_fsget_is_following__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_fsget_is_following__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgFSGetIsFollowing",
+ "CMsgFSGetIsFollowing",
+ "CMsgFSGetIsFollowing",
+ "",
+ sizeof(CMsgFSGetIsFollowing),
+ 1,
+ cmsg_fsget_is_following__field_descriptors,
+ cmsg_fsget_is_following__field_indices_by_name,
+ 1, cmsg_fsget_is_following__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_fsget_is_following_response__eresult__default_value = 2;
+static const protobuf_c_boolean cmsg_fsget_is_following_response__is_following__default_value = 0;
+static const ProtobufCFieldDescriptor cmsg_fsget_is_following_response__field_descriptors[2] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgFSGetIsFollowingResponse, has_eresult),
+ offsetof(CMsgFSGetIsFollowingResponse, eresult),
+ NULL,
+ &cmsg_fsget_is_following_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_following",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgFSGetIsFollowingResponse, has_is_following),
+ offsetof(CMsgFSGetIsFollowingResponse, is_following),
+ NULL,
+ &cmsg_fsget_is_following_response__is_following__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_fsget_is_following_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 1, /* field[1] = is_following */
+};
+static const ProtobufCIntRange cmsg_fsget_is_following_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_fsget_is_following_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgFSGetIsFollowingResponse",
+ "CMsgFSGetIsFollowingResponse",
+ "CMsgFSGetIsFollowingResponse",
+ "",
+ sizeof(CMsgFSGetIsFollowingResponse),
+ 2,
+ cmsg_fsget_is_following_response__field_descriptors,
+ cmsg_fsget_is_following_response__field_indices_by_name,
+ 1, cmsg_fsget_is_following_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_fsenumerate_following_list__field_descriptors[1] =
+{
+ {
+ "start_index",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgFSEnumerateFollowingList, has_start_index),
+ offsetof(CMsgFSEnumerateFollowingList, start_index),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_fsenumerate_following_list__field_indices_by_name[] = {
+ 0, /* field[0] = start_index */
+};
+static const ProtobufCIntRange cmsg_fsenumerate_following_list__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_fsenumerate_following_list__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgFSEnumerateFollowingList",
+ "CMsgFSEnumerateFollowingList",
+ "CMsgFSEnumerateFollowingList",
+ "",
+ sizeof(CMsgFSEnumerateFollowingList),
+ 1,
+ cmsg_fsenumerate_following_list__field_descriptors,
+ cmsg_fsenumerate_following_list__field_indices_by_name,
+ 1, cmsg_fsenumerate_following_list__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_fsenumerate_following_list_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_fsenumerate_following_list_response__field_descriptors[3] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgFSEnumerateFollowingListResponse, has_eresult),
+ offsetof(CMsgFSEnumerateFollowingListResponse, eresult),
+ NULL,
+ &cmsg_fsenumerate_following_list_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "total_results",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgFSEnumerateFollowingListResponse, has_total_results),
+ offsetof(CMsgFSEnumerateFollowingListResponse, total_results),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steam_ids",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgFSEnumerateFollowingListResponse, n_steam_ids),
+ offsetof(CMsgFSEnumerateFollowingListResponse, steam_ids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_fsenumerate_following_list_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 2, /* field[2] = steam_ids */
+ 1, /* field[1] = total_results */
+};
+static const ProtobufCIntRange cmsg_fsenumerate_following_list_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_fsenumerate_following_list_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgFSEnumerateFollowingListResponse",
+ "CMsgFSEnumerateFollowingListResponse",
+ "CMsgFSEnumerateFollowingListResponse",
+ "",
+ sizeof(CMsgFSEnumerateFollowingListResponse),
+ 3,
+ cmsg_fsenumerate_following_list_response__field_descriptors,
+ cmsg_fsenumerate_following_list_response__field_indices_by_name,
+ 1, cmsg_fsenumerate_following_list_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_dpget_number_of_current_players__field_descriptors[1] =
+{
+ {
+ "appid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgDPGetNumberOfCurrentPlayers, has_appid),
+ offsetof(CMsgDPGetNumberOfCurrentPlayers, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_dpget_number_of_current_players__field_indices_by_name[] = {
+ 0, /* field[0] = appid */
+};
+static const ProtobufCIntRange cmsg_dpget_number_of_current_players__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_dpget_number_of_current_players__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgDPGetNumberOfCurrentPlayers",
+ "CMsgDPGetNumberOfCurrentPlayers",
+ "CMsgDPGetNumberOfCurrentPlayers",
+ "",
+ sizeof(CMsgDPGetNumberOfCurrentPlayers),
+ 1,
+ cmsg_dpget_number_of_current_players__field_descriptors,
+ cmsg_dpget_number_of_current_players__field_indices_by_name,
+ 1, cmsg_dpget_number_of_current_players__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_dpget_number_of_current_players_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_dpget_number_of_current_players_response__field_descriptors[2] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgDPGetNumberOfCurrentPlayersResponse, has_eresult),
+ offsetof(CMsgDPGetNumberOfCurrentPlayersResponse, eresult),
+ NULL,
+ &cmsg_dpget_number_of_current_players_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "player_count",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgDPGetNumberOfCurrentPlayersResponse, has_player_count),
+ offsetof(CMsgDPGetNumberOfCurrentPlayersResponse, player_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_dpget_number_of_current_players_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 1, /* field[1] = player_count */
+};
+static const ProtobufCIntRange cmsg_dpget_number_of_current_players_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_dpget_number_of_current_players_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgDPGetNumberOfCurrentPlayersResponse",
+ "CMsgDPGetNumberOfCurrentPlayersResponse",
+ "CMsgDPGetNumberOfCurrentPlayersResponse",
+ "",
+ sizeof(CMsgDPGetNumberOfCurrentPlayersResponse),
+ 2,
+ cmsg_dpget_number_of_current_players_response__field_descriptors,
+ cmsg_dpget_number_of_current_players_response__field_indices_by_name,
+ 1, cmsg_dpget_number_of_current_players_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_friend_user_status_published__field_descriptors[3] =
+{
+ {
+ "friend_steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientFriendUserStatusPublished, has_friend_steamid),
+ offsetof(CMsgClientFriendUserStatusPublished, friend_steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "appid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientFriendUserStatusPublished, has_appid),
+ offsetof(CMsgClientFriendUserStatusPublished, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "status_text",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientFriendUserStatusPublished, status_text),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_friend_user_status_published__field_indices_by_name[] = {
+ 1, /* field[1] = appid */
+ 0, /* field[0] = friend_steamid */
+ 2, /* field[2] = status_text */
+};
+static const ProtobufCIntRange cmsg_client_friend_user_status_published__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_friend_user_status_published__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientFriendUserStatusPublished",
+ "CMsgClientFriendUserStatusPublished",
+ "CMsgClientFriendUserStatusPublished",
+ "",
+ sizeof(CMsgClientFriendUserStatusPublished),
+ 3,
+ cmsg_client_friend_user_status_published__field_descriptors,
+ cmsg_client_friend_user_status_published__field_indices_by_name,
+ 1, cmsg_client_friend_user_status_published__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_service_method_legacy__field_descriptors[3] =
+{
+ {
+ "method_name",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientServiceMethodLegacy, method_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "serialized_method",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceMethodLegacy, has_serialized_method),
+ offsetof(CMsgClientServiceMethodLegacy, serialized_method),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_notification",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientServiceMethodLegacy, has_is_notification),
+ offsetof(CMsgClientServiceMethodLegacy, is_notification),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_service_method_legacy__field_indices_by_name[] = {
+ 2, /* field[2] = is_notification */
+ 0, /* field[0] = method_name */
+ 1, /* field[1] = serialized_method */
+};
+static const ProtobufCIntRange cmsg_client_service_method_legacy__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_service_method_legacy__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientServiceMethodLegacy",
+ "CMsgClientServiceMethodLegacy",
+ "CMsgClientServiceMethodLegacy",
+ "",
+ sizeof(CMsgClientServiceMethodLegacy),
+ 3,
+ cmsg_client_service_method_legacy__field_descriptors,
+ cmsg_client_service_method_legacy__field_indices_by_name,
+ 1, cmsg_client_service_method_legacy__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_service_method_legacy_response__field_descriptors[2] =
+{
+ {
+ "method_name",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientServiceMethodLegacyResponse, method_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "serialized_method_response",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceMethodLegacyResponse, has_serialized_method_response),
+ offsetof(CMsgClientServiceMethodLegacyResponse, serialized_method_response),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_service_method_legacy_response__field_indices_by_name[] = {
+ 0, /* field[0] = method_name */
+ 1, /* field[1] = serialized_method_response */
+};
+static const ProtobufCIntRange cmsg_client_service_method_legacy_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_service_method_legacy_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientServiceMethodLegacyResponse",
+ "CMsgClientServiceMethodLegacyResponse",
+ "CMsgClientServiceMethodLegacyResponse",
+ "",
+ sizeof(CMsgClientServiceMethodLegacyResponse),
+ 2,
+ cmsg_client_service_method_legacy_response__field_descriptors,
+ cmsg_client_service_method_legacy_response__field_indices_by_name,
+ 1, cmsg_client_service_method_legacy_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_uimode__field_descriptors[2] =
+{
+ {
+ "uimode",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUIMode, has_uimode),
+ offsetof(CMsgClientUIMode, uimode),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_mode",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUIMode, has_chat_mode),
+ offsetof(CMsgClientUIMode, chat_mode),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_uimode__field_indices_by_name[] = {
+ 1, /* field[1] = chat_mode */
+ 0, /* field[0] = uimode */
+};
+static const ProtobufCIntRange cmsg_client_uimode__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_uimode__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientUIMode",
+ "CMsgClientUIMode",
+ "CMsgClientUIMode",
+ "",
+ sizeof(CMsgClientUIMode),
+ 2,
+ cmsg_client_uimode__field_descriptors,
+ cmsg_client_uimode__field_indices_by_name,
+ 1, cmsg_client_uimode__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_vanity_urlchanged_notification__field_descriptors[1] =
+{
+ {
+ "vanity_url",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientVanityURLChangedNotification, vanity_url),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_vanity_urlchanged_notification__field_indices_by_name[] = {
+ 0, /* field[0] = vanity_url */
+};
+static const ProtobufCIntRange cmsg_client_vanity_urlchanged_notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_vanity_urlchanged_notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientVanityURLChangedNotification",
+ "CMsgClientVanityURLChangedNotification",
+ "CMsgClientVanityURLChangedNotification",
+ "",
+ sizeof(CMsgClientVanityURLChangedNotification),
+ 1,
+ cmsg_client_vanity_urlchanged_notification__field_descriptors,
+ cmsg_client_vanity_urlchanged_notification__field_indices_by_name,
+ 1, cmsg_client_vanity_urlchanged_notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_authorize_local_device_request__field_descriptors[3] =
+{
+ {
+ "device_description",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientAuthorizeLocalDeviceRequest, device_description),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "owner_account_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAuthorizeLocalDeviceRequest, has_owner_account_id),
+ offsetof(CMsgClientAuthorizeLocalDeviceRequest, owner_account_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "local_device_token",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientAuthorizeLocalDeviceRequest, has_local_device_token),
+ offsetof(CMsgClientAuthorizeLocalDeviceRequest, local_device_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_authorize_local_device_request__field_indices_by_name[] = {
+ 0, /* field[0] = device_description */
+ 2, /* field[2] = local_device_token */
+ 1, /* field[1] = owner_account_id */
+};
+static const ProtobufCIntRange cmsg_client_authorize_local_device_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_authorize_local_device_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAuthorizeLocalDeviceRequest",
+ "CMsgClientAuthorizeLocalDeviceRequest",
+ "CMsgClientAuthorizeLocalDeviceRequest",
+ "",
+ sizeof(CMsgClientAuthorizeLocalDeviceRequest),
+ 3,
+ cmsg_client_authorize_local_device_request__field_descriptors,
+ cmsg_client_authorize_local_device_request__field_indices_by_name,
+ 1, cmsg_client_authorize_local_device_request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_authorize_local_device__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_authorize_local_device__field_descriptors[3] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientAuthorizeLocalDevice, has_eresult),
+ offsetof(CMsgClientAuthorizeLocalDevice, eresult),
+ NULL,
+ &cmsg_client_authorize_local_device__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "owner_account_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAuthorizeLocalDevice, has_owner_account_id),
+ offsetof(CMsgClientAuthorizeLocalDevice, owner_account_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "authed_device_token",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientAuthorizeLocalDevice, has_authed_device_token),
+ offsetof(CMsgClientAuthorizeLocalDevice, authed_device_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_authorize_local_device__field_indices_by_name[] = {
+ 2, /* field[2] = authed_device_token */
+ 0, /* field[0] = eresult */
+ 1, /* field[1] = owner_account_id */
+};
+static const ProtobufCIntRange cmsg_client_authorize_local_device__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_authorize_local_device__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAuthorizeLocalDevice",
+ "CMsgClientAuthorizeLocalDevice",
+ "CMsgClientAuthorizeLocalDevice",
+ "",
+ sizeof(CMsgClientAuthorizeLocalDevice),
+ 3,
+ cmsg_client_authorize_local_device__field_descriptors,
+ cmsg_client_authorize_local_device__field_indices_by_name,
+ 1, cmsg_client_authorize_local_device__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_authorize_local_device_notification__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_authorize_local_device_notification__field_descriptors[3] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientAuthorizeLocalDeviceNotification, has_eresult),
+ offsetof(CMsgClientAuthorizeLocalDeviceNotification, eresult),
+ NULL,
+ &cmsg_client_authorize_local_device_notification__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "owner_account_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAuthorizeLocalDeviceNotification, has_owner_account_id),
+ offsetof(CMsgClientAuthorizeLocalDeviceNotification, owner_account_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "local_device_token",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientAuthorizeLocalDeviceNotification, has_local_device_token),
+ offsetof(CMsgClientAuthorizeLocalDeviceNotification, local_device_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_authorize_local_device_notification__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 2, /* field[2] = local_device_token */
+ 1, /* field[1] = owner_account_id */
+};
+static const ProtobufCIntRange cmsg_client_authorize_local_device_notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_authorize_local_device_notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAuthorizeLocalDeviceNotification",
+ "CMsgClientAuthorizeLocalDeviceNotification",
+ "CMsgClientAuthorizeLocalDeviceNotification",
+ "",
+ sizeof(CMsgClientAuthorizeLocalDeviceNotification),
+ 3,
+ cmsg_client_authorize_local_device_notification__field_descriptors,
+ cmsg_client_authorize_local_device_notification__field_indices_by_name,
+ 1, cmsg_client_authorize_local_device_notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_deauthorize_device_request__field_descriptors[2] =
+{
+ {
+ "deauthorization_account_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientDeauthorizeDeviceRequest, has_deauthorization_account_id),
+ offsetof(CMsgClientDeauthorizeDeviceRequest, deauthorization_account_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "deauthorization_device_token",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientDeauthorizeDeviceRequest, has_deauthorization_device_token),
+ offsetof(CMsgClientDeauthorizeDeviceRequest, deauthorization_device_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_deauthorize_device_request__field_indices_by_name[] = {
+ 0, /* field[0] = deauthorization_account_id */
+ 1, /* field[1] = deauthorization_device_token */
+};
+static const ProtobufCIntRange cmsg_client_deauthorize_device_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_deauthorize_device_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientDeauthorizeDeviceRequest",
+ "CMsgClientDeauthorizeDeviceRequest",
+ "CMsgClientDeauthorizeDeviceRequest",
+ "",
+ sizeof(CMsgClientDeauthorizeDeviceRequest),
+ 2,
+ cmsg_client_deauthorize_device_request__field_descriptors,
+ cmsg_client_deauthorize_device_request__field_indices_by_name,
+ 1, cmsg_client_deauthorize_device_request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_deauthorize_device__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_deauthorize_device__field_descriptors[2] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientDeauthorizeDevice, has_eresult),
+ offsetof(CMsgClientDeauthorizeDevice, eresult),
+ NULL,
+ &cmsg_client_deauthorize_device__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "deauthorization_account_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientDeauthorizeDevice, has_deauthorization_account_id),
+ offsetof(CMsgClientDeauthorizeDevice, deauthorization_account_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_deauthorize_device__field_indices_by_name[] = {
+ 1, /* field[1] = deauthorization_account_id */
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_client_deauthorize_device__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_deauthorize_device__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientDeauthorizeDevice",
+ "CMsgClientDeauthorizeDevice",
+ "CMsgClientDeauthorizeDevice",
+ "",
+ sizeof(CMsgClientDeauthorizeDevice),
+ 2,
+ cmsg_client_deauthorize_device__field_descriptors,
+ cmsg_client_deauthorize_device__field_indices_by_name,
+ 1, cmsg_client_deauthorize_device__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_use_local_device_authorizations__device_token__field_descriptors[2] =
+{
+ {
+ "owner_account_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUseLocalDeviceAuthorizations__DeviceToken, has_owner_account_id),
+ offsetof(CMsgClientUseLocalDeviceAuthorizations__DeviceToken, owner_account_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "token_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientUseLocalDeviceAuthorizations__DeviceToken, has_token_id),
+ offsetof(CMsgClientUseLocalDeviceAuthorizations__DeviceToken, token_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_use_local_device_authorizations__device_token__field_indices_by_name[] = {
+ 0, /* field[0] = owner_account_id */
+ 1, /* field[1] = token_id */
+};
+static const ProtobufCIntRange cmsg_client_use_local_device_authorizations__device_token__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_use_local_device_authorizations__device_token__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientUseLocalDeviceAuthorizations.DeviceToken",
+ "DeviceToken",
+ "CMsgClientUseLocalDeviceAuthorizations__DeviceToken",
+ "",
+ sizeof(CMsgClientUseLocalDeviceAuthorizations__DeviceToken),
+ 2,
+ cmsg_client_use_local_device_authorizations__device_token__field_descriptors,
+ cmsg_client_use_local_device_authorizations__device_token__field_indices_by_name,
+ 1, cmsg_client_use_local_device_authorizations__device_token__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_use_local_device_authorizations__field_descriptors[2] =
+{
+ {
+ "authorization_account_id",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientUseLocalDeviceAuthorizations, n_authorization_account_id),
+ offsetof(CMsgClientUseLocalDeviceAuthorizations, authorization_account_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "device_tokens",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientUseLocalDeviceAuthorizations, n_device_tokens),
+ offsetof(CMsgClientUseLocalDeviceAuthorizations, device_tokens),
+ &cmsg_client_use_local_device_authorizations__device_token__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_use_local_device_authorizations__field_indices_by_name[] = {
+ 0, /* field[0] = authorization_account_id */
+ 1, /* field[1] = device_tokens */
+};
+static const ProtobufCIntRange cmsg_client_use_local_device_authorizations__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_use_local_device_authorizations__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientUseLocalDeviceAuthorizations",
+ "CMsgClientUseLocalDeviceAuthorizations",
+ "CMsgClientUseLocalDeviceAuthorizations",
+ "",
+ sizeof(CMsgClientUseLocalDeviceAuthorizations),
+ 2,
+ cmsg_client_use_local_device_authorizations__field_descriptors,
+ cmsg_client_use_local_device_authorizations__field_indices_by_name,
+ 1, cmsg_client_use_local_device_authorizations__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cmsg_client_get_authorized_devices__field_descriptors NULL
+#define cmsg_client_get_authorized_devices__field_indices_by_name NULL
+#define cmsg_client_get_authorized_devices__number_ranges NULL
+const ProtobufCMessageDescriptor cmsg_client_get_authorized_devices__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGetAuthorizedDevices",
+ "CMsgClientGetAuthorizedDevices",
+ "CMsgClientGetAuthorizedDevices",
+ "",
+ sizeof(CMsgClientGetAuthorizedDevices),
+ 0,
+ cmsg_client_get_authorized_devices__field_descriptors,
+ cmsg_client_get_authorized_devices__field_indices_by_name,
+ 0, cmsg_client_get_authorized_devices__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_get_authorized_devices_response__authorized_device__field_descriptors[6] =
+{
+ {
+ "auth_device_token",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice, has_auth_device_token),
+ offsetof(CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice, auth_device_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "device_name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice, device_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_access_time",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice, has_last_access_time),
+ offsetof(CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice, last_access_time),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "borrower_id",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice, has_borrower_id),
+ offsetof(CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice, borrower_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_pending",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice, has_is_pending),
+ offsetof(CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice, is_pending),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_played",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice, has_app_played),
+ offsetof(CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice, app_played),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_get_authorized_devices_response__authorized_device__field_indices_by_name[] = {
+ 5, /* field[5] = app_played */
+ 0, /* field[0] = auth_device_token */
+ 3, /* field[3] = borrower_id */
+ 1, /* field[1] = device_name */
+ 4, /* field[4] = is_pending */
+ 2, /* field[2] = last_access_time */
+};
+static const ProtobufCIntRange cmsg_client_get_authorized_devices_response__authorized_device__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor cmsg_client_get_authorized_devices_response__authorized_device__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGetAuthorizedDevicesResponse.AuthorizedDevice",
+ "AuthorizedDevice",
+ "CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice",
+ "",
+ sizeof(CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice),
+ 6,
+ cmsg_client_get_authorized_devices_response__authorized_device__field_descriptors,
+ cmsg_client_get_authorized_devices_response__authorized_device__field_indices_by_name,
+ 1, cmsg_client_get_authorized_devices_response__authorized_device__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_get_authorized_devices_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_get_authorized_devices_response__field_descriptors[2] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientGetAuthorizedDevicesResponse, has_eresult),
+ offsetof(CMsgClientGetAuthorizedDevicesResponse, eresult),
+ NULL,
+ &cmsg_client_get_authorized_devices_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "authorized_device",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientGetAuthorizedDevicesResponse, n_authorized_device),
+ offsetof(CMsgClientGetAuthorizedDevicesResponse, authorized_device),
+ &cmsg_client_get_authorized_devices_response__authorized_device__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_get_authorized_devices_response__field_indices_by_name[] = {
+ 1, /* field[1] = authorized_device */
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_client_get_authorized_devices_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_get_authorized_devices_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGetAuthorizedDevicesResponse",
+ "CMsgClientGetAuthorizedDevicesResponse",
+ "CMsgClientGetAuthorizedDevicesResponse",
+ "",
+ sizeof(CMsgClientGetAuthorizedDevicesResponse),
+ 2,
+ cmsg_client_get_authorized_devices_response__field_descriptors,
+ cmsg_client_get_authorized_devices_response__field_indices_by_name,
+ 1, cmsg_client_get_authorized_devices_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_shared_library_lock_status__locked_library__field_descriptors[2] =
+{
+ {
+ "owner_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientSharedLibraryLockStatus__LockedLibrary, has_owner_id),
+ offsetof(CMsgClientSharedLibraryLockStatus__LockedLibrary, owner_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "locked_by",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientSharedLibraryLockStatus__LockedLibrary, has_locked_by),
+ offsetof(CMsgClientSharedLibraryLockStatus__LockedLibrary, locked_by),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_shared_library_lock_status__locked_library__field_indices_by_name[] = {
+ 1, /* field[1] = locked_by */
+ 0, /* field[0] = owner_id */
+};
+static const ProtobufCIntRange cmsg_client_shared_library_lock_status__locked_library__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_shared_library_lock_status__locked_library__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientSharedLibraryLockStatus.LockedLibrary",
+ "LockedLibrary",
+ "CMsgClientSharedLibraryLockStatus__LockedLibrary",
+ "",
+ sizeof(CMsgClientSharedLibraryLockStatus__LockedLibrary),
+ 2,
+ cmsg_client_shared_library_lock_status__locked_library__field_descriptors,
+ cmsg_client_shared_library_lock_status__locked_library__field_indices_by_name,
+ 1, cmsg_client_shared_library_lock_status__locked_library__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_shared_library_lock_status__field_descriptors[2] =
+{
+ {
+ "locked_library",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientSharedLibraryLockStatus, n_locked_library),
+ offsetof(CMsgClientSharedLibraryLockStatus, locked_library),
+ &cmsg_client_shared_library_lock_status__locked_library__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "own_library_locked_by",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientSharedLibraryLockStatus, has_own_library_locked_by),
+ offsetof(CMsgClientSharedLibraryLockStatus, own_library_locked_by),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_shared_library_lock_status__field_indices_by_name[] = {
+ 0, /* field[0] = locked_library */
+ 1, /* field[1] = own_library_locked_by */
+};
+static const ProtobufCIntRange cmsg_client_shared_library_lock_status__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_shared_library_lock_status__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientSharedLibraryLockStatus",
+ "CMsgClientSharedLibraryLockStatus",
+ "CMsgClientSharedLibraryLockStatus",
+ "",
+ sizeof(CMsgClientSharedLibraryLockStatus),
+ 2,
+ cmsg_client_shared_library_lock_status__field_descriptors,
+ cmsg_client_shared_library_lock_status__field_indices_by_name,
+ 1, cmsg_client_shared_library_lock_status__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_shared_library_stop_playing__stop_app__field_descriptors[2] =
+{
+ {
+ "app_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientSharedLibraryStopPlaying__StopApp, has_app_id),
+ offsetof(CMsgClientSharedLibraryStopPlaying__StopApp, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "owner_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientSharedLibraryStopPlaying__StopApp, has_owner_id),
+ offsetof(CMsgClientSharedLibraryStopPlaying__StopApp, owner_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_shared_library_stop_playing__stop_app__field_indices_by_name[] = {
+ 0, /* field[0] = app_id */
+ 1, /* field[1] = owner_id */
+};
+static const ProtobufCIntRange cmsg_client_shared_library_stop_playing__stop_app__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_shared_library_stop_playing__stop_app__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientSharedLibraryStopPlaying.StopApp",
+ "StopApp",
+ "CMsgClientSharedLibraryStopPlaying__StopApp",
+ "",
+ sizeof(CMsgClientSharedLibraryStopPlaying__StopApp),
+ 2,
+ cmsg_client_shared_library_stop_playing__stop_app__field_descriptors,
+ cmsg_client_shared_library_stop_playing__stop_app__field_indices_by_name,
+ 1, cmsg_client_shared_library_stop_playing__stop_app__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_shared_library_stop_playing__field_descriptors[2] =
+{
+ {
+ "seconds_left",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientSharedLibraryStopPlaying, has_seconds_left),
+ offsetof(CMsgClientSharedLibraryStopPlaying, seconds_left),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "stop_apps",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientSharedLibraryStopPlaying, n_stop_apps),
+ offsetof(CMsgClientSharedLibraryStopPlaying, stop_apps),
+ &cmsg_client_shared_library_stop_playing__stop_app__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_shared_library_stop_playing__field_indices_by_name[] = {
+ 0, /* field[0] = seconds_left */
+ 1, /* field[1] = stop_apps */
+};
+static const ProtobufCIntRange cmsg_client_shared_library_stop_playing__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_shared_library_stop_playing__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientSharedLibraryStopPlaying",
+ "CMsgClientSharedLibraryStopPlaying",
+ "CMsgClientSharedLibraryStopPlaying",
+ "",
+ sizeof(CMsgClientSharedLibraryStopPlaying),
+ 2,
+ cmsg_client_shared_library_stop_playing__field_descriptors,
+ cmsg_client_shared_library_stop_playing__field_indices_by_name,
+ 1, cmsg_client_shared_library_stop_playing__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_service_call__field_descriptors[11] =
+{
+ {
+ "sysid_routing",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceCall, has_sysid_routing),
+ offsetof(CMsgClientServiceCall, sysid_routing),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "call_handle",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCall, has_call_handle),
+ offsetof(CMsgClientServiceCall, call_handle),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "module_crc",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCall, has_module_crc),
+ offsetof(CMsgClientServiceCall, module_crc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "module_hash",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceCall, has_module_hash),
+ offsetof(CMsgClientServiceCall, module_hash),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "function_id",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCall, has_function_id),
+ offsetof(CMsgClientServiceCall, function_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "cub_output_max",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCall, has_cub_output_max),
+ offsetof(CMsgClientServiceCall, cub_output_max),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "flags",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCall, has_flags),
+ offsetof(CMsgClientServiceCall, flags),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "callparameter",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceCall, has_callparameter),
+ offsetof(CMsgClientServiceCall, callparameter),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ping_only",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientServiceCall, has_ping_only),
+ offsetof(CMsgClientServiceCall, ping_only),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "max_outstanding_calls",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCall, has_max_outstanding_calls),
+ offsetof(CMsgClientServiceCall, max_outstanding_calls),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_id",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCall, has_app_id),
+ offsetof(CMsgClientServiceCall, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_service_call__field_indices_by_name[] = {
+ 10, /* field[10] = app_id */
+ 1, /* field[1] = call_handle */
+ 7, /* field[7] = callparameter */
+ 5, /* field[5] = cub_output_max */
+ 6, /* field[6] = flags */
+ 4, /* field[4] = function_id */
+ 9, /* field[9] = max_outstanding_calls */
+ 2, /* field[2] = module_crc */
+ 3, /* field[3] = module_hash */
+ 8, /* field[8] = ping_only */
+ 0, /* field[0] = sysid_routing */
+};
+static const ProtobufCIntRange cmsg_client_service_call__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 11 }
+};
+const ProtobufCMessageDescriptor cmsg_client_service_call__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientServiceCall",
+ "CMsgClientServiceCall",
+ "CMsgClientServiceCall",
+ "",
+ sizeof(CMsgClientServiceCall),
+ 11,
+ cmsg_client_service_call__field_descriptors,
+ cmsg_client_service_call__field_indices_by_name,
+ 1, cmsg_client_service_call__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_service_module__field_descriptors[3] =
+{
+ {
+ "module_crc",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceModule, has_module_crc),
+ offsetof(CMsgClientServiceModule, module_crc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "module_hash",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceModule, has_module_hash),
+ offsetof(CMsgClientServiceModule, module_hash),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "module_content",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceModule, has_module_content),
+ offsetof(CMsgClientServiceModule, module_content),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_service_module__field_indices_by_name[] = {
+ 2, /* field[2] = module_content */
+ 0, /* field[0] = module_crc */
+ 1, /* field[1] = module_hash */
+};
+static const ProtobufCIntRange cmsg_client_service_module__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_service_module__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientServiceModule",
+ "CMsgClientServiceModule",
+ "CMsgClientServiceModule",
+ "",
+ sizeof(CMsgClientServiceModule),
+ 3,
+ cmsg_client_service_module__field_descriptors,
+ cmsg_client_service_module__field_indices_by_name,
+ 1, cmsg_client_service_module__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_service_call_response__field_descriptors[21] =
+{
+ {
+ "sysid_routing",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceCallResponse, has_sysid_routing),
+ offsetof(CMsgClientServiceCallResponse, sysid_routing),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "call_handle",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCallResponse, has_call_handle),
+ offsetof(CMsgClientServiceCallResponse, call_handle),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "module_crc",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCallResponse, has_module_crc),
+ offsetof(CMsgClientServiceCallResponse, module_crc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "module_hash",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceCallResponse, has_module_hash),
+ offsetof(CMsgClientServiceCallResponse, module_hash),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ecallresult",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCallResponse, has_ecallresult),
+ offsetof(CMsgClientServiceCallResponse, ecallresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "result_content",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceCallResponse, has_result_content),
+ offsetof(CMsgClientServiceCallResponse, result_content),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "os_version_info",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceCallResponse, has_os_version_info),
+ offsetof(CMsgClientServiceCallResponse, os_version_info),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "system_info",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceCallResponse, has_system_info),
+ offsetof(CMsgClientServiceCallResponse, system_info),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "load_address",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientServiceCallResponse, has_load_address),
+ offsetof(CMsgClientServiceCallResponse, load_address),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "exception_record",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceCallResponse, has_exception_record),
+ offsetof(CMsgClientServiceCallResponse, exception_record),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "portable_os_version_info",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceCallResponse, has_portable_os_version_info),
+ offsetof(CMsgClientServiceCallResponse, portable_os_version_info),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "portable_system_info",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceCallResponse, has_portable_system_info),
+ offsetof(CMsgClientServiceCallResponse, portable_system_info),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "was_converted",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientServiceCallResponse, has_was_converted),
+ offsetof(CMsgClientServiceCallResponse, was_converted),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "internal_result",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCallResponse, has_internal_result),
+ offsetof(CMsgClientServiceCallResponse, internal_result),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "current_count",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCallResponse, has_current_count),
+ offsetof(CMsgClientServiceCallResponse, current_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_call_handle",
+ 16,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCallResponse, has_last_call_handle),
+ offsetof(CMsgClientServiceCallResponse, last_call_handle),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_call_module_crc",
+ 17,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCallResponse, has_last_call_module_crc),
+ offsetof(CMsgClientServiceCallResponse, last_call_module_crc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_call_sysid_routing",
+ 18,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientServiceCallResponse, has_last_call_sysid_routing),
+ offsetof(CMsgClientServiceCallResponse, last_call_sysid_routing),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_ecallresult",
+ 19,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCallResponse, has_last_ecallresult),
+ offsetof(CMsgClientServiceCallResponse, last_ecallresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_callissue_delta",
+ 20,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCallResponse, has_last_callissue_delta),
+ offsetof(CMsgClientServiceCallResponse, last_callissue_delta),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_callcomplete_delta",
+ 21,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientServiceCallResponse, has_last_callcomplete_delta),
+ offsetof(CMsgClientServiceCallResponse, last_callcomplete_delta),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_service_call_response__field_indices_by_name[] = {
+ 1, /* field[1] = call_handle */
+ 14, /* field[14] = current_count */
+ 4, /* field[4] = ecallresult */
+ 9, /* field[9] = exception_record */
+ 13, /* field[13] = internal_result */
+ 15, /* field[15] = last_call_handle */
+ 16, /* field[16] = last_call_module_crc */
+ 17, /* field[17] = last_call_sysid_routing */
+ 20, /* field[20] = last_callcomplete_delta */
+ 19, /* field[19] = last_callissue_delta */
+ 18, /* field[18] = last_ecallresult */
+ 8, /* field[8] = load_address */
+ 2, /* field[2] = module_crc */
+ 3, /* field[3] = module_hash */
+ 6, /* field[6] = os_version_info */
+ 10, /* field[10] = portable_os_version_info */
+ 11, /* field[11] = portable_system_info */
+ 5, /* field[5] = result_content */
+ 0, /* field[0] = sysid_routing */
+ 7, /* field[7] = system_info */
+ 12, /* field[12] = was_converted */
+};
+static const ProtobufCIntRange cmsg_client_service_call_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 21 }
+};
+const ProtobufCMessageDescriptor cmsg_client_service_call_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientServiceCallResponse",
+ "CMsgClientServiceCallResponse",
+ "CMsgClientServiceCallResponse",
+ "",
+ sizeof(CMsgClientServiceCallResponse),
+ 21,
+ cmsg_client_service_call_response__field_descriptors,
+ cmsg_client_service_call_response__field_indices_by_name,
+ 1, cmsg_client_service_call_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_amunlock_h264__field_descriptors[3] =
+{
+ {
+ "appid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgAMUnlockH264, has_appid),
+ offsetof(CMsgAMUnlockH264, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "platform",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgAMUnlockH264, has_platform),
+ offsetof(CMsgAMUnlockH264, platform),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reason",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgAMUnlockH264, has_reason),
+ offsetof(CMsgAMUnlockH264, reason),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_amunlock_h264__field_indices_by_name[] = {
+ 0, /* field[0] = appid */
+ 1, /* field[1] = platform */
+ 2, /* field[2] = reason */
+};
+static const ProtobufCIntRange cmsg_amunlock_h264__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_amunlock_h264__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgAMUnlockH264",
+ "CMsgAMUnlockH264",
+ "CMsgAMUnlockH264",
+ "",
+ sizeof(CMsgAMUnlockH264),
+ 3,
+ cmsg_amunlock_h264__field_descriptors,
+ cmsg_amunlock_h264__field_indices_by_name,
+ 1, cmsg_amunlock_h264__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_amunlock_h264_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_amunlock_h264_response__field_descriptors[2] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgAMUnlockH264Response, has_eresult),
+ offsetof(CMsgAMUnlockH264Response, eresult),
+ NULL,
+ &cmsg_amunlock_h264_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "encryption_key",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgAMUnlockH264Response, has_encryption_key),
+ offsetof(CMsgAMUnlockH264Response, encryption_key),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_amunlock_h264_response__field_indices_by_name[] = {
+ 1, /* field[1] = encryption_key */
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_amunlock_h264_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_amunlock_h264_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgAMUnlockH264Response",
+ "CMsgAMUnlockH264Response",
+ "CMsgAMUnlockH264Response",
+ "",
+ sizeof(CMsgAMUnlockH264Response),
+ 2,
+ cmsg_amunlock_h264_response__field_descriptors,
+ cmsg_amunlock_h264_response__field_indices_by_name,
+ 1, cmsg_amunlock_h264_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_playing_session_state__field_descriptors[2] =
+{
+ {
+ "playing_blocked",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPlayingSessionState, has_playing_blocked),
+ offsetof(CMsgClientPlayingSessionState, playing_blocked),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "playing_app",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPlayingSessionState, has_playing_app),
+ offsetof(CMsgClientPlayingSessionState, playing_app),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_playing_session_state__field_indices_by_name[] = {
+ 1, /* field[1] = playing_app */
+ 0, /* field[0] = playing_blocked */
+};
+static const ProtobufCIntRange cmsg_client_playing_session_state__number_ranges[1 + 1] =
+{
+ { 2, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_playing_session_state__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPlayingSessionState",
+ "CMsgClientPlayingSessionState",
+ "CMsgClientPlayingSessionState",
+ "",
+ sizeof(CMsgClientPlayingSessionState),
+ 2,
+ cmsg_client_playing_session_state__field_descriptors,
+ cmsg_client_playing_session_state__field_indices_by_name,
+ 1, cmsg_client_playing_session_state__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_kick_playing_session__field_descriptors[1] =
+{
+ {
+ "only_stop_game",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientKickPlayingSession, has_only_stop_game),
+ offsetof(CMsgClientKickPlayingSession, only_stop_game),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_kick_playing_session__field_indices_by_name[] = {
+ 0, /* field[0] = only_stop_game */
+};
+static const ProtobufCIntRange cmsg_client_kick_playing_session__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_kick_playing_session__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientKickPlayingSession",
+ "CMsgClientKickPlayingSession",
+ "CMsgClientKickPlayingSession",
+ "",
+ sizeof(CMsgClientKickPlayingSession),
+ 1,
+ cmsg_client_kick_playing_session__field_descriptors,
+ cmsg_client_kick_playing_session__field_indices_by_name,
+ 1, cmsg_client_kick_playing_session__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_voice_call_pre_authorize__field_descriptors[4] =
+{
+ {
+ "caller_steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientVoiceCallPreAuthorize, has_caller_steamid),
+ offsetof(CMsgClientVoiceCallPreAuthorize, caller_steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "receiver_steamid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientVoiceCallPreAuthorize, has_receiver_steamid),
+ offsetof(CMsgClientVoiceCallPreAuthorize, receiver_steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "caller_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientVoiceCallPreAuthorize, has_caller_id),
+ offsetof(CMsgClientVoiceCallPreAuthorize, caller_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "hangup",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientVoiceCallPreAuthorize, has_hangup),
+ offsetof(CMsgClientVoiceCallPreAuthorize, hangup),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_voice_call_pre_authorize__field_indices_by_name[] = {
+ 2, /* field[2] = caller_id */
+ 0, /* field[0] = caller_steamid */
+ 3, /* field[3] = hangup */
+ 1, /* field[1] = receiver_steamid */
+};
+static const ProtobufCIntRange cmsg_client_voice_call_pre_authorize__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cmsg_client_voice_call_pre_authorize__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientVoiceCallPreAuthorize",
+ "CMsgClientVoiceCallPreAuthorize",
+ "CMsgClientVoiceCallPreAuthorize",
+ "",
+ sizeof(CMsgClientVoiceCallPreAuthorize),
+ 4,
+ cmsg_client_voice_call_pre_authorize__field_descriptors,
+ cmsg_client_voice_call_pre_authorize__field_indices_by_name,
+ 1, cmsg_client_voice_call_pre_authorize__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_voice_call_pre_authorize_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_voice_call_pre_authorize_response__field_descriptors[4] =
+{
+ {
+ "caller_steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientVoiceCallPreAuthorizeResponse, has_caller_steamid),
+ offsetof(CMsgClientVoiceCallPreAuthorizeResponse, caller_steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "receiver_steamid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientVoiceCallPreAuthorizeResponse, has_receiver_steamid),
+ offsetof(CMsgClientVoiceCallPreAuthorizeResponse, receiver_steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "eresult",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientVoiceCallPreAuthorizeResponse, has_eresult),
+ offsetof(CMsgClientVoiceCallPreAuthorizeResponse, eresult),
+ NULL,
+ &cmsg_client_voice_call_pre_authorize_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "caller_id",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientVoiceCallPreAuthorizeResponse, has_caller_id),
+ offsetof(CMsgClientVoiceCallPreAuthorizeResponse, caller_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_voice_call_pre_authorize_response__field_indices_by_name[] = {
+ 3, /* field[3] = caller_id */
+ 0, /* field[0] = caller_steamid */
+ 2, /* field[2] = eresult */
+ 1, /* field[1] = receiver_steamid */
+};
+static const ProtobufCIntRange cmsg_client_voice_call_pre_authorize_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cmsg_client_voice_call_pre_authorize_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientVoiceCallPreAuthorizeResponse",
+ "CMsgClientVoiceCallPreAuthorizeResponse",
+ "CMsgClientVoiceCallPreAuthorizeResponse",
+ "",
+ sizeof(CMsgClientVoiceCallPreAuthorizeResponse),
+ 4,
+ cmsg_client_voice_call_pre_authorize_response__field_descriptors,
+ cmsg_client_voice_call_pre_authorize_response__field_indices_by_name,
+ 1, cmsg_client_voice_call_pre_authorize_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_badge_crafted_notification__field_descriptors[2] =
+{
+ {
+ "appid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgBadgeCraftedNotification, has_appid),
+ offsetof(CMsgBadgeCraftedNotification, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "badge_level",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgBadgeCraftedNotification, has_badge_level),
+ offsetof(CMsgBadgeCraftedNotification, badge_level),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_badge_crafted_notification__field_indices_by_name[] = {
+ 0, /* field[0] = appid */
+ 1, /* field[1] = badge_level */
+};
+static const ProtobufCIntRange cmsg_badge_crafted_notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_badge_crafted_notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgBadgeCraftedNotification",
+ "CMsgBadgeCraftedNotification",
+ "CMsgBadgeCraftedNotification",
+ "",
+ sizeof(CMsgBadgeCraftedNotification),
+ 2,
+ cmsg_badge_crafted_notification__field_descriptors,
+ cmsg_badge_crafted_notification__field_indices_by_name,
+ 1, cmsg_badge_crafted_notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_start_peer_content_server__field_descriptors[4] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientStartPeerContentServer, has_steamid),
+ offsetof(CMsgClientStartPeerContentServer, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "client_remote_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientStartPeerContentServer, has_client_remote_id),
+ offsetof(CMsgClientStartPeerContentServer, client_remote_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientStartPeerContentServer, has_app_id),
+ offsetof(CMsgClientStartPeerContentServer, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "current_build_id",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientStartPeerContentServer, has_current_build_id),
+ offsetof(CMsgClientStartPeerContentServer, current_build_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_start_peer_content_server__field_indices_by_name[] = {
+ 2, /* field[2] = app_id */
+ 1, /* field[1] = client_remote_id */
+ 3, /* field[3] = current_build_id */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cmsg_client_start_peer_content_server__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cmsg_client_start_peer_content_server__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientStartPeerContentServer",
+ "CMsgClientStartPeerContentServer",
+ "CMsgClientStartPeerContentServer",
+ "",
+ sizeof(CMsgClientStartPeerContentServer),
+ 4,
+ cmsg_client_start_peer_content_server__field_descriptors,
+ cmsg_client_start_peer_content_server__field_indices_by_name,
+ 1, cmsg_client_start_peer_content_server__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_start_peer_content_server_response__field_descriptors[2] =
+{
+ {
+ "result",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientStartPeerContentServerResponse, has_result),
+ offsetof(CMsgClientStartPeerContentServerResponse, result),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "server_port",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientStartPeerContentServerResponse, has_server_port),
+ offsetof(CMsgClientStartPeerContentServerResponse, server_port),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_start_peer_content_server_response__field_indices_by_name[] = {
+ 0, /* field[0] = result */
+ 1, /* field[1] = server_port */
+};
+static const ProtobufCIntRange cmsg_client_start_peer_content_server_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_start_peer_content_server_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientStartPeerContentServerResponse",
+ "CMsgClientStartPeerContentServerResponse",
+ "CMsgClientStartPeerContentServerResponse",
+ "",
+ sizeof(CMsgClientStartPeerContentServerResponse),
+ 2,
+ cmsg_client_start_peer_content_server_response__field_descriptors,
+ cmsg_client_start_peer_content_server_response__field_indices_by_name,
+ 1, cmsg_client_start_peer_content_server_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_get_peer_content_info__field_descriptors[2] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientGetPeerContentInfo, has_steamid),
+ offsetof(CMsgClientGetPeerContentInfo, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "client_remote_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientGetPeerContentInfo, has_client_remote_id),
+ offsetof(CMsgClientGetPeerContentInfo, client_remote_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_get_peer_content_info__field_indices_by_name[] = {
+ 1, /* field[1] = client_remote_id */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cmsg_client_get_peer_content_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_get_peer_content_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGetPeerContentInfo",
+ "CMsgClientGetPeerContentInfo",
+ "CMsgClientGetPeerContentInfo",
+ "",
+ sizeof(CMsgClientGetPeerContentInfo),
+ 2,
+ cmsg_client_get_peer_content_info__field_descriptors,
+ cmsg_client_get_peer_content_info__field_indices_by_name,
+ 1, cmsg_client_get_peer_content_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_get_peer_content_info_response__field_descriptors[2] =
+{
+ {
+ "result",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetPeerContentInfoResponse, has_result),
+ offsetof(CMsgClientGetPeerContentInfoResponse, result),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "apps",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientGetPeerContentInfoResponse, n_apps),
+ offsetof(CMsgClientGetPeerContentInfoResponse, apps),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_get_peer_content_info_response__field_indices_by_name[] = {
+ 1, /* field[1] = apps */
+ 0, /* field[0] = result */
+};
+static const ProtobufCIntRange cmsg_client_get_peer_content_info_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_get_peer_content_info_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGetPeerContentInfoResponse",
+ "CMsgClientGetPeerContentInfoResponse",
+ "CMsgClientGetPeerContentInfoResponse",
+ "",
+ sizeof(CMsgClientGetPeerContentInfoResponse),
+ 2,
+ cmsg_client_get_peer_content_info_response__field_descriptors,
+ cmsg_client_get_peer_content_info_response__field_indices_by_name,
+ 1, cmsg_client_get_peer_content_info_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/protocols/Steam/src/protobuf-c/steammessages_clientserver_2.pb-c.h b/protocols/Steam/src/protobuf-c/steammessages_clientserver_2.pb-c.h
new file mode 100644
index 0000000000..7b243720e7
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_clientserver_2.pb-c.h
@@ -0,0 +1,4100 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_clientserver_2.proto */
+
+#ifndef PROTOBUF_C_steammessages_5fclientserver_5f2_2eproto__INCLUDED
+#define PROTOBUF_C_steammessages_5fclientserver_5f2_2eproto__INCLUDED
+
+#include "protobuf-c.h"
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1000000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1004001 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "steammessages_base.pb-c.h"
+
+struct CMsgClientUpdateUserGameInfo;
+struct CMsgClientRichPresenceUpload;
+struct CMsgClientRichPresenceRequest;
+struct CMsgClientRichPresenceInfo;
+struct CMsgClientRichPresenceInfo__RichPresence;
+struct CMsgClientCheckFileSignature;
+struct CMsgClientCheckFileSignatureResponse;
+struct CMsgClientReadMachineAuth;
+struct CMsgClientReadMachineAuthResponse;
+struct CMsgClientUpdateMachineAuth;
+struct CMsgClientUpdateMachineAuthResponse;
+struct CMsgClientRequestMachineAuth;
+struct CMsgClientRequestMachineAuthResponse;
+struct CMsgClientRegisterKey;
+struct CMsgClientPurchaseResponse;
+struct CMsgClientActivateOEMLicense;
+struct CMsgClientRegisterOEMMachine;
+struct CMsgClientRegisterOEMMachineResponse;
+struct CMsgClientPurchaseWithMachineID;
+struct CMsgTradingInitiateTradeRequest;
+struct CMsgTradingInitiateTradeResponse;
+struct CMsgTradingCancelTradeRequest;
+struct CMsgTradingStartSession;
+struct CMsgClientGetCDNAuthToken;
+struct CMsgClientGetDepotDecryptionKey;
+struct CMsgClientGetDepotDecryptionKeyResponse;
+struct CMsgClientCheckAppBetaPassword;
+struct CMsgClientCheckAppBetaPasswordResponse;
+struct CMsgClientCheckAppBetaPasswordResponse__BetaPassword;
+struct CMsgClientGetCDNAuthTokenResponse;
+struct CMsgDownloadRateStatistics;
+struct CMsgDownloadRateStatistics__StatsInfo;
+struct CMsgClientRequestAccountData;
+struct CMsgClientRequestAccountDataResponse;
+struct CMsgClientUGSGetGlobalStats;
+struct CMsgClientUGSGetGlobalStatsResponse;
+struct CMsgClientUGSGetGlobalStatsResponse__Day;
+struct CMsgClientUGSGetGlobalStatsResponse__Day__Stat;
+struct CMsgClientRedeemGuestPass;
+struct CMsgClientRedeemGuestPassResponse;
+struct CMsgClientGetClanActivityCounts;
+struct CMsgClientGetClanActivityCountsResponse;
+struct CMsgClientOGSReportString;
+struct CMsgClientOGSReportBug;
+struct CMsgClientSentLogs;
+struct CMsgGCClient;
+struct CMsgClientRequestFreeLicense;
+struct CMsgClientRequestFreeLicenseResponse;
+struct CMsgDRMDownloadRequestWithCrashData;
+struct CMsgDRMDownloadResponse;
+struct CMsgDRMFinalResult;
+struct CMsgClientDPCheckSpecialSurvey;
+struct CMsgClientDPCheckSpecialSurveyResponse;
+struct CMsgClientDPSendSpecialSurveyResponse;
+struct CMsgClientDPSendSpecialSurveyResponseReply;
+struct CMsgClientRequestForgottenPasswordEmail;
+struct CMsgClientRequestForgottenPasswordEmailResponse;
+struct CMsgClientItemAnnouncements;
+struct CMsgClientItemAnnouncements__UnseenItem;
+struct CMsgClientRequestItemAnnouncements;
+struct CMsgClientUserNotifications;
+struct CMsgClientUserNotifications__Notification;
+struct CMsgClientCommentNotifications;
+struct CMsgClientRequestCommentNotifications;
+struct CMsgClientOfflineMessageNotification;
+struct CMsgClientRequestOfflineMessageCount;
+struct CMsgClientChatGetFriendMessageHistory;
+struct CMsgClientChatGetFriendMessageHistoryResponse;
+struct CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage;
+struct CMsgClientChatGetFriendMessageHistoryForOfflineMessages;
+struct CMsgClientFSGetFriendsSteamLevels;
+struct CMsgClientFSGetFriendsSteamLevelsResponse;
+struct CMsgClientFSGetFriendsSteamLevelsResponse__Friend;
+struct CMsgClientEmailAddrInfo;
+struct CMsgCREItemVoteSummary;
+struct CMsgCREItemVoteSummary__PublishedFileId;
+struct CMsgCREItemVoteSummaryResponse;
+struct CMsgCREItemVoteSummaryResponse__ItemVoteSummary;
+struct CMsgCREUpdateUserPublishedItemVote;
+struct CMsgCREUpdateUserPublishedItemVoteResponse;
+struct CMsgCREGetUserPublishedItemVoteDetails;
+struct CMsgCREGetUserPublishedItemVoteDetails__PublishedFileId;
+struct CMsgCREGetUserPublishedItemVoteDetailsResponse;
+struct CMsgCREGetUserPublishedItemVoteDetailsResponse__UserItemVoteDetail;
+struct CMsgFSGetFollowerCount;
+struct CMsgFSGetFollowerCountResponse;
+struct CMsgFSGetIsFollowing;
+struct CMsgFSGetIsFollowingResponse;
+struct CMsgFSEnumerateFollowingList;
+struct CMsgFSEnumerateFollowingListResponse;
+struct CMsgDPGetNumberOfCurrentPlayers;
+struct CMsgDPGetNumberOfCurrentPlayersResponse;
+struct CMsgClientFriendUserStatusPublished;
+struct CMsgClientServiceMethodLegacy;
+struct CMsgClientServiceMethodLegacyResponse;
+struct CMsgClientUIMode;
+struct CMsgClientVanityURLChangedNotification;
+struct CMsgClientAuthorizeLocalDeviceRequest;
+struct CMsgClientAuthorizeLocalDevice;
+struct CMsgClientAuthorizeLocalDeviceNotification;
+struct CMsgClientDeauthorizeDeviceRequest;
+struct CMsgClientDeauthorizeDevice;
+struct CMsgClientUseLocalDeviceAuthorizations;
+struct CMsgClientUseLocalDeviceAuthorizations__DeviceToken;
+struct CMsgClientGetAuthorizedDevices;
+struct CMsgClientGetAuthorizedDevicesResponse;
+struct CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice;
+struct CMsgClientSharedLibraryLockStatus;
+struct CMsgClientSharedLibraryLockStatus__LockedLibrary;
+struct CMsgClientSharedLibraryStopPlaying;
+struct CMsgClientSharedLibraryStopPlaying__StopApp;
+struct CMsgClientServiceCall;
+struct CMsgClientServiceModule;
+struct CMsgClientServiceCallResponse;
+struct CMsgAMUnlockH264;
+struct CMsgAMUnlockH264Response;
+struct CMsgClientPlayingSessionState;
+struct CMsgClientKickPlayingSession;
+struct CMsgClientVoiceCallPreAuthorize;
+struct CMsgClientVoiceCallPreAuthorizeResponse;
+struct CMsgBadgeCraftedNotification;
+struct CMsgClientStartPeerContentServer;
+struct CMsgClientStartPeerContentServerResponse;
+struct CMsgClientGetPeerContentInfo;
+struct CMsgClientGetPeerContentInfoResponse;
+
+
+/* --- enums --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor cmsg_client_update_user_game_info__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_rich_presence_upload__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_rich_presence_request__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_rich_presence_info__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_rich_presence_info__rich_presence__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_check_file_signature__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_check_file_signature_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_read_machine_auth__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_read_machine_auth_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_update_machine_auth__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_update_machine_auth_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_request_machine_auth__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_request_machine_auth_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_register_key__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_purchase_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_activate_oemlicense__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_register_oemmachine__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_register_oemmachine_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_purchase_with_machine_id__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_trading__initiate_trade_request__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_trading__initiate_trade_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_trading__cancel_trade_request__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_trading__start_session__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_get_cdnauth_token__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_get_depot_decryption_key__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_get_depot_decryption_key_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_check_app_beta_password__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_check_app_beta_password_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_check_app_beta_password_response__beta_password__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_get_cdnauth_token_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_download_rate_statistics__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_download_rate_statistics__stats_info__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_request_account_data__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_request_account_data_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_ugsget_global_stats__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_ugsget_global_stats_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_ugsget_global_stats_response__day__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_ugsget_global_stats_response__day__stat__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_redeem_guest_pass__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_redeem_guest_pass_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_get_clan_activity_counts__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_get_clan_activity_counts_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_ogsreport_string__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_ogsreport_bug__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_sent_logs__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_gcclient__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_request_free_license__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_request_free_license_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_drmdownload_request_with_crash_data__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_drmdownload_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_drmfinal_result__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_dpcheck_special_survey__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_dpcheck_special_survey_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_dpsend_special_survey_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_dpsend_special_survey_response_reply__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_request_forgotten_password_email__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_request_forgotten_password_email_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_item_announcements__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_item_announcements__unseen_item__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_request_item_announcements__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_user_notifications__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_user_notifications__notification__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_comment_notifications__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_request_comment_notifications__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_offline_message_notification__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_request_offline_message_count__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_chat_get_friend_message_history__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_chat_get_friend_message_history_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_chat_get_friend_message_history_response__friend_message__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_chat_get_friend_message_history_for_offline_messages__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_fsget_friends_steam_levels__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_fsget_friends_steam_levels_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_fsget_friends_steam_levels_response__friend__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_email_addr_info__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_creitem_vote_summary__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_creitem_vote_summary__published_file_id__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_creitem_vote_summary_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_creitem_vote_summary_response__item_vote_summary__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_creupdate_user_published_item_vote__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_creupdate_user_published_item_vote_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_creget_user_published_item_vote_details__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_creget_user_published_item_vote_details__published_file_id__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_creget_user_published_item_vote_details_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_creget_user_published_item_vote_details_response__user_item_vote_detail__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_fsget_follower_count__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_fsget_follower_count_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_fsget_is_following__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_fsget_is_following_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_fsenumerate_following_list__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_fsenumerate_following_list_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_dpget_number_of_current_players__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_dpget_number_of_current_players_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_friend_user_status_published__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_service_method_legacy__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_service_method_legacy_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_uimode__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_vanity_urlchanged_notification__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_authorize_local_device_request__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_authorize_local_device__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_authorize_local_device_notification__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_deauthorize_device_request__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_deauthorize_device__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_use_local_device_authorizations__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_use_local_device_authorizations__device_token__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_get_authorized_devices__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_get_authorized_devices_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_get_authorized_devices_response__authorized_device__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_shared_library_lock_status__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_shared_library_lock_status__locked_library__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_shared_library_stop_playing__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_shared_library_stop_playing__stop_app__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_service_call__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_service_module__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_service_call_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_amunlock_h264__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_amunlock_h264_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_playing_session_state__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_kick_playing_session__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_voice_call_pre_authorize__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_voice_call_pre_authorize_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_badge_crafted_notification__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_start_peer_content_server__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_start_peer_content_server_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_get_peer_content_info__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_get_peer_content_info_response__descriptor;
+
+/* --- messages --- */
+
+extern "C" void message_init_generic(const ProtobufCMessageDescriptor * desc, ProtobufCMessage * message);
+
+struct CMsgClientUpdateUserGameInfo : public ProtobufCppMessage
+{
+ CMsgClientUpdateUserGameInfo() :
+ ProtobufCppMessage(cmsg_client_update_user_game_info__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid_idgs;
+ uint64_t steamid_idgs;
+ protobuf_c_boolean has_gameid;
+ uint64_t gameid;
+ protobuf_c_boolean has_game_ip;
+ uint32_t game_ip;
+ protobuf_c_boolean has_game_port;
+ uint32_t game_port;
+ protobuf_c_boolean has_token;
+ ProtobufCBinaryData token;
+};
+
+struct CMsgClientRichPresenceUpload : public ProtobufCppMessage
+{
+ CMsgClientRichPresenceUpload() :
+ ProtobufCppMessage(cmsg_client_rich_presence_upload__descriptor)
+ {}
+
+ protobuf_c_boolean has_rich_presence_kv;
+ ProtobufCBinaryData rich_presence_kv;
+ size_t n_steamid_broadcast;
+ uint64_t *steamid_broadcast;
+};
+
+struct CMsgClientRichPresenceRequest : public ProtobufCppMessage
+{
+ CMsgClientRichPresenceRequest() :
+ ProtobufCppMessage(cmsg_client_rich_presence_request__descriptor)
+ {}
+
+ size_t n_steamid_request;
+ uint64_t *steamid_request;
+};
+
+struct CMsgClientRichPresenceInfo__RichPresence : public ProtobufCppMessage
+{
+ CMsgClientRichPresenceInfo__RichPresence() :
+ ProtobufCppMessage(cmsg_client_rich_presence_info__rich_presence__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid_user;
+ uint64_t steamid_user;
+ protobuf_c_boolean has_rich_presence_kv;
+ ProtobufCBinaryData rich_presence_kv;
+};
+
+struct CMsgClientRichPresenceInfo : public ProtobufCppMessage
+{
+ CMsgClientRichPresenceInfo() :
+ ProtobufCppMessage(cmsg_client_rich_presence_info__descriptor)
+ {}
+
+ size_t n_rich_presence;
+ CMsgClientRichPresenceInfo__RichPresence **rich_presence;
+};
+
+struct CMsgClientCheckFileSignature : public ProtobufCppMessage
+{
+ CMsgClientCheckFileSignature() :
+ ProtobufCppMessage(cmsg_client_check_file_signature__descriptor)
+ {}
+
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+};
+
+struct CMsgClientCheckFileSignatureResponse : public ProtobufCppMessage
+{
+ CMsgClientCheckFileSignatureResponse() :
+ ProtobufCppMessage(cmsg_client_check_file_signature_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+ protobuf_c_boolean has_pid;
+ uint32_t pid;
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+ char *filename;
+ protobuf_c_boolean has_esignatureresult;
+ uint32_t esignatureresult;
+ protobuf_c_boolean has_sha_file;
+ ProtobufCBinaryData sha_file;
+ protobuf_c_boolean has_signatureheader;
+ ProtobufCBinaryData signatureheader;
+ protobuf_c_boolean has_filesize;
+ uint32_t filesize;
+ protobuf_c_boolean has_getlasterror;
+ uint32_t getlasterror;
+ protobuf_c_boolean has_evalvesignaturecheckdetail;
+ uint32_t evalvesignaturecheckdetail;
+};
+
+struct CMsgClientReadMachineAuth : public ProtobufCppMessage
+{
+ CMsgClientReadMachineAuth() :
+ ProtobufCppMessage(cmsg_client_read_machine_auth__descriptor)
+ {}
+
+ char *filename;
+ protobuf_c_boolean has_offset;
+ uint32_t offset;
+ protobuf_c_boolean has_cubtoread;
+ uint32_t cubtoread;
+};
+
+struct CMsgClientReadMachineAuthResponse : public ProtobufCppMessage
+{
+ CMsgClientReadMachineAuthResponse() :
+ ProtobufCppMessage(cmsg_client_read_machine_auth_response__descriptor)
+ {}
+
+ char *filename;
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+ protobuf_c_boolean has_filesize;
+ uint32_t filesize;
+ protobuf_c_boolean has_sha_file;
+ ProtobufCBinaryData sha_file;
+ protobuf_c_boolean has_getlasterror;
+ uint32_t getlasterror;
+ protobuf_c_boolean has_offset;
+ uint32_t offset;
+ protobuf_c_boolean has_cubread;
+ uint32_t cubread;
+ protobuf_c_boolean has_bytes_read;
+ ProtobufCBinaryData bytes_read;
+ char *filename_sentry;
+};
+
+struct CMsgClientUpdateMachineAuth : public ProtobufCppMessage
+{
+ CMsgClientUpdateMachineAuth() :
+ ProtobufCppMessage(cmsg_client_update_machine_auth__descriptor)
+ {}
+
+ char *filename;
+ protobuf_c_boolean has_offset;
+ uint32_t offset;
+ protobuf_c_boolean has_cubtowrite;
+ uint32_t cubtowrite;
+ protobuf_c_boolean has_bytes;
+ ProtobufCBinaryData bytes;
+ protobuf_c_boolean has_otp_type;
+ uint32_t otp_type;
+ char *otp_identifier;
+ protobuf_c_boolean has_otp_sharedsecret;
+ ProtobufCBinaryData otp_sharedsecret;
+ protobuf_c_boolean has_otp_timedrift;
+ uint32_t otp_timedrift;
+};
+
+struct CMsgClientUpdateMachineAuthResponse : public ProtobufCppMessage
+{
+ CMsgClientUpdateMachineAuthResponse() :
+ ProtobufCppMessage(cmsg_client_update_machine_auth_response__descriptor)
+ {}
+
+ char *filename;
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+ protobuf_c_boolean has_filesize;
+ uint32_t filesize;
+ protobuf_c_boolean has_sha_file;
+ ProtobufCBinaryData sha_file;
+ protobuf_c_boolean has_getlasterror;
+ uint32_t getlasterror;
+ protobuf_c_boolean has_offset;
+ uint32_t offset;
+ protobuf_c_boolean has_cubwrote;
+ uint32_t cubwrote;
+ protobuf_c_boolean has_otp_type;
+ int32_t otp_type;
+ protobuf_c_boolean has_otp_value;
+ uint32_t otp_value;
+ char *otp_identifier;
+};
+
+struct CMsgClientRequestMachineAuth : public ProtobufCppMessage
+{
+ CMsgClientRequestMachineAuth() :
+ ProtobufCppMessage(cmsg_client_request_machine_auth__descriptor)
+ {}
+
+ char *filename;
+ protobuf_c_boolean has_eresult_sentryfile;
+ uint32_t eresult_sentryfile;
+ protobuf_c_boolean has_filesize;
+ uint32_t filesize;
+ protobuf_c_boolean has_sha_sentryfile;
+ ProtobufCBinaryData sha_sentryfile;
+ protobuf_c_boolean has_lock_account_action;
+ int32_t lock_account_action;
+ protobuf_c_boolean has_otp_type;
+ uint32_t otp_type;
+ char *otp_identifier;
+ protobuf_c_boolean has_otp_sharedsecret;
+ ProtobufCBinaryData otp_sharedsecret;
+ protobuf_c_boolean has_otp_value;
+ uint32_t otp_value;
+ char *machine_name;
+ char *machine_name_userchosen;
+};
+
+struct CMsgClientRequestMachineAuthResponse : public ProtobufCppMessage
+{
+ CMsgClientRequestMachineAuthResponse() :
+ ProtobufCppMessage(cmsg_client_request_machine_auth_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+};
+
+struct CMsgClientRegisterKey : public ProtobufCppMessage
+{
+ CMsgClientRegisterKey() :
+ ProtobufCppMessage(cmsg_client_register_key__descriptor)
+ {}
+
+ char *key;
+};
+
+struct CMsgClientPurchaseResponse : public ProtobufCppMessage
+{
+ CMsgClientPurchaseResponse() :
+ ProtobufCppMessage(cmsg_client_purchase_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_purchase_result_details;
+ int32_t purchase_result_details;
+ protobuf_c_boolean has_purchase_receipt_info;
+ ProtobufCBinaryData purchase_receipt_info;
+};
+
+struct CMsgClientActivateOEMLicense : public ProtobufCppMessage
+{
+ CMsgClientActivateOEMLicense() :
+ ProtobufCppMessage(cmsg_client_activate_oemlicense__descriptor)
+ {}
+
+ char *bios_manufacturer;
+ char *bios_serialnumber;
+ protobuf_c_boolean has_license_file;
+ ProtobufCBinaryData license_file;
+ char *mainboard_manufacturer;
+ char *mainboard_product;
+ char *mainboard_serialnumber;
+};
+
+struct CMsgClientRegisterOEMMachine : public ProtobufCppMessage
+{
+ CMsgClientRegisterOEMMachine() :
+ ProtobufCppMessage(cmsg_client_register_oemmachine__descriptor)
+ {}
+
+ protobuf_c_boolean has_oem_register_file;
+ ProtobufCBinaryData oem_register_file;
+};
+
+struct CMsgClientRegisterOEMMachineResponse : public ProtobufCppMessage
+{
+ CMsgClientRegisterOEMMachineResponse() :
+ ProtobufCppMessage(cmsg_client_register_oemmachine_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+};
+
+struct CMsgClientPurchaseWithMachineID : public ProtobufCppMessage
+{
+ CMsgClientPurchaseWithMachineID() :
+ ProtobufCppMessage(cmsg_client_purchase_with_machine_id__descriptor)
+ {}
+
+ protobuf_c_boolean has_package_id;
+ uint32_t package_id;
+ protobuf_c_boolean has_machine_info;
+ ProtobufCBinaryData machine_info;
+};
+
+struct CMsgTradingInitiateTradeRequest : public ProtobufCppMessage
+{
+ CMsgTradingInitiateTradeRequest() :
+ ProtobufCppMessage(cmsg_trading__initiate_trade_request__descriptor)
+ {}
+
+ protobuf_c_boolean has_trade_request_id;
+ uint32_t trade_request_id;
+ protobuf_c_boolean has_other_steamid;
+ uint64_t other_steamid;
+ char *other_name;
+};
+
+struct CMsgTradingInitiateTradeResponse : public ProtobufCppMessage
+{
+ CMsgTradingInitiateTradeResponse() :
+ ProtobufCppMessage(cmsg_trading__initiate_trade_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_response;
+ uint32_t response;
+ protobuf_c_boolean has_trade_request_id;
+ uint32_t trade_request_id;
+ protobuf_c_boolean has_other_steamid;
+ uint64_t other_steamid;
+ protobuf_c_boolean has_steamguard_required_days;
+ uint32_t steamguard_required_days;
+ protobuf_c_boolean has_new_device_cooldown_days;
+ uint32_t new_device_cooldown_days;
+ protobuf_c_boolean has_default_password_reset_probation_days;
+ uint32_t default_password_reset_probation_days;
+ protobuf_c_boolean has_password_reset_probation_days;
+ uint32_t password_reset_probation_days;
+ protobuf_c_boolean has_default_email_change_probation_days;
+ uint32_t default_email_change_probation_days;
+ protobuf_c_boolean has_email_change_probation_days;
+ uint32_t email_change_probation_days;
+};
+
+struct CMsgTradingCancelTradeRequest : public ProtobufCppMessage
+{
+ CMsgTradingCancelTradeRequest() :
+ ProtobufCppMessage(cmsg_trading__cancel_trade_request__descriptor)
+ {}
+
+ protobuf_c_boolean has_other_steamid;
+ uint64_t other_steamid;
+};
+
+struct CMsgTradingStartSession : public ProtobufCppMessage
+{
+ CMsgTradingStartSession() :
+ ProtobufCppMessage(cmsg_trading__start_session__descriptor)
+ {}
+
+ protobuf_c_boolean has_other_steamid;
+ uint64_t other_steamid;
+};
+
+struct CMsgClientGetCDNAuthToken : public ProtobufCppMessage
+{
+ CMsgClientGetCDNAuthToken() :
+ ProtobufCppMessage(cmsg_client_get_cdnauth_token__descriptor)
+ {}
+
+ protobuf_c_boolean has_depot_id;
+ uint32_t depot_id;
+ char *host_name;
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+};
+
+struct CMsgClientGetDepotDecryptionKey : public ProtobufCppMessage
+{
+ CMsgClientGetDepotDecryptionKey() :
+ ProtobufCppMessage(cmsg_client_get_depot_decryption_key__descriptor)
+ {}
+
+ protobuf_c_boolean has_depot_id;
+ uint32_t depot_id;
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+};
+
+struct CMsgClientGetDepotDecryptionKeyResponse : public ProtobufCppMessage
+{
+ CMsgClientGetDepotDecryptionKeyResponse() :
+ ProtobufCppMessage(cmsg_client_get_depot_decryption_key_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_depot_id;
+ uint32_t depot_id;
+ protobuf_c_boolean has_depot_encryption_key;
+ ProtobufCBinaryData depot_encryption_key;
+};
+
+struct CMsgClientCheckAppBetaPassword : public ProtobufCppMessage
+{
+ CMsgClientCheckAppBetaPassword() :
+ ProtobufCppMessage(cmsg_client_check_app_beta_password__descriptor)
+ {}
+
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+ char *betapassword;
+ protobuf_c_boolean has_language;
+ int32_t language;
+};
+
+struct CMsgClientCheckAppBetaPasswordResponse__BetaPassword : public ProtobufCppMessage
+{
+ CMsgClientCheckAppBetaPasswordResponse__BetaPassword() :
+ ProtobufCppMessage(cmsg_client_check_app_beta_password_response__beta_password__descriptor)
+ {}
+
+ char *betaname;
+ char *betapassword;
+ char *betadescription;
+};
+
+struct CMsgClientCheckAppBetaPasswordResponse : public ProtobufCppMessage
+{
+ CMsgClientCheckAppBetaPasswordResponse() :
+ ProtobufCppMessage(cmsg_client_check_app_beta_password_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ size_t n_betapasswords;
+ CMsgClientCheckAppBetaPasswordResponse__BetaPassword **betapasswords;
+};
+
+struct CMsgClientGetCDNAuthTokenResponse : public ProtobufCppMessage
+{
+ CMsgClientGetCDNAuthTokenResponse() :
+ ProtobufCppMessage(cmsg_client_get_cdnauth_token_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+ char *token;
+ protobuf_c_boolean has_expiration_time;
+ uint32_t expiration_time;
+};
+
+struct CMsgDownloadRateStatistics__StatsInfo : public ProtobufCppMessage
+{
+ CMsgDownloadRateStatistics__StatsInfo() :
+ ProtobufCppMessage(cmsg_download_rate_statistics__stats_info__descriptor)
+ {}
+
+ protobuf_c_boolean has_source_type;
+ uint32_t source_type;
+ protobuf_c_boolean has_source_id;
+ uint32_t source_id;
+ protobuf_c_boolean has_seconds;
+ uint32_t seconds;
+ protobuf_c_boolean has_bytes;
+ uint64_t bytes;
+ char *host_name;
+ protobuf_c_boolean has_microseconds;
+ uint64_t microseconds;
+ protobuf_c_boolean has_used_ipv6;
+ protobuf_c_boolean used_ipv6;
+ protobuf_c_boolean has_proxied;
+ protobuf_c_boolean proxied;
+};
+
+struct CMsgDownloadRateStatistics : public ProtobufCppMessage
+{
+ CMsgDownloadRateStatistics() :
+ ProtobufCppMessage(cmsg_download_rate_statistics__descriptor)
+ {}
+
+ protobuf_c_boolean has_cell_id;
+ uint32_t cell_id;
+ size_t n_stats;
+ CMsgDownloadRateStatistics__StatsInfo **stats;
+ protobuf_c_boolean has_throttling_kbps;
+ uint32_t throttling_kbps;
+ protobuf_c_boolean has_steam_realm;
+ uint32_t steam_realm;
+};
+
+struct CMsgClientRequestAccountData : public ProtobufCppMessage
+{
+ CMsgClientRequestAccountData() :
+ ProtobufCppMessage(cmsg_client_request_account_data__descriptor)
+ {}
+
+ char *account_or_email;
+ protobuf_c_boolean has_action;
+ uint32_t action;
+};
+
+struct CMsgClientRequestAccountDataResponse : public ProtobufCppMessage
+{
+ CMsgClientRequestAccountDataResponse() :
+ ProtobufCppMessage(cmsg_client_request_account_data_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_action;
+ uint32_t action;
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+ char *account_name;
+ protobuf_c_boolean has_ct_matches;
+ uint32_t ct_matches;
+ char *account_name_suggestion1;
+ char *account_name_suggestion2;
+ char *account_name_suggestion3;
+};
+
+struct CMsgClientUGSGetGlobalStats : public ProtobufCppMessage
+{
+ CMsgClientUGSGetGlobalStats() :
+ ProtobufCppMessage(cmsg_client_ugsget_global_stats__descriptor)
+ {}
+
+ protobuf_c_boolean has_gameid;
+ uint64_t gameid;
+ protobuf_c_boolean has_history_days_requested;
+ uint32_t history_days_requested;
+ protobuf_c_boolean has_time_last_requested;
+ uint32_t time_last_requested;
+ protobuf_c_boolean has_first_day_cached;
+ uint32_t first_day_cached;
+ protobuf_c_boolean has_days_cached;
+ uint32_t days_cached;
+};
+
+struct CMsgClientUGSGetGlobalStatsResponse__Day__Stat : public ProtobufCppMessage
+{
+ CMsgClientUGSGetGlobalStatsResponse__Day__Stat() :
+ ProtobufCppMessage(cmsg_client_ugsget_global_stats_response__day__stat__descriptor)
+ {}
+
+ protobuf_c_boolean has_stat_id;
+ int32_t stat_id;
+ protobuf_c_boolean has_data;
+ int64_t data;
+};
+
+struct CMsgClientUGSGetGlobalStatsResponse__Day : public ProtobufCppMessage
+{
+ CMsgClientUGSGetGlobalStatsResponse__Day() :
+ ProtobufCppMessage(cmsg_client_ugsget_global_stats_response__day__descriptor)
+ {}
+
+ protobuf_c_boolean has_day_id;
+ uint32_t day_id;
+ size_t n_stats;
+ CMsgClientUGSGetGlobalStatsResponse__Day__Stat **stats;
+};
+
+struct CMsgClientUGSGetGlobalStatsResponse : public ProtobufCppMessage
+{
+ CMsgClientUGSGetGlobalStatsResponse() :
+ ProtobufCppMessage(cmsg_client_ugsget_global_stats_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_timestamp;
+ uint32_t timestamp;
+ protobuf_c_boolean has_day_current;
+ int32_t day_current;
+ size_t n_days;
+ CMsgClientUGSGetGlobalStatsResponse__Day **days;
+};
+
+struct CMsgClientRedeemGuestPass : public ProtobufCppMessage
+{
+ CMsgClientRedeemGuestPass() :
+ ProtobufCppMessage(cmsg_client_redeem_guest_pass__descriptor)
+ {}
+
+ protobuf_c_boolean has_guest_pass_id;
+ uint64_t guest_pass_id;
+};
+
+struct CMsgClientRedeemGuestPassResponse : public ProtobufCppMessage
+{
+ CMsgClientRedeemGuestPassResponse() :
+ ProtobufCppMessage(cmsg_client_redeem_guest_pass_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+ protobuf_c_boolean has_package_id;
+ uint32_t package_id;
+ protobuf_c_boolean has_must_own_appid;
+ uint32_t must_own_appid;
+};
+
+struct CMsgClientGetClanActivityCounts : public ProtobufCppMessage
+{
+ CMsgClientGetClanActivityCounts() :
+ ProtobufCppMessage(cmsg_client_get_clan_activity_counts__descriptor)
+ {}
+
+ size_t n_steamid_clans;
+ uint64_t *steamid_clans;
+};
+
+struct CMsgClientGetClanActivityCountsResponse : public ProtobufCppMessage
+{
+ CMsgClientGetClanActivityCountsResponse() :
+ ProtobufCppMessage(cmsg_client_get_clan_activity_counts_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+};
+
+struct CMsgClientOGSReportString : public ProtobufCppMessage
+{
+ CMsgClientOGSReportString() :
+ ProtobufCppMessage(cmsg_client_ogsreport_string__descriptor)
+ {}
+
+ protobuf_c_boolean has_accumulated;
+ protobuf_c_boolean accumulated;
+ protobuf_c_boolean has_sessionid;
+ uint64_t sessionid;
+ protobuf_c_boolean has_severity;
+ int32_t severity;
+ char *formatter;
+ protobuf_c_boolean has_varargs;
+ ProtobufCBinaryData varargs;
+};
+
+struct CMsgClientOGSReportBug : public ProtobufCppMessage
+{
+ CMsgClientOGSReportBug() :
+ ProtobufCppMessage(cmsg_client_ogsreport_bug__descriptor)
+ {}
+
+ protobuf_c_boolean has_sessionid;
+ uint64_t sessionid;
+ char *bugtext;
+ protobuf_c_boolean has_screenshot;
+ ProtobufCBinaryData screenshot;
+};
+
+struct CMsgClientSentLogs : public ProtobufCppMessage
+{
+ CMsgClientSentLogs() :
+ ProtobufCppMessage(cmsg_client_sent_logs__descriptor)
+ {}
+
+};
+
+struct CMsgGCClient : public ProtobufCppMessage
+{
+ CMsgGCClient() :
+ ProtobufCppMessage(cmsg_gcclient__descriptor)
+ {}
+
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+ protobuf_c_boolean has_msgtype;
+ uint32_t msgtype;
+ protobuf_c_boolean has_payload;
+ ProtobufCBinaryData payload;
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ char *gcname;
+ protobuf_c_boolean has_ip;
+ uint32_t ip;
+};
+
+struct CMsgClientRequestFreeLicense : public ProtobufCppMessage
+{
+ CMsgClientRequestFreeLicense() :
+ ProtobufCppMessage(cmsg_client_request_free_license__descriptor)
+ {}
+
+ size_t n_appids;
+ uint32_t *appids;
+};
+
+struct CMsgClientRequestFreeLicenseResponse : public ProtobufCppMessage
+{
+ CMsgClientRequestFreeLicenseResponse() :
+ ProtobufCppMessage(cmsg_client_request_free_license_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+ size_t n_granted_packageids;
+ uint32_t *granted_packageids;
+ size_t n_granted_appids;
+ uint32_t *granted_appids;
+};
+
+struct CMsgDRMDownloadRequestWithCrashData : public ProtobufCppMessage
+{
+ CMsgDRMDownloadRequestWithCrashData() :
+ ProtobufCppMessage(cmsg_drmdownload_request_with_crash_data__descriptor)
+ {}
+
+ protobuf_c_boolean has_download_flags;
+ uint32_t download_flags;
+ protobuf_c_boolean has_download_types_known;
+ uint32_t download_types_known;
+ protobuf_c_boolean has_guid_drm;
+ ProtobufCBinaryData guid_drm;
+ protobuf_c_boolean has_guid_split;
+ ProtobufCBinaryData guid_split;
+ protobuf_c_boolean has_guid_merge;
+ ProtobufCBinaryData guid_merge;
+ char *module_name;
+ char *module_path;
+ protobuf_c_boolean has_crash_data;
+ ProtobufCBinaryData crash_data;
+};
+
+struct CMsgDRMDownloadResponse : public ProtobufCppMessage
+{
+ CMsgDRMDownloadResponse() :
+ ProtobufCppMessage(cmsg_drmdownload_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+ protobuf_c_boolean has_blob_download_type;
+ uint32_t blob_download_type;
+ protobuf_c_boolean has_merge_guid;
+ ProtobufCBinaryData merge_guid;
+ protobuf_c_boolean has_download_file_dfs_ip;
+ uint32_t download_file_dfs_ip;
+ protobuf_c_boolean has_download_file_dfs_port;
+ uint32_t download_file_dfs_port;
+ char *download_file_url;
+ char *module_path;
+};
+
+struct CMsgDRMFinalResult : public ProtobufCppMessage
+{
+ CMsgDRMFinalResult() :
+ ProtobufCppMessage(cmsg_drmfinal_result__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+ protobuf_c_boolean has_blob_download_type;
+ uint32_t blob_download_type;
+ protobuf_c_boolean has_error_detail;
+ uint32_t error_detail;
+ protobuf_c_boolean has_merge_guid;
+ ProtobufCBinaryData merge_guid;
+ protobuf_c_boolean has_download_file_dfs_ip;
+ uint32_t download_file_dfs_ip;
+ protobuf_c_boolean has_download_file_dfs_port;
+ uint32_t download_file_dfs_port;
+ char *download_file_url;
+};
+
+struct CMsgClientDPCheckSpecialSurvey : public ProtobufCppMessage
+{
+ CMsgClientDPCheckSpecialSurvey() :
+ ProtobufCppMessage(cmsg_client_dpcheck_special_survey__descriptor)
+ {}
+
+ protobuf_c_boolean has_survey_id;
+ uint32_t survey_id;
+};
+
+struct CMsgClientDPCheckSpecialSurveyResponse : public ProtobufCppMessage
+{
+ CMsgClientDPCheckSpecialSurveyResponse() :
+ ProtobufCppMessage(cmsg_client_dpcheck_special_survey_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+ protobuf_c_boolean has_state;
+ uint32_t state;
+ char *name;
+ char *custom_url;
+ protobuf_c_boolean has_include_software;
+ protobuf_c_boolean include_software;
+ protobuf_c_boolean has_token;
+ ProtobufCBinaryData token;
+};
+
+struct CMsgClientDPSendSpecialSurveyResponse : public ProtobufCppMessage
+{
+ CMsgClientDPSendSpecialSurveyResponse() :
+ ProtobufCppMessage(cmsg_client_dpsend_special_survey_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_survey_id;
+ uint32_t survey_id;
+ protobuf_c_boolean has_data;
+ ProtobufCBinaryData data;
+};
+
+struct CMsgClientDPSendSpecialSurveyResponseReply : public ProtobufCppMessage
+{
+ CMsgClientDPSendSpecialSurveyResponseReply() :
+ ProtobufCppMessage(cmsg_client_dpsend_special_survey_response_reply__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+ protobuf_c_boolean has_token;
+ ProtobufCBinaryData token;
+};
+
+struct CMsgClientRequestForgottenPasswordEmail : public ProtobufCppMessage
+{
+ CMsgClientRequestForgottenPasswordEmail() :
+ ProtobufCppMessage(cmsg_client_request_forgotten_password_email__descriptor)
+ {}
+
+ char *account_name;
+ char *password_tried;
+};
+
+struct CMsgClientRequestForgottenPasswordEmailResponse : public ProtobufCppMessage
+{
+ CMsgClientRequestForgottenPasswordEmailResponse() :
+ ProtobufCppMessage(cmsg_client_request_forgotten_password_email_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+ protobuf_c_boolean has_use_secret_question;
+ protobuf_c_boolean use_secret_question;
+};
+
+struct CMsgClientItemAnnouncements__UnseenItem : public ProtobufCppMessage
+{
+ CMsgClientItemAnnouncements__UnseenItem() :
+ ProtobufCppMessage(cmsg_client_item_announcements__unseen_item__descriptor)
+ {}
+
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+ protobuf_c_boolean has_context_id;
+ uint64_t context_id;
+ protobuf_c_boolean has_asset_id;
+ uint64_t asset_id;
+ protobuf_c_boolean has_amount;
+ uint64_t amount;
+ protobuf_c_boolean has_rtime32_gained;
+ uint32_t rtime32_gained;
+ protobuf_c_boolean has_source_appid;
+ uint32_t source_appid;
+};
+
+struct CMsgClientItemAnnouncements : public ProtobufCppMessage
+{
+ CMsgClientItemAnnouncements() :
+ ProtobufCppMessage(cmsg_client_item_announcements__descriptor)
+ {}
+
+ protobuf_c_boolean has_count_new_items;
+ uint32_t count_new_items;
+ size_t n_unseen_items;
+ CMsgClientItemAnnouncements__UnseenItem **unseen_items;
+};
+
+struct CMsgClientRequestItemAnnouncements : public ProtobufCppMessage
+{
+ CMsgClientRequestItemAnnouncements() :
+ ProtobufCppMessage(cmsg_client_request_item_announcements__descriptor)
+ {}
+
+};
+
+struct CMsgClientUserNotifications__Notification : public ProtobufCppMessage
+{
+ CMsgClientUserNotifications__Notification() :
+ ProtobufCppMessage(cmsg_client_user_notifications__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_user_notification_type;
+ uint32_t user_notification_type;
+ protobuf_c_boolean has_count;
+ uint32_t count;
+};
+
+struct CMsgClientUserNotifications : public ProtobufCppMessage
+{
+ CMsgClientUserNotifications() :
+ ProtobufCppMessage(cmsg_client_user_notifications__descriptor)
+ {}
+
+ size_t n_notifications;
+ CMsgClientUserNotifications__Notification **notifications;
+};
+
+struct CMsgClientCommentNotifications : public ProtobufCppMessage
+{
+ CMsgClientCommentNotifications() :
+ ProtobufCppMessage(cmsg_client_comment_notifications__descriptor)
+ {}
+
+ protobuf_c_boolean has_count_new_comments;
+ uint32_t count_new_comments;
+ protobuf_c_boolean has_count_new_comments_owner;
+ uint32_t count_new_comments_owner;
+ protobuf_c_boolean has_count_new_comments_subscriptions;
+ uint32_t count_new_comments_subscriptions;
+};
+
+struct CMsgClientRequestCommentNotifications : public ProtobufCppMessage
+{
+ CMsgClientRequestCommentNotifications() :
+ ProtobufCppMessage(cmsg_client_request_comment_notifications__descriptor)
+ {}
+
+};
+
+struct CMsgClientOfflineMessageNotification : public ProtobufCppMessage
+{
+ CMsgClientOfflineMessageNotification() :
+ ProtobufCppMessage(cmsg_client_offline_message_notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_offline_messages;
+ uint32_t offline_messages;
+ size_t n_friends_with_offline_messages;
+ uint32_t *friends_with_offline_messages;
+};
+
+struct CMsgClientRequestOfflineMessageCount : public ProtobufCppMessage
+{
+ CMsgClientRequestOfflineMessageCount() :
+ ProtobufCppMessage(cmsg_client_request_offline_message_count__descriptor)
+ {}
+
+};
+
+struct CMsgClientChatGetFriendMessageHistory : public ProtobufCppMessage
+{
+ CMsgClientChatGetFriendMessageHistory() :
+ ProtobufCppMessage(cmsg_client_chat_get_friend_message_history__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+};
+
+struct CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage : public ProtobufCppMessage
+{
+ CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage() :
+ ProtobufCppMessage(cmsg_client_chat_get_friend_message_history_response__friend_message__descriptor)
+ {}
+
+ protobuf_c_boolean has_accountid;
+ uint32_t accountid;
+ protobuf_c_boolean has_timestamp;
+ uint32_t timestamp;
+ char *message;
+ protobuf_c_boolean has_unread;
+ protobuf_c_boolean unread;
+};
+
+struct CMsgClientChatGetFriendMessageHistoryResponse : public ProtobufCppMessage
+{
+ CMsgClientChatGetFriendMessageHistoryResponse() :
+ ProtobufCppMessage(cmsg_client_chat_get_friend_message_history_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_success;
+ uint32_t success;
+ size_t n_messages;
+ CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage **messages;
+};
+
+struct CMsgClientChatGetFriendMessageHistoryForOfflineMessages : public ProtobufCppMessage
+{
+ CMsgClientChatGetFriendMessageHistoryForOfflineMessages() :
+ ProtobufCppMessage(cmsg_client_chat_get_friend_message_history_for_offline_messages__descriptor)
+ {}
+
+};
+
+struct CMsgClientFSGetFriendsSteamLevels : public ProtobufCppMessage
+{
+ CMsgClientFSGetFriendsSteamLevels() :
+ ProtobufCppMessage(cmsg_client_fsget_friends_steam_levels__descriptor)
+ {}
+
+ size_t n_accountids;
+ uint32_t *accountids;
+};
+
+struct CMsgClientFSGetFriendsSteamLevelsResponse__Friend : public ProtobufCppMessage
+{
+ CMsgClientFSGetFriendsSteamLevelsResponse__Friend() :
+ ProtobufCppMessage(cmsg_client_fsget_friends_steam_levels_response__friend__descriptor)
+ {}
+
+ protobuf_c_boolean has_accountid;
+ uint32_t accountid;
+ protobuf_c_boolean has_level;
+ uint32_t level;
+};
+
+struct CMsgClientFSGetFriendsSteamLevelsResponse : public ProtobufCppMessage
+{
+ CMsgClientFSGetFriendsSteamLevelsResponse() :
+ ProtobufCppMessage(cmsg_client_fsget_friends_steam_levels_response__descriptor)
+ {}
+
+ size_t n_friends;
+ CMsgClientFSGetFriendsSteamLevelsResponse__Friend **friends;
+};
+
+struct CMsgClientEmailAddrInfo : public ProtobufCppMessage
+{
+ CMsgClientEmailAddrInfo() :
+ ProtobufCppMessage(cmsg_client_email_addr_info__descriptor)
+ {}
+
+ char *email_address;
+ protobuf_c_boolean has_email_is_validated;
+ protobuf_c_boolean email_is_validated;
+ protobuf_c_boolean has_email_validation_changed;
+ protobuf_c_boolean email_validation_changed;
+ protobuf_c_boolean has_credential_change_requires_code;
+ protobuf_c_boolean credential_change_requires_code;
+ protobuf_c_boolean has_password_or_secretqa_change_requires_code;
+ protobuf_c_boolean password_or_secretqa_change_requires_code;
+};
+
+struct CMsgCREItemVoteSummary__PublishedFileId : public ProtobufCppMessage
+{
+ CMsgCREItemVoteSummary__PublishedFileId() :
+ ProtobufCppMessage(cmsg_creitem_vote_summary__published_file_id__descriptor)
+ {}
+
+ protobuf_c_boolean has_published_file_id;
+ uint64_t published_file_id;
+};
+
+struct CMsgCREItemVoteSummary : public ProtobufCppMessage
+{
+ CMsgCREItemVoteSummary() :
+ ProtobufCppMessage(cmsg_creitem_vote_summary__descriptor)
+ {}
+
+ size_t n_published_file_ids;
+ CMsgCREItemVoteSummary__PublishedFileId **published_file_ids;
+};
+
+struct CMsgCREItemVoteSummaryResponse__ItemVoteSummary : public ProtobufCppMessage
+{
+ CMsgCREItemVoteSummaryResponse__ItemVoteSummary() :
+ ProtobufCppMessage(cmsg_creitem_vote_summary_response__item_vote_summary__descriptor)
+ {}
+
+ protobuf_c_boolean has_published_file_id;
+ uint64_t published_file_id;
+ protobuf_c_boolean has_votes_for;
+ int32_t votes_for;
+ protobuf_c_boolean has_votes_against;
+ int32_t votes_against;
+ protobuf_c_boolean has_reports;
+ int32_t reports;
+ protobuf_c_boolean has_score;
+ float score;
+};
+
+struct CMsgCREItemVoteSummaryResponse : public ProtobufCppMessage
+{
+ CMsgCREItemVoteSummaryResponse() :
+ ProtobufCppMessage(cmsg_creitem_vote_summary_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ size_t n_item_vote_summaries;
+ CMsgCREItemVoteSummaryResponse__ItemVoteSummary **item_vote_summaries;
+};
+
+struct CMsgCREUpdateUserPublishedItemVote : public ProtobufCppMessage
+{
+ CMsgCREUpdateUserPublishedItemVote() :
+ ProtobufCppMessage(cmsg_creupdate_user_published_item_vote__descriptor)
+ {}
+
+ protobuf_c_boolean has_published_file_id;
+ uint64_t published_file_id;
+ protobuf_c_boolean has_vote_up;
+ protobuf_c_boolean vote_up;
+};
+
+struct CMsgCREUpdateUserPublishedItemVoteResponse : public ProtobufCppMessage
+{
+ CMsgCREUpdateUserPublishedItemVoteResponse() :
+ ProtobufCppMessage(cmsg_creupdate_user_published_item_vote_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+};
+
+struct CMsgCREGetUserPublishedItemVoteDetails__PublishedFileId : public ProtobufCppMessage
+{
+ CMsgCREGetUserPublishedItemVoteDetails__PublishedFileId() :
+ ProtobufCppMessage(cmsg_creget_user_published_item_vote_details__published_file_id__descriptor)
+ {}
+
+ protobuf_c_boolean has_published_file_id;
+ uint64_t published_file_id;
+};
+
+struct CMsgCREGetUserPublishedItemVoteDetails : public ProtobufCppMessage
+{
+ CMsgCREGetUserPublishedItemVoteDetails() :
+ ProtobufCppMessage(cmsg_creget_user_published_item_vote_details__descriptor)
+ {}
+
+ size_t n_published_file_ids;
+ CMsgCREGetUserPublishedItemVoteDetails__PublishedFileId **published_file_ids;
+};
+
+struct CMsgCREGetUserPublishedItemVoteDetailsResponse__UserItemVoteDetail : public ProtobufCppMessage
+{
+ CMsgCREGetUserPublishedItemVoteDetailsResponse__UserItemVoteDetail() :
+ ProtobufCppMessage(cmsg_creget_user_published_item_vote_details_response__user_item_vote_detail__descriptor)
+ {}
+
+ protobuf_c_boolean has_published_file_id;
+ uint64_t published_file_id;
+ protobuf_c_boolean has_vote;
+ int32_t vote;
+};
+
+struct CMsgCREGetUserPublishedItemVoteDetailsResponse : public ProtobufCppMessage
+{
+ CMsgCREGetUserPublishedItemVoteDetailsResponse() :
+ ProtobufCppMessage(cmsg_creget_user_published_item_vote_details_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ size_t n_user_item_vote_details;
+ CMsgCREGetUserPublishedItemVoteDetailsResponse__UserItemVoteDetail **user_item_vote_details;
+};
+
+struct CMsgFSGetFollowerCount : public ProtobufCppMessage
+{
+ CMsgFSGetFollowerCount() :
+ ProtobufCppMessage(cmsg_fsget_follower_count__descriptor)
+ {}
+
+ protobuf_c_boolean has_steam_id;
+ uint64_t steam_id;
+};
+
+struct CMsgFSGetFollowerCountResponse : public ProtobufCppMessage
+{
+ CMsgFSGetFollowerCountResponse() :
+ ProtobufCppMessage(cmsg_fsget_follower_count_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_count;
+ int32_t count;
+};
+
+struct CMsgFSGetIsFollowing : public ProtobufCppMessage
+{
+ CMsgFSGetIsFollowing() :
+ ProtobufCppMessage(cmsg_fsget_is_following__descriptor)
+ {}
+
+ protobuf_c_boolean has_steam_id;
+ uint64_t steam_id;
+};
+
+struct CMsgFSGetIsFollowingResponse : public ProtobufCppMessage
+{
+ CMsgFSGetIsFollowingResponse() :
+ ProtobufCppMessage(cmsg_fsget_is_following_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_is_following;
+ protobuf_c_boolean is_following;
+};
+
+struct CMsgFSEnumerateFollowingList : public ProtobufCppMessage
+{
+ CMsgFSEnumerateFollowingList() :
+ ProtobufCppMessage(cmsg_fsenumerate_following_list__descriptor)
+ {}
+
+ protobuf_c_boolean has_start_index;
+ uint32_t start_index;
+};
+
+struct CMsgFSEnumerateFollowingListResponse : public ProtobufCppMessage
+{
+ CMsgFSEnumerateFollowingListResponse() :
+ ProtobufCppMessage(cmsg_fsenumerate_following_list_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_total_results;
+ int32_t total_results;
+ size_t n_steam_ids;
+ uint64_t *steam_ids;
+};
+
+struct CMsgDPGetNumberOfCurrentPlayers : public ProtobufCppMessage
+{
+ CMsgDPGetNumberOfCurrentPlayers() :
+ ProtobufCppMessage(cmsg_dpget_number_of_current_players__descriptor)
+ {}
+
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+};
+
+struct CMsgDPGetNumberOfCurrentPlayersResponse : public ProtobufCppMessage
+{
+ CMsgDPGetNumberOfCurrentPlayersResponse() :
+ ProtobufCppMessage(cmsg_dpget_number_of_current_players_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_player_count;
+ int32_t player_count;
+};
+
+struct CMsgClientFriendUserStatusPublished : public ProtobufCppMessage
+{
+ CMsgClientFriendUserStatusPublished() :
+ ProtobufCppMessage(cmsg_client_friend_user_status_published__descriptor)
+ {}
+
+ protobuf_c_boolean has_friend_steamid;
+ uint64_t friend_steamid;
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+ char *status_text;
+};
+
+struct CMsgClientServiceMethodLegacy : public ProtobufCppMessage
+{
+ CMsgClientServiceMethodLegacy() :
+ ProtobufCppMessage(cmsg_client_service_method_legacy__descriptor)
+ {}
+
+ char *method_name;
+ protobuf_c_boolean has_serialized_method;
+ ProtobufCBinaryData serialized_method;
+ protobuf_c_boolean has_is_notification;
+ protobuf_c_boolean is_notification;
+};
+
+struct CMsgClientServiceMethodLegacyResponse : public ProtobufCppMessage
+{
+ CMsgClientServiceMethodLegacyResponse() :
+ ProtobufCppMessage(cmsg_client_service_method_legacy_response__descriptor)
+ {}
+
+ char *method_name;
+ protobuf_c_boolean has_serialized_method_response;
+ ProtobufCBinaryData serialized_method_response;
+};
+
+struct CMsgClientUIMode : public ProtobufCppMessage
+{
+ CMsgClientUIMode() :
+ ProtobufCppMessage(cmsg_client_uimode__descriptor)
+ {}
+
+ protobuf_c_boolean has_uimode;
+ uint32_t uimode;
+ protobuf_c_boolean has_chat_mode;
+ uint32_t chat_mode;
+};
+
+struct CMsgClientVanityURLChangedNotification : public ProtobufCppMessage
+{
+ CMsgClientVanityURLChangedNotification() :
+ ProtobufCppMessage(cmsg_client_vanity_urlchanged_notification__descriptor)
+ {}
+
+ char *vanity_url;
+};
+
+struct CMsgClientAuthorizeLocalDeviceRequest : public ProtobufCppMessage
+{
+ CMsgClientAuthorizeLocalDeviceRequest() :
+ ProtobufCppMessage(cmsg_client_authorize_local_device_request__descriptor)
+ {}
+
+ char *device_description;
+ protobuf_c_boolean has_owner_account_id;
+ uint32_t owner_account_id;
+ protobuf_c_boolean has_local_device_token;
+ uint64_t local_device_token;
+};
+
+struct CMsgClientAuthorizeLocalDevice : public ProtobufCppMessage
+{
+ CMsgClientAuthorizeLocalDevice() :
+ ProtobufCppMessage(cmsg_client_authorize_local_device__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_owner_account_id;
+ uint32_t owner_account_id;
+ protobuf_c_boolean has_authed_device_token;
+ uint64_t authed_device_token;
+};
+
+struct CMsgClientAuthorizeLocalDeviceNotification : public ProtobufCppMessage
+{
+ CMsgClientAuthorizeLocalDeviceNotification() :
+ ProtobufCppMessage(cmsg_client_authorize_local_device_notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_owner_account_id;
+ uint32_t owner_account_id;
+ protobuf_c_boolean has_local_device_token;
+ uint64_t local_device_token;
+};
+
+struct CMsgClientDeauthorizeDeviceRequest : public ProtobufCppMessage
+{
+ CMsgClientDeauthorizeDeviceRequest() :
+ ProtobufCppMessage(cmsg_client_deauthorize_device_request__descriptor)
+ {}
+
+ protobuf_c_boolean has_deauthorization_account_id;
+ uint32_t deauthorization_account_id;
+ protobuf_c_boolean has_deauthorization_device_token;
+ uint64_t deauthorization_device_token;
+};
+
+struct CMsgClientDeauthorizeDevice : public ProtobufCppMessage
+{
+ CMsgClientDeauthorizeDevice() :
+ ProtobufCppMessage(cmsg_client_deauthorize_device__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_deauthorization_account_id;
+ uint32_t deauthorization_account_id;
+};
+
+struct CMsgClientUseLocalDeviceAuthorizations__DeviceToken : public ProtobufCppMessage
+{
+ CMsgClientUseLocalDeviceAuthorizations__DeviceToken() :
+ ProtobufCppMessage(cmsg_client_use_local_device_authorizations__device_token__descriptor)
+ {}
+
+ protobuf_c_boolean has_owner_account_id;
+ uint32_t owner_account_id;
+ protobuf_c_boolean has_token_id;
+ uint64_t token_id;
+};
+
+struct CMsgClientUseLocalDeviceAuthorizations : public ProtobufCppMessage
+{
+ CMsgClientUseLocalDeviceAuthorizations() :
+ ProtobufCppMessage(cmsg_client_use_local_device_authorizations__descriptor)
+ {}
+
+ size_t n_authorization_account_id;
+ uint32_t *authorization_account_id;
+ size_t n_device_tokens;
+ CMsgClientUseLocalDeviceAuthorizations__DeviceToken **device_tokens;
+};
+
+struct CMsgClientGetAuthorizedDevices : public ProtobufCppMessage
+{
+ CMsgClientGetAuthorizedDevices() :
+ ProtobufCppMessage(cmsg_client_get_authorized_devices__descriptor)
+ {}
+
+};
+
+struct CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice : public ProtobufCppMessage
+{
+ CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice() :
+ ProtobufCppMessage(cmsg_client_get_authorized_devices_response__authorized_device__descriptor)
+ {}
+
+ protobuf_c_boolean has_auth_device_token;
+ uint64_t auth_device_token;
+ char *device_name;
+ protobuf_c_boolean has_last_access_time;
+ uint32_t last_access_time;
+ protobuf_c_boolean has_borrower_id;
+ uint32_t borrower_id;
+ protobuf_c_boolean has_is_pending;
+ protobuf_c_boolean is_pending;
+ protobuf_c_boolean has_app_played;
+ uint32_t app_played;
+};
+
+struct CMsgClientGetAuthorizedDevicesResponse : public ProtobufCppMessage
+{
+ CMsgClientGetAuthorizedDevicesResponse() :
+ ProtobufCppMessage(cmsg_client_get_authorized_devices_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ size_t n_authorized_device;
+ CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice **authorized_device;
+};
+
+struct CMsgClientSharedLibraryLockStatus__LockedLibrary : public ProtobufCppMessage
+{
+ CMsgClientSharedLibraryLockStatus__LockedLibrary() :
+ ProtobufCppMessage(cmsg_client_shared_library_lock_status__locked_library__descriptor)
+ {}
+
+ protobuf_c_boolean has_owner_id;
+ uint32_t owner_id;
+ protobuf_c_boolean has_locked_by;
+ uint32_t locked_by;
+};
+
+struct CMsgClientSharedLibraryLockStatus : public ProtobufCppMessage
+{
+ CMsgClientSharedLibraryLockStatus() :
+ ProtobufCppMessage(cmsg_client_shared_library_lock_status__descriptor)
+ {}
+
+ size_t n_locked_library;
+ CMsgClientSharedLibraryLockStatus__LockedLibrary **locked_library;
+ protobuf_c_boolean has_own_library_locked_by;
+ uint32_t own_library_locked_by;
+};
+
+struct CMsgClientSharedLibraryStopPlaying__StopApp : public ProtobufCppMessage
+{
+ CMsgClientSharedLibraryStopPlaying__StopApp() :
+ ProtobufCppMessage(cmsg_client_shared_library_stop_playing__stop_app__descriptor)
+ {}
+
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+ protobuf_c_boolean has_owner_id;
+ uint32_t owner_id;
+};
+
+struct CMsgClientSharedLibraryStopPlaying : public ProtobufCppMessage
+{
+ CMsgClientSharedLibraryStopPlaying() :
+ ProtobufCppMessage(cmsg_client_shared_library_stop_playing__descriptor)
+ {}
+
+ protobuf_c_boolean has_seconds_left;
+ int32_t seconds_left;
+ size_t n_stop_apps;
+ CMsgClientSharedLibraryStopPlaying__StopApp **stop_apps;
+};
+
+struct CMsgClientServiceCall : public ProtobufCppMessage
+{
+ CMsgClientServiceCall() :
+ ProtobufCppMessage(cmsg_client_service_call__descriptor)
+ {}
+
+ protobuf_c_boolean has_sysid_routing;
+ ProtobufCBinaryData sysid_routing;
+ protobuf_c_boolean has_call_handle;
+ uint32_t call_handle;
+ protobuf_c_boolean has_module_crc;
+ uint32_t module_crc;
+ protobuf_c_boolean has_module_hash;
+ ProtobufCBinaryData module_hash;
+ protobuf_c_boolean has_function_id;
+ uint32_t function_id;
+ protobuf_c_boolean has_cub_output_max;
+ uint32_t cub_output_max;
+ protobuf_c_boolean has_flags;
+ uint32_t flags;
+ protobuf_c_boolean has_callparameter;
+ ProtobufCBinaryData callparameter;
+ protobuf_c_boolean has_ping_only;
+ protobuf_c_boolean ping_only;
+ protobuf_c_boolean has_max_outstanding_calls;
+ uint32_t max_outstanding_calls;
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+};
+
+struct CMsgClientServiceModule : public ProtobufCppMessage
+{
+ CMsgClientServiceModule() :
+ ProtobufCppMessage(cmsg_client_service_module__descriptor)
+ {}
+
+ protobuf_c_boolean has_module_crc;
+ uint32_t module_crc;
+ protobuf_c_boolean has_module_hash;
+ ProtobufCBinaryData module_hash;
+ protobuf_c_boolean has_module_content;
+ ProtobufCBinaryData module_content;
+};
+
+struct CMsgClientServiceCallResponse : public ProtobufCppMessage
+{
+ CMsgClientServiceCallResponse() :
+ ProtobufCppMessage(cmsg_client_service_call_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_sysid_routing;
+ ProtobufCBinaryData sysid_routing;
+ protobuf_c_boolean has_call_handle;
+ uint32_t call_handle;
+ protobuf_c_boolean has_module_crc;
+ uint32_t module_crc;
+ protobuf_c_boolean has_module_hash;
+ ProtobufCBinaryData module_hash;
+ protobuf_c_boolean has_ecallresult;
+ uint32_t ecallresult;
+ protobuf_c_boolean has_result_content;
+ ProtobufCBinaryData result_content;
+ protobuf_c_boolean has_os_version_info;
+ ProtobufCBinaryData os_version_info;
+ protobuf_c_boolean has_system_info;
+ ProtobufCBinaryData system_info;
+ protobuf_c_boolean has_load_address;
+ uint64_t load_address;
+ protobuf_c_boolean has_exception_record;
+ ProtobufCBinaryData exception_record;
+ protobuf_c_boolean has_portable_os_version_info;
+ ProtobufCBinaryData portable_os_version_info;
+ protobuf_c_boolean has_portable_system_info;
+ ProtobufCBinaryData portable_system_info;
+ protobuf_c_boolean has_was_converted;
+ protobuf_c_boolean was_converted;
+ protobuf_c_boolean has_internal_result;
+ uint32_t internal_result;
+ protobuf_c_boolean has_current_count;
+ uint32_t current_count;
+ protobuf_c_boolean has_last_call_handle;
+ uint32_t last_call_handle;
+ protobuf_c_boolean has_last_call_module_crc;
+ uint32_t last_call_module_crc;
+ protobuf_c_boolean has_last_call_sysid_routing;
+ ProtobufCBinaryData last_call_sysid_routing;
+ protobuf_c_boolean has_last_ecallresult;
+ uint32_t last_ecallresult;
+ protobuf_c_boolean has_last_callissue_delta;
+ uint32_t last_callissue_delta;
+ protobuf_c_boolean has_last_callcomplete_delta;
+ uint32_t last_callcomplete_delta;
+};
+
+struct CMsgAMUnlockH264 : public ProtobufCppMessage
+{
+ CMsgAMUnlockH264() :
+ ProtobufCppMessage(cmsg_amunlock_h264__descriptor)
+ {}
+
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+ protobuf_c_boolean has_platform;
+ int32_t platform;
+ protobuf_c_boolean has_reason;
+ int32_t reason;
+};
+
+struct CMsgAMUnlockH264Response : public ProtobufCppMessage
+{
+ CMsgAMUnlockH264Response() :
+ ProtobufCppMessage(cmsg_amunlock_h264_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_encryption_key;
+ ProtobufCBinaryData encryption_key;
+};
+
+struct CMsgClientPlayingSessionState : public ProtobufCppMessage
+{
+ CMsgClientPlayingSessionState() :
+ ProtobufCppMessage(cmsg_client_playing_session_state__descriptor)
+ {}
+
+ protobuf_c_boolean has_playing_blocked;
+ protobuf_c_boolean playing_blocked;
+ protobuf_c_boolean has_playing_app;
+ uint32_t playing_app;
+};
+
+struct CMsgClientKickPlayingSession : public ProtobufCppMessage
+{
+ CMsgClientKickPlayingSession() :
+ ProtobufCppMessage(cmsg_client_kick_playing_session__descriptor)
+ {}
+
+ protobuf_c_boolean has_only_stop_game;
+ protobuf_c_boolean only_stop_game;
+};
+
+struct CMsgClientVoiceCallPreAuthorize : public ProtobufCppMessage
+{
+ CMsgClientVoiceCallPreAuthorize() :
+ ProtobufCppMessage(cmsg_client_voice_call_pre_authorize__descriptor)
+ {}
+
+ protobuf_c_boolean has_caller_steamid;
+ uint64_t caller_steamid;
+ protobuf_c_boolean has_receiver_steamid;
+ uint64_t receiver_steamid;
+ protobuf_c_boolean has_caller_id;
+ int32_t caller_id;
+ protobuf_c_boolean has_hangup;
+ protobuf_c_boolean hangup;
+};
+
+struct CMsgClientVoiceCallPreAuthorizeResponse : public ProtobufCppMessage
+{
+ CMsgClientVoiceCallPreAuthorizeResponse() :
+ ProtobufCppMessage(cmsg_client_voice_call_pre_authorize_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_caller_steamid;
+ uint64_t caller_steamid;
+ protobuf_c_boolean has_receiver_steamid;
+ uint64_t receiver_steamid;
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_caller_id;
+ int32_t caller_id;
+};
+
+struct CMsgBadgeCraftedNotification : public ProtobufCppMessage
+{
+ CMsgBadgeCraftedNotification() :
+ ProtobufCppMessage(cmsg_badge_crafted_notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+ protobuf_c_boolean has_badge_level;
+ uint32_t badge_level;
+};
+
+struct CMsgClientStartPeerContentServer : public ProtobufCppMessage
+{
+ CMsgClientStartPeerContentServer() :
+ ProtobufCppMessage(cmsg_client_start_peer_content_server__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_client_remote_id;
+ uint64_t client_remote_id;
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+ protobuf_c_boolean has_current_build_id;
+ uint32_t current_build_id;
+};
+
+struct CMsgClientStartPeerContentServerResponse : public ProtobufCppMessage
+{
+ CMsgClientStartPeerContentServerResponse() :
+ ProtobufCppMessage(cmsg_client_start_peer_content_server_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_result;
+ uint32_t result;
+ protobuf_c_boolean has_server_port;
+ uint32_t server_port;
+};
+
+struct CMsgClientGetPeerContentInfo : public ProtobufCppMessage
+{
+ CMsgClientGetPeerContentInfo() :
+ ProtobufCppMessage(cmsg_client_get_peer_content_info__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_client_remote_id;
+ uint64_t client_remote_id;
+};
+
+struct CMsgClientGetPeerContentInfoResponse : public ProtobufCppMessage
+{
+ CMsgClientGetPeerContentInfoResponse() :
+ ProtobufCppMessage(cmsg_client_get_peer_content_info_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_result;
+ uint32_t result;
+ size_t n_apps;
+ uint32_t *apps;
+};
+
+size_t cmsg_client_update_user_game_info__get_packed_size
+ (const CMsgClientUpdateUserGameInfo *message);
+size_t cmsg_client_update_user_game_info__pack
+ (const CMsgClientUpdateUserGameInfo *message,
+ uint8_t *out);
+size_t cmsg_client_update_user_game_info__pack_to_buffer
+ (const CMsgClientUpdateUserGameInfo *message,
+ ProtobufCBuffer *buffer);
+CMsgClientUpdateUserGameInfo *
+ cmsg_client_update_user_game_info__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_update_user_game_info__free_unpacked
+ (CMsgClientUpdateUserGameInfo *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_rich_presence_upload__get_packed_size
+ (const CMsgClientRichPresenceUpload *message);
+size_t cmsg_client_rich_presence_upload__pack
+ (const CMsgClientRichPresenceUpload *message,
+ uint8_t *out);
+size_t cmsg_client_rich_presence_upload__pack_to_buffer
+ (const CMsgClientRichPresenceUpload *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRichPresenceUpload *
+ cmsg_client_rich_presence_upload__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_rich_presence_upload__free_unpacked
+ (CMsgClientRichPresenceUpload *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_rich_presence_request__get_packed_size
+ (const CMsgClientRichPresenceRequest *message);
+size_t cmsg_client_rich_presence_request__pack
+ (const CMsgClientRichPresenceRequest *message,
+ uint8_t *out);
+size_t cmsg_client_rich_presence_request__pack_to_buffer
+ (const CMsgClientRichPresenceRequest *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRichPresenceRequest *
+ cmsg_client_rich_presence_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_rich_presence_request__free_unpacked
+ (CMsgClientRichPresenceRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_rich_presence_info__get_packed_size
+ (const CMsgClientRichPresenceInfo *message);
+size_t cmsg_client_rich_presence_info__pack
+ (const CMsgClientRichPresenceInfo *message,
+ uint8_t *out);
+size_t cmsg_client_rich_presence_info__pack_to_buffer
+ (const CMsgClientRichPresenceInfo *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRichPresenceInfo *
+ cmsg_client_rich_presence_info__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_rich_presence_info__free_unpacked
+ (CMsgClientRichPresenceInfo *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_check_file_signature__get_packed_size
+ (const CMsgClientCheckFileSignature *message);
+size_t cmsg_client_check_file_signature__pack
+ (const CMsgClientCheckFileSignature *message,
+ uint8_t *out);
+size_t cmsg_client_check_file_signature__pack_to_buffer
+ (const CMsgClientCheckFileSignature *message,
+ ProtobufCBuffer *buffer);
+CMsgClientCheckFileSignature *
+ cmsg_client_check_file_signature__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_check_file_signature__free_unpacked
+ (CMsgClientCheckFileSignature *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_check_file_signature_response__get_packed_size
+ (const CMsgClientCheckFileSignatureResponse *message);
+size_t cmsg_client_check_file_signature_response__pack
+ (const CMsgClientCheckFileSignatureResponse *message,
+ uint8_t *out);
+size_t cmsg_client_check_file_signature_response__pack_to_buffer
+ (const CMsgClientCheckFileSignatureResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientCheckFileSignatureResponse *
+ cmsg_client_check_file_signature_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_check_file_signature_response__free_unpacked
+ (CMsgClientCheckFileSignatureResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_read_machine_auth__get_packed_size
+ (const CMsgClientReadMachineAuth *message);
+size_t cmsg_client_read_machine_auth__pack
+ (const CMsgClientReadMachineAuth *message,
+ uint8_t *out);
+size_t cmsg_client_read_machine_auth__pack_to_buffer
+ (const CMsgClientReadMachineAuth *message,
+ ProtobufCBuffer *buffer);
+CMsgClientReadMachineAuth *
+ cmsg_client_read_machine_auth__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_read_machine_auth__free_unpacked
+ (CMsgClientReadMachineAuth *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_read_machine_auth_response__get_packed_size
+ (const CMsgClientReadMachineAuthResponse *message);
+size_t cmsg_client_read_machine_auth_response__pack
+ (const CMsgClientReadMachineAuthResponse *message,
+ uint8_t *out);
+size_t cmsg_client_read_machine_auth_response__pack_to_buffer
+ (const CMsgClientReadMachineAuthResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientReadMachineAuthResponse *
+ cmsg_client_read_machine_auth_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_read_machine_auth_response__free_unpacked
+ (CMsgClientReadMachineAuthResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_update_machine_auth__get_packed_size
+ (const CMsgClientUpdateMachineAuth *message);
+size_t cmsg_client_update_machine_auth__pack
+ (const CMsgClientUpdateMachineAuth *message,
+ uint8_t *out);
+size_t cmsg_client_update_machine_auth__pack_to_buffer
+ (const CMsgClientUpdateMachineAuth *message,
+ ProtobufCBuffer *buffer);
+CMsgClientUpdateMachineAuth *
+ cmsg_client_update_machine_auth__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_update_machine_auth__free_unpacked
+ (CMsgClientUpdateMachineAuth *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_update_machine_auth_response__get_packed_size
+ (const CMsgClientUpdateMachineAuthResponse *message);
+size_t cmsg_client_update_machine_auth_response__pack
+ (const CMsgClientUpdateMachineAuthResponse *message,
+ uint8_t *out);
+size_t cmsg_client_update_machine_auth_response__pack_to_buffer
+ (const CMsgClientUpdateMachineAuthResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientUpdateMachineAuthResponse *
+ cmsg_client_update_machine_auth_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_update_machine_auth_response__free_unpacked
+ (CMsgClientUpdateMachineAuthResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_request_machine_auth__get_packed_size
+ (const CMsgClientRequestMachineAuth *message);
+size_t cmsg_client_request_machine_auth__pack
+ (const CMsgClientRequestMachineAuth *message,
+ uint8_t *out);
+size_t cmsg_client_request_machine_auth__pack_to_buffer
+ (const CMsgClientRequestMachineAuth *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestMachineAuth *
+ cmsg_client_request_machine_auth__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_request_machine_auth__free_unpacked
+ (CMsgClientRequestMachineAuth *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_request_machine_auth_response__get_packed_size
+ (const CMsgClientRequestMachineAuthResponse *message);
+size_t cmsg_client_request_machine_auth_response__pack
+ (const CMsgClientRequestMachineAuthResponse *message,
+ uint8_t *out);
+size_t cmsg_client_request_machine_auth_response__pack_to_buffer
+ (const CMsgClientRequestMachineAuthResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestMachineAuthResponse *
+ cmsg_client_request_machine_auth_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_request_machine_auth_response__free_unpacked
+ (CMsgClientRequestMachineAuthResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_register_key__get_packed_size
+ (const CMsgClientRegisterKey *message);
+size_t cmsg_client_register_key__pack
+ (const CMsgClientRegisterKey *message,
+ uint8_t *out);
+size_t cmsg_client_register_key__pack_to_buffer
+ (const CMsgClientRegisterKey *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRegisterKey *
+ cmsg_client_register_key__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_register_key__free_unpacked
+ (CMsgClientRegisterKey *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_purchase_response__get_packed_size
+ (const CMsgClientPurchaseResponse *message);
+size_t cmsg_client_purchase_response__pack
+ (const CMsgClientPurchaseResponse *message,
+ uint8_t *out);
+size_t cmsg_client_purchase_response__pack_to_buffer
+ (const CMsgClientPurchaseResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientPurchaseResponse *
+ cmsg_client_purchase_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_purchase_response__free_unpacked
+ (CMsgClientPurchaseResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_activate_oemlicense__get_packed_size
+ (const CMsgClientActivateOEMLicense *message);
+size_t cmsg_client_activate_oemlicense__pack
+ (const CMsgClientActivateOEMLicense *message,
+ uint8_t *out);
+size_t cmsg_client_activate_oemlicense__pack_to_buffer
+ (const CMsgClientActivateOEMLicense *message,
+ ProtobufCBuffer *buffer);
+CMsgClientActivateOEMLicense *
+ cmsg_client_activate_oemlicense__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_activate_oemlicense__free_unpacked
+ (CMsgClientActivateOEMLicense *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_register_oemmachine__get_packed_size
+ (const CMsgClientRegisterOEMMachine *message);
+size_t cmsg_client_register_oemmachine__pack
+ (const CMsgClientRegisterOEMMachine *message,
+ uint8_t *out);
+size_t cmsg_client_register_oemmachine__pack_to_buffer
+ (const CMsgClientRegisterOEMMachine *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRegisterOEMMachine *
+ cmsg_client_register_oemmachine__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_register_oemmachine__free_unpacked
+ (CMsgClientRegisterOEMMachine *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_register_oemmachine_response__get_packed_size
+ (const CMsgClientRegisterOEMMachineResponse *message);
+size_t cmsg_client_register_oemmachine_response__pack
+ (const CMsgClientRegisterOEMMachineResponse *message,
+ uint8_t *out);
+size_t cmsg_client_register_oemmachine_response__pack_to_buffer
+ (const CMsgClientRegisterOEMMachineResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRegisterOEMMachineResponse *
+ cmsg_client_register_oemmachine_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_register_oemmachine_response__free_unpacked
+ (CMsgClientRegisterOEMMachineResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_purchase_with_machine_id__get_packed_size
+ (const CMsgClientPurchaseWithMachineID *message);
+size_t cmsg_client_purchase_with_machine_id__pack
+ (const CMsgClientPurchaseWithMachineID *message,
+ uint8_t *out);
+size_t cmsg_client_purchase_with_machine_id__pack_to_buffer
+ (const CMsgClientPurchaseWithMachineID *message,
+ ProtobufCBuffer *buffer);
+CMsgClientPurchaseWithMachineID *
+ cmsg_client_purchase_with_machine_id__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_purchase_with_machine_id__free_unpacked
+ (CMsgClientPurchaseWithMachineID *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_trading__initiate_trade_request__get_packed_size
+ (const CMsgTradingInitiateTradeRequest *message);
+size_t cmsg_trading__initiate_trade_request__pack
+ (const CMsgTradingInitiateTradeRequest *message,
+ uint8_t *out);
+size_t cmsg_trading__initiate_trade_request__pack_to_buffer
+ (const CMsgTradingInitiateTradeRequest *message,
+ ProtobufCBuffer *buffer);
+CMsgTradingInitiateTradeRequest *
+ cmsg_trading__initiate_trade_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_trading__initiate_trade_request__free_unpacked
+ (CMsgTradingInitiateTradeRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_trading__initiate_trade_response__get_packed_size
+ (const CMsgTradingInitiateTradeResponse *message);
+size_t cmsg_trading__initiate_trade_response__pack
+ (const CMsgTradingInitiateTradeResponse *message,
+ uint8_t *out);
+size_t cmsg_trading__initiate_trade_response__pack_to_buffer
+ (const CMsgTradingInitiateTradeResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgTradingInitiateTradeResponse *
+ cmsg_trading__initiate_trade_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_trading__initiate_trade_response__free_unpacked
+ (CMsgTradingInitiateTradeResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_trading__cancel_trade_request__get_packed_size
+ (const CMsgTradingCancelTradeRequest *message);
+size_t cmsg_trading__cancel_trade_request__pack
+ (const CMsgTradingCancelTradeRequest *message,
+ uint8_t *out);
+size_t cmsg_trading__cancel_trade_request__pack_to_buffer
+ (const CMsgTradingCancelTradeRequest *message,
+ ProtobufCBuffer *buffer);
+CMsgTradingCancelTradeRequest *
+ cmsg_trading__cancel_trade_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_trading__cancel_trade_request__free_unpacked
+ (CMsgTradingCancelTradeRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_trading__start_session__get_packed_size
+ (const CMsgTradingStartSession *message);
+size_t cmsg_trading__start_session__pack
+ (const CMsgTradingStartSession *message,
+ uint8_t *out);
+size_t cmsg_trading__start_session__pack_to_buffer
+ (const CMsgTradingStartSession *message,
+ ProtobufCBuffer *buffer);
+CMsgTradingStartSession *
+ cmsg_trading__start_session__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_trading__start_session__free_unpacked
+ (CMsgTradingStartSession *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_get_cdnauth_token__get_packed_size
+ (const CMsgClientGetCDNAuthToken *message);
+size_t cmsg_client_get_cdnauth_token__pack
+ (const CMsgClientGetCDNAuthToken *message,
+ uint8_t *out);
+size_t cmsg_client_get_cdnauth_token__pack_to_buffer
+ (const CMsgClientGetCDNAuthToken *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGetCDNAuthToken *
+ cmsg_client_get_cdnauth_token__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_get_cdnauth_token__free_unpacked
+ (CMsgClientGetCDNAuthToken *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_get_depot_decryption_key__get_packed_size
+ (const CMsgClientGetDepotDecryptionKey *message);
+size_t cmsg_client_get_depot_decryption_key__pack
+ (const CMsgClientGetDepotDecryptionKey *message,
+ uint8_t *out);
+size_t cmsg_client_get_depot_decryption_key__pack_to_buffer
+ (const CMsgClientGetDepotDecryptionKey *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGetDepotDecryptionKey *
+ cmsg_client_get_depot_decryption_key__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_get_depot_decryption_key__free_unpacked
+ (CMsgClientGetDepotDecryptionKey *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_get_depot_decryption_key_response__get_packed_size
+ (const CMsgClientGetDepotDecryptionKeyResponse *message);
+size_t cmsg_client_get_depot_decryption_key_response__pack
+ (const CMsgClientGetDepotDecryptionKeyResponse *message,
+ uint8_t *out);
+size_t cmsg_client_get_depot_decryption_key_response__pack_to_buffer
+ (const CMsgClientGetDepotDecryptionKeyResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGetDepotDecryptionKeyResponse *
+ cmsg_client_get_depot_decryption_key_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_get_depot_decryption_key_response__free_unpacked
+ (CMsgClientGetDepotDecryptionKeyResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_check_app_beta_password__get_packed_size
+ (const CMsgClientCheckAppBetaPassword *message);
+size_t cmsg_client_check_app_beta_password__pack
+ (const CMsgClientCheckAppBetaPassword *message,
+ uint8_t *out);
+size_t cmsg_client_check_app_beta_password__pack_to_buffer
+ (const CMsgClientCheckAppBetaPassword *message,
+ ProtobufCBuffer *buffer);
+CMsgClientCheckAppBetaPassword *
+ cmsg_client_check_app_beta_password__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_check_app_beta_password__free_unpacked
+ (CMsgClientCheckAppBetaPassword *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_check_app_beta_password_response__get_packed_size
+ (const CMsgClientCheckAppBetaPasswordResponse *message);
+size_t cmsg_client_check_app_beta_password_response__pack
+ (const CMsgClientCheckAppBetaPasswordResponse *message,
+ uint8_t *out);
+size_t cmsg_client_check_app_beta_password_response__pack_to_buffer
+ (const CMsgClientCheckAppBetaPasswordResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientCheckAppBetaPasswordResponse *
+ cmsg_client_check_app_beta_password_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_check_app_beta_password_response__free_unpacked
+ (CMsgClientCheckAppBetaPasswordResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_get_cdnauth_token_response__get_packed_size
+ (const CMsgClientGetCDNAuthTokenResponse *message);
+size_t cmsg_client_get_cdnauth_token_response__pack
+ (const CMsgClientGetCDNAuthTokenResponse *message,
+ uint8_t *out);
+size_t cmsg_client_get_cdnauth_token_response__pack_to_buffer
+ (const CMsgClientGetCDNAuthTokenResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGetCDNAuthTokenResponse *
+ cmsg_client_get_cdnauth_token_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_get_cdnauth_token_response__free_unpacked
+ (CMsgClientGetCDNAuthTokenResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_download_rate_statistics__get_packed_size
+ (const CMsgDownloadRateStatistics *message);
+size_t cmsg_download_rate_statistics__pack
+ (const CMsgDownloadRateStatistics *message,
+ uint8_t *out);
+size_t cmsg_download_rate_statistics__pack_to_buffer
+ (const CMsgDownloadRateStatistics *message,
+ ProtobufCBuffer *buffer);
+CMsgDownloadRateStatistics *
+ cmsg_download_rate_statistics__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_download_rate_statistics__free_unpacked
+ (CMsgDownloadRateStatistics *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_request_account_data__get_packed_size
+ (const CMsgClientRequestAccountData *message);
+size_t cmsg_client_request_account_data__pack
+ (const CMsgClientRequestAccountData *message,
+ uint8_t *out);
+size_t cmsg_client_request_account_data__pack_to_buffer
+ (const CMsgClientRequestAccountData *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestAccountData *
+ cmsg_client_request_account_data__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_request_account_data__free_unpacked
+ (CMsgClientRequestAccountData *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_request_account_data_response__get_packed_size
+ (const CMsgClientRequestAccountDataResponse *message);
+size_t cmsg_client_request_account_data_response__pack
+ (const CMsgClientRequestAccountDataResponse *message,
+ uint8_t *out);
+size_t cmsg_client_request_account_data_response__pack_to_buffer
+ (const CMsgClientRequestAccountDataResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestAccountDataResponse *
+ cmsg_client_request_account_data_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_request_account_data_response__free_unpacked
+ (CMsgClientRequestAccountDataResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_ugsget_global_stats__get_packed_size
+ (const CMsgClientUGSGetGlobalStats *message);
+size_t cmsg_client_ugsget_global_stats__pack
+ (const CMsgClientUGSGetGlobalStats *message,
+ uint8_t *out);
+size_t cmsg_client_ugsget_global_stats__pack_to_buffer
+ (const CMsgClientUGSGetGlobalStats *message,
+ ProtobufCBuffer *buffer);
+CMsgClientUGSGetGlobalStats *
+ cmsg_client_ugsget_global_stats__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_ugsget_global_stats__free_unpacked
+ (CMsgClientUGSGetGlobalStats *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_ugsget_global_stats_response__get_packed_size
+ (const CMsgClientUGSGetGlobalStatsResponse *message);
+size_t cmsg_client_ugsget_global_stats_response__pack
+ (const CMsgClientUGSGetGlobalStatsResponse *message,
+ uint8_t *out);
+size_t cmsg_client_ugsget_global_stats_response__pack_to_buffer
+ (const CMsgClientUGSGetGlobalStatsResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientUGSGetGlobalStatsResponse *
+ cmsg_client_ugsget_global_stats_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_ugsget_global_stats_response__free_unpacked
+ (CMsgClientUGSGetGlobalStatsResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_redeem_guest_pass__get_packed_size
+ (const CMsgClientRedeemGuestPass *message);
+size_t cmsg_client_redeem_guest_pass__pack
+ (const CMsgClientRedeemGuestPass *message,
+ uint8_t *out);
+size_t cmsg_client_redeem_guest_pass__pack_to_buffer
+ (const CMsgClientRedeemGuestPass *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRedeemGuestPass *
+ cmsg_client_redeem_guest_pass__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_redeem_guest_pass__free_unpacked
+ (CMsgClientRedeemGuestPass *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_redeem_guest_pass_response__get_packed_size
+ (const CMsgClientRedeemGuestPassResponse *message);
+size_t cmsg_client_redeem_guest_pass_response__pack
+ (const CMsgClientRedeemGuestPassResponse *message,
+ uint8_t *out);
+size_t cmsg_client_redeem_guest_pass_response__pack_to_buffer
+ (const CMsgClientRedeemGuestPassResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRedeemGuestPassResponse *
+ cmsg_client_redeem_guest_pass_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_redeem_guest_pass_response__free_unpacked
+ (CMsgClientRedeemGuestPassResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_get_clan_activity_counts__get_packed_size
+ (const CMsgClientGetClanActivityCounts *message);
+size_t cmsg_client_get_clan_activity_counts__pack
+ (const CMsgClientGetClanActivityCounts *message,
+ uint8_t *out);
+size_t cmsg_client_get_clan_activity_counts__pack_to_buffer
+ (const CMsgClientGetClanActivityCounts *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGetClanActivityCounts *
+ cmsg_client_get_clan_activity_counts__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_get_clan_activity_counts__free_unpacked
+ (CMsgClientGetClanActivityCounts *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_get_clan_activity_counts_response__get_packed_size
+ (const CMsgClientGetClanActivityCountsResponse *message);
+size_t cmsg_client_get_clan_activity_counts_response__pack
+ (const CMsgClientGetClanActivityCountsResponse *message,
+ uint8_t *out);
+size_t cmsg_client_get_clan_activity_counts_response__pack_to_buffer
+ (const CMsgClientGetClanActivityCountsResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGetClanActivityCountsResponse *
+ cmsg_client_get_clan_activity_counts_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_get_clan_activity_counts_response__free_unpacked
+ (CMsgClientGetClanActivityCountsResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_ogsreport_string__get_packed_size
+ (const CMsgClientOGSReportString *message);
+size_t cmsg_client_ogsreport_string__pack
+ (const CMsgClientOGSReportString *message,
+ uint8_t *out);
+size_t cmsg_client_ogsreport_string__pack_to_buffer
+ (const CMsgClientOGSReportString *message,
+ ProtobufCBuffer *buffer);
+CMsgClientOGSReportString *
+ cmsg_client_ogsreport_string__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_ogsreport_string__free_unpacked
+ (CMsgClientOGSReportString *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_ogsreport_bug__get_packed_size
+ (const CMsgClientOGSReportBug *message);
+size_t cmsg_client_ogsreport_bug__pack
+ (const CMsgClientOGSReportBug *message,
+ uint8_t *out);
+size_t cmsg_client_ogsreport_bug__pack_to_buffer
+ (const CMsgClientOGSReportBug *message,
+ ProtobufCBuffer *buffer);
+CMsgClientOGSReportBug *
+ cmsg_client_ogsreport_bug__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_ogsreport_bug__free_unpacked
+ (CMsgClientOGSReportBug *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_sent_logs__get_packed_size
+ (const CMsgClientSentLogs *message);
+size_t cmsg_client_sent_logs__pack
+ (const CMsgClientSentLogs *message,
+ uint8_t *out);
+size_t cmsg_client_sent_logs__pack_to_buffer
+ (const CMsgClientSentLogs *message,
+ ProtobufCBuffer *buffer);
+CMsgClientSentLogs *
+ cmsg_client_sent_logs__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_sent_logs__free_unpacked
+ (CMsgClientSentLogs *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_gcclient__get_packed_size
+ (const CMsgGCClient *message);
+size_t cmsg_gcclient__pack
+ (const CMsgGCClient *message,
+ uint8_t *out);
+size_t cmsg_gcclient__pack_to_buffer
+ (const CMsgGCClient *message,
+ ProtobufCBuffer *buffer);
+CMsgGCClient *
+ cmsg_gcclient__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_gcclient__free_unpacked
+ (CMsgGCClient *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_request_free_license__get_packed_size
+ (const CMsgClientRequestFreeLicense *message);
+size_t cmsg_client_request_free_license__pack
+ (const CMsgClientRequestFreeLicense *message,
+ uint8_t *out);
+size_t cmsg_client_request_free_license__pack_to_buffer
+ (const CMsgClientRequestFreeLicense *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestFreeLicense *
+ cmsg_client_request_free_license__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_request_free_license__free_unpacked
+ (CMsgClientRequestFreeLicense *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_request_free_license_response__get_packed_size
+ (const CMsgClientRequestFreeLicenseResponse *message);
+size_t cmsg_client_request_free_license_response__pack
+ (const CMsgClientRequestFreeLicenseResponse *message,
+ uint8_t *out);
+size_t cmsg_client_request_free_license_response__pack_to_buffer
+ (const CMsgClientRequestFreeLicenseResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestFreeLicenseResponse *
+ cmsg_client_request_free_license_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_request_free_license_response__free_unpacked
+ (CMsgClientRequestFreeLicenseResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_drmdownload_request_with_crash_data__get_packed_size
+ (const CMsgDRMDownloadRequestWithCrashData *message);
+size_t cmsg_drmdownload_request_with_crash_data__pack
+ (const CMsgDRMDownloadRequestWithCrashData *message,
+ uint8_t *out);
+size_t cmsg_drmdownload_request_with_crash_data__pack_to_buffer
+ (const CMsgDRMDownloadRequestWithCrashData *message,
+ ProtobufCBuffer *buffer);
+CMsgDRMDownloadRequestWithCrashData *
+ cmsg_drmdownload_request_with_crash_data__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_drmdownload_request_with_crash_data__free_unpacked
+ (CMsgDRMDownloadRequestWithCrashData *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_drmdownload_response__get_packed_size
+ (const CMsgDRMDownloadResponse *message);
+size_t cmsg_drmdownload_response__pack
+ (const CMsgDRMDownloadResponse *message,
+ uint8_t *out);
+size_t cmsg_drmdownload_response__pack_to_buffer
+ (const CMsgDRMDownloadResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgDRMDownloadResponse *
+ cmsg_drmdownload_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_drmdownload_response__free_unpacked
+ (CMsgDRMDownloadResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_drmfinal_result__get_packed_size
+ (const CMsgDRMFinalResult *message);
+size_t cmsg_drmfinal_result__pack
+ (const CMsgDRMFinalResult *message,
+ uint8_t *out);
+size_t cmsg_drmfinal_result__pack_to_buffer
+ (const CMsgDRMFinalResult *message,
+ ProtobufCBuffer *buffer);
+CMsgDRMFinalResult *
+ cmsg_drmfinal_result__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_drmfinal_result__free_unpacked
+ (CMsgDRMFinalResult *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_dpcheck_special_survey__get_packed_size
+ (const CMsgClientDPCheckSpecialSurvey *message);
+size_t cmsg_client_dpcheck_special_survey__pack
+ (const CMsgClientDPCheckSpecialSurvey *message,
+ uint8_t *out);
+size_t cmsg_client_dpcheck_special_survey__pack_to_buffer
+ (const CMsgClientDPCheckSpecialSurvey *message,
+ ProtobufCBuffer *buffer);
+CMsgClientDPCheckSpecialSurvey *
+ cmsg_client_dpcheck_special_survey__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_dpcheck_special_survey__free_unpacked
+ (CMsgClientDPCheckSpecialSurvey *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_dpcheck_special_survey_response__get_packed_size
+ (const CMsgClientDPCheckSpecialSurveyResponse *message);
+size_t cmsg_client_dpcheck_special_survey_response__pack
+ (const CMsgClientDPCheckSpecialSurveyResponse *message,
+ uint8_t *out);
+size_t cmsg_client_dpcheck_special_survey_response__pack_to_buffer
+ (const CMsgClientDPCheckSpecialSurveyResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientDPCheckSpecialSurveyResponse *
+ cmsg_client_dpcheck_special_survey_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_dpcheck_special_survey_response__free_unpacked
+ (CMsgClientDPCheckSpecialSurveyResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_dpsend_special_survey_response__get_packed_size
+ (const CMsgClientDPSendSpecialSurveyResponse *message);
+size_t cmsg_client_dpsend_special_survey_response__pack
+ (const CMsgClientDPSendSpecialSurveyResponse *message,
+ uint8_t *out);
+size_t cmsg_client_dpsend_special_survey_response__pack_to_buffer
+ (const CMsgClientDPSendSpecialSurveyResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientDPSendSpecialSurveyResponse *
+ cmsg_client_dpsend_special_survey_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_dpsend_special_survey_response__free_unpacked
+ (CMsgClientDPSendSpecialSurveyResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_dpsend_special_survey_response_reply__get_packed_size
+ (const CMsgClientDPSendSpecialSurveyResponseReply *message);
+size_t cmsg_client_dpsend_special_survey_response_reply__pack
+ (const CMsgClientDPSendSpecialSurveyResponseReply *message,
+ uint8_t *out);
+size_t cmsg_client_dpsend_special_survey_response_reply__pack_to_buffer
+ (const CMsgClientDPSendSpecialSurveyResponseReply *message,
+ ProtobufCBuffer *buffer);
+CMsgClientDPSendSpecialSurveyResponseReply *
+ cmsg_client_dpsend_special_survey_response_reply__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_dpsend_special_survey_response_reply__free_unpacked
+ (CMsgClientDPSendSpecialSurveyResponseReply *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_request_forgotten_password_email__get_packed_size
+ (const CMsgClientRequestForgottenPasswordEmail *message);
+size_t cmsg_client_request_forgotten_password_email__pack
+ (const CMsgClientRequestForgottenPasswordEmail *message,
+ uint8_t *out);
+size_t cmsg_client_request_forgotten_password_email__pack_to_buffer
+ (const CMsgClientRequestForgottenPasswordEmail *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestForgottenPasswordEmail *
+ cmsg_client_request_forgotten_password_email__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_request_forgotten_password_email__free_unpacked
+ (CMsgClientRequestForgottenPasswordEmail *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_request_forgotten_password_email_response__get_packed_size
+ (const CMsgClientRequestForgottenPasswordEmailResponse *message);
+size_t cmsg_client_request_forgotten_password_email_response__pack
+ (const CMsgClientRequestForgottenPasswordEmailResponse *message,
+ uint8_t *out);
+size_t cmsg_client_request_forgotten_password_email_response__pack_to_buffer
+ (const CMsgClientRequestForgottenPasswordEmailResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestForgottenPasswordEmailResponse *
+ cmsg_client_request_forgotten_password_email_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_request_forgotten_password_email_response__free_unpacked
+ (CMsgClientRequestForgottenPasswordEmailResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_item_announcements__get_packed_size
+ (const CMsgClientItemAnnouncements *message);
+size_t cmsg_client_item_announcements__pack
+ (const CMsgClientItemAnnouncements *message,
+ uint8_t *out);
+size_t cmsg_client_item_announcements__pack_to_buffer
+ (const CMsgClientItemAnnouncements *message,
+ ProtobufCBuffer *buffer);
+CMsgClientItemAnnouncements *
+ cmsg_client_item_announcements__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_item_announcements__free_unpacked
+ (CMsgClientItemAnnouncements *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_request_item_announcements__get_packed_size
+ (const CMsgClientRequestItemAnnouncements *message);
+size_t cmsg_client_request_item_announcements__pack
+ (const CMsgClientRequestItemAnnouncements *message,
+ uint8_t *out);
+size_t cmsg_client_request_item_announcements__pack_to_buffer
+ (const CMsgClientRequestItemAnnouncements *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestItemAnnouncements *
+ cmsg_client_request_item_announcements__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_request_item_announcements__free_unpacked
+ (CMsgClientRequestItemAnnouncements *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_user_notifications__get_packed_size
+ (const CMsgClientUserNotifications *message);
+size_t cmsg_client_user_notifications__pack
+ (const CMsgClientUserNotifications *message,
+ uint8_t *out);
+size_t cmsg_client_user_notifications__pack_to_buffer
+ (const CMsgClientUserNotifications *message,
+ ProtobufCBuffer *buffer);
+CMsgClientUserNotifications *
+ cmsg_client_user_notifications__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_user_notifications__free_unpacked
+ (CMsgClientUserNotifications *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_comment_notifications__get_packed_size
+ (const CMsgClientCommentNotifications *message);
+size_t cmsg_client_comment_notifications__pack
+ (const CMsgClientCommentNotifications *message,
+ uint8_t *out);
+size_t cmsg_client_comment_notifications__pack_to_buffer
+ (const CMsgClientCommentNotifications *message,
+ ProtobufCBuffer *buffer);
+CMsgClientCommentNotifications *
+ cmsg_client_comment_notifications__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_comment_notifications__free_unpacked
+ (CMsgClientCommentNotifications *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_request_comment_notifications__get_packed_size
+ (const CMsgClientRequestCommentNotifications *message);
+size_t cmsg_client_request_comment_notifications__pack
+ (const CMsgClientRequestCommentNotifications *message,
+ uint8_t *out);
+size_t cmsg_client_request_comment_notifications__pack_to_buffer
+ (const CMsgClientRequestCommentNotifications *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestCommentNotifications *
+ cmsg_client_request_comment_notifications__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_request_comment_notifications__free_unpacked
+ (CMsgClientRequestCommentNotifications *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_offline_message_notification__get_packed_size
+ (const CMsgClientOfflineMessageNotification *message);
+size_t cmsg_client_offline_message_notification__pack
+ (const CMsgClientOfflineMessageNotification *message,
+ uint8_t *out);
+size_t cmsg_client_offline_message_notification__pack_to_buffer
+ (const CMsgClientOfflineMessageNotification *message,
+ ProtobufCBuffer *buffer);
+CMsgClientOfflineMessageNotification *
+ cmsg_client_offline_message_notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_offline_message_notification__free_unpacked
+ (CMsgClientOfflineMessageNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_request_offline_message_count__get_packed_size
+ (const CMsgClientRequestOfflineMessageCount *message);
+size_t cmsg_client_request_offline_message_count__pack
+ (const CMsgClientRequestOfflineMessageCount *message,
+ uint8_t *out);
+size_t cmsg_client_request_offline_message_count__pack_to_buffer
+ (const CMsgClientRequestOfflineMessageCount *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestOfflineMessageCount *
+ cmsg_client_request_offline_message_count__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_request_offline_message_count__free_unpacked
+ (CMsgClientRequestOfflineMessageCount *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_chat_get_friend_message_history__get_packed_size
+ (const CMsgClientChatGetFriendMessageHistory *message);
+size_t cmsg_client_chat_get_friend_message_history__pack
+ (const CMsgClientChatGetFriendMessageHistory *message,
+ uint8_t *out);
+size_t cmsg_client_chat_get_friend_message_history__pack_to_buffer
+ (const CMsgClientChatGetFriendMessageHistory *message,
+ ProtobufCBuffer *buffer);
+CMsgClientChatGetFriendMessageHistory *
+ cmsg_client_chat_get_friend_message_history__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_chat_get_friend_message_history__free_unpacked
+ (CMsgClientChatGetFriendMessageHistory *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_chat_get_friend_message_history_response__get_packed_size
+ (const CMsgClientChatGetFriendMessageHistoryResponse *message);
+size_t cmsg_client_chat_get_friend_message_history_response__pack
+ (const CMsgClientChatGetFriendMessageHistoryResponse *message,
+ uint8_t *out);
+size_t cmsg_client_chat_get_friend_message_history_response__pack_to_buffer
+ (const CMsgClientChatGetFriendMessageHistoryResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientChatGetFriendMessageHistoryResponse *
+ cmsg_client_chat_get_friend_message_history_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_chat_get_friend_message_history_response__free_unpacked
+ (CMsgClientChatGetFriendMessageHistoryResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_chat_get_friend_message_history_for_offline_messages__get_packed_size
+ (const CMsgClientChatGetFriendMessageHistoryForOfflineMessages *message);
+size_t cmsg_client_chat_get_friend_message_history_for_offline_messages__pack
+ (const CMsgClientChatGetFriendMessageHistoryForOfflineMessages *message,
+ uint8_t *out);
+size_t cmsg_client_chat_get_friend_message_history_for_offline_messages__pack_to_buffer
+ (const CMsgClientChatGetFriendMessageHistoryForOfflineMessages *message,
+ ProtobufCBuffer *buffer);
+CMsgClientChatGetFriendMessageHistoryForOfflineMessages *
+ cmsg_client_chat_get_friend_message_history_for_offline_messages__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_chat_get_friend_message_history_for_offline_messages__free_unpacked
+ (CMsgClientChatGetFriendMessageHistoryForOfflineMessages *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_fsget_friends_steam_levels__get_packed_size
+ (const CMsgClientFSGetFriendsSteamLevels *message);
+size_t cmsg_client_fsget_friends_steam_levels__pack
+ (const CMsgClientFSGetFriendsSteamLevels *message,
+ uint8_t *out);
+size_t cmsg_client_fsget_friends_steam_levels__pack_to_buffer
+ (const CMsgClientFSGetFriendsSteamLevels *message,
+ ProtobufCBuffer *buffer);
+CMsgClientFSGetFriendsSteamLevels *
+ cmsg_client_fsget_friends_steam_levels__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_fsget_friends_steam_levels__free_unpacked
+ (CMsgClientFSGetFriendsSteamLevels *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_fsget_friends_steam_levels_response__get_packed_size
+ (const CMsgClientFSGetFriendsSteamLevelsResponse *message);
+size_t cmsg_client_fsget_friends_steam_levels_response__pack
+ (const CMsgClientFSGetFriendsSteamLevelsResponse *message,
+ uint8_t *out);
+size_t cmsg_client_fsget_friends_steam_levels_response__pack_to_buffer
+ (const CMsgClientFSGetFriendsSteamLevelsResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientFSGetFriendsSteamLevelsResponse *
+ cmsg_client_fsget_friends_steam_levels_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_fsget_friends_steam_levels_response__free_unpacked
+ (CMsgClientFSGetFriendsSteamLevelsResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_email_addr_info__get_packed_size
+ (const CMsgClientEmailAddrInfo *message);
+size_t cmsg_client_email_addr_info__pack
+ (const CMsgClientEmailAddrInfo *message,
+ uint8_t *out);
+size_t cmsg_client_email_addr_info__pack_to_buffer
+ (const CMsgClientEmailAddrInfo *message,
+ ProtobufCBuffer *buffer);
+CMsgClientEmailAddrInfo *
+ cmsg_client_email_addr_info__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_email_addr_info__free_unpacked
+ (CMsgClientEmailAddrInfo *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_creitem_vote_summary__get_packed_size
+ (const CMsgCREItemVoteSummary *message);
+size_t cmsg_creitem_vote_summary__pack
+ (const CMsgCREItemVoteSummary *message,
+ uint8_t *out);
+size_t cmsg_creitem_vote_summary__pack_to_buffer
+ (const CMsgCREItemVoteSummary *message,
+ ProtobufCBuffer *buffer);
+CMsgCREItemVoteSummary *
+ cmsg_creitem_vote_summary__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_creitem_vote_summary__free_unpacked
+ (CMsgCREItemVoteSummary *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_creitem_vote_summary_response__get_packed_size
+ (const CMsgCREItemVoteSummaryResponse *message);
+size_t cmsg_creitem_vote_summary_response__pack
+ (const CMsgCREItemVoteSummaryResponse *message,
+ uint8_t *out);
+size_t cmsg_creitem_vote_summary_response__pack_to_buffer
+ (const CMsgCREItemVoteSummaryResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgCREItemVoteSummaryResponse *
+ cmsg_creitem_vote_summary_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_creitem_vote_summary_response__free_unpacked
+ (CMsgCREItemVoteSummaryResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_creupdate_user_published_item_vote__get_packed_size
+ (const CMsgCREUpdateUserPublishedItemVote *message);
+size_t cmsg_creupdate_user_published_item_vote__pack
+ (const CMsgCREUpdateUserPublishedItemVote *message,
+ uint8_t *out);
+size_t cmsg_creupdate_user_published_item_vote__pack_to_buffer
+ (const CMsgCREUpdateUserPublishedItemVote *message,
+ ProtobufCBuffer *buffer);
+CMsgCREUpdateUserPublishedItemVote *
+ cmsg_creupdate_user_published_item_vote__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_creupdate_user_published_item_vote__free_unpacked
+ (CMsgCREUpdateUserPublishedItemVote *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_creupdate_user_published_item_vote_response__get_packed_size
+ (const CMsgCREUpdateUserPublishedItemVoteResponse *message);
+size_t cmsg_creupdate_user_published_item_vote_response__pack
+ (const CMsgCREUpdateUserPublishedItemVoteResponse *message,
+ uint8_t *out);
+size_t cmsg_creupdate_user_published_item_vote_response__pack_to_buffer
+ (const CMsgCREUpdateUserPublishedItemVoteResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgCREUpdateUserPublishedItemVoteResponse *
+ cmsg_creupdate_user_published_item_vote_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_creupdate_user_published_item_vote_response__free_unpacked
+ (CMsgCREUpdateUserPublishedItemVoteResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_creget_user_published_item_vote_details__get_packed_size
+ (const CMsgCREGetUserPublishedItemVoteDetails *message);
+size_t cmsg_creget_user_published_item_vote_details__pack
+ (const CMsgCREGetUserPublishedItemVoteDetails *message,
+ uint8_t *out);
+size_t cmsg_creget_user_published_item_vote_details__pack_to_buffer
+ (const CMsgCREGetUserPublishedItemVoteDetails *message,
+ ProtobufCBuffer *buffer);
+CMsgCREGetUserPublishedItemVoteDetails *
+ cmsg_creget_user_published_item_vote_details__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_creget_user_published_item_vote_details__free_unpacked
+ (CMsgCREGetUserPublishedItemVoteDetails *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_creget_user_published_item_vote_details_response__get_packed_size
+ (const CMsgCREGetUserPublishedItemVoteDetailsResponse *message);
+size_t cmsg_creget_user_published_item_vote_details_response__pack
+ (const CMsgCREGetUserPublishedItemVoteDetailsResponse *message,
+ uint8_t *out);
+size_t cmsg_creget_user_published_item_vote_details_response__pack_to_buffer
+ (const CMsgCREGetUserPublishedItemVoteDetailsResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgCREGetUserPublishedItemVoteDetailsResponse *
+ cmsg_creget_user_published_item_vote_details_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_creget_user_published_item_vote_details_response__free_unpacked
+ (CMsgCREGetUserPublishedItemVoteDetailsResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_fsget_follower_count__get_packed_size
+ (const CMsgFSGetFollowerCount *message);
+size_t cmsg_fsget_follower_count__pack
+ (const CMsgFSGetFollowerCount *message,
+ uint8_t *out);
+size_t cmsg_fsget_follower_count__pack_to_buffer
+ (const CMsgFSGetFollowerCount *message,
+ ProtobufCBuffer *buffer);
+CMsgFSGetFollowerCount *
+ cmsg_fsget_follower_count__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_fsget_follower_count__free_unpacked
+ (CMsgFSGetFollowerCount *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_fsget_follower_count_response__get_packed_size
+ (const CMsgFSGetFollowerCountResponse *message);
+size_t cmsg_fsget_follower_count_response__pack
+ (const CMsgFSGetFollowerCountResponse *message,
+ uint8_t *out);
+size_t cmsg_fsget_follower_count_response__pack_to_buffer
+ (const CMsgFSGetFollowerCountResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgFSGetFollowerCountResponse *
+ cmsg_fsget_follower_count_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_fsget_follower_count_response__free_unpacked
+ (CMsgFSGetFollowerCountResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_fsget_is_following__get_packed_size
+ (const CMsgFSGetIsFollowing *message);
+size_t cmsg_fsget_is_following__pack
+ (const CMsgFSGetIsFollowing *message,
+ uint8_t *out);
+size_t cmsg_fsget_is_following__pack_to_buffer
+ (const CMsgFSGetIsFollowing *message,
+ ProtobufCBuffer *buffer);
+CMsgFSGetIsFollowing *
+ cmsg_fsget_is_following__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_fsget_is_following__free_unpacked
+ (CMsgFSGetIsFollowing *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_fsget_is_following_response__get_packed_size
+ (const CMsgFSGetIsFollowingResponse *message);
+size_t cmsg_fsget_is_following_response__pack
+ (const CMsgFSGetIsFollowingResponse *message,
+ uint8_t *out);
+size_t cmsg_fsget_is_following_response__pack_to_buffer
+ (const CMsgFSGetIsFollowingResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgFSGetIsFollowingResponse *
+ cmsg_fsget_is_following_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_fsget_is_following_response__free_unpacked
+ (CMsgFSGetIsFollowingResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_fsenumerate_following_list__get_packed_size
+ (const CMsgFSEnumerateFollowingList *message);
+size_t cmsg_fsenumerate_following_list__pack
+ (const CMsgFSEnumerateFollowingList *message,
+ uint8_t *out);
+size_t cmsg_fsenumerate_following_list__pack_to_buffer
+ (const CMsgFSEnumerateFollowingList *message,
+ ProtobufCBuffer *buffer);
+CMsgFSEnumerateFollowingList *
+ cmsg_fsenumerate_following_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_fsenumerate_following_list__free_unpacked
+ (CMsgFSEnumerateFollowingList *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_fsenumerate_following_list_response__get_packed_size
+ (const CMsgFSEnumerateFollowingListResponse *message);
+size_t cmsg_fsenumerate_following_list_response__pack
+ (const CMsgFSEnumerateFollowingListResponse *message,
+ uint8_t *out);
+size_t cmsg_fsenumerate_following_list_response__pack_to_buffer
+ (const CMsgFSEnumerateFollowingListResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgFSEnumerateFollowingListResponse *
+ cmsg_fsenumerate_following_list_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_fsenumerate_following_list_response__free_unpacked
+ (CMsgFSEnumerateFollowingListResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_dpget_number_of_current_players__get_packed_size
+ (const CMsgDPGetNumberOfCurrentPlayers *message);
+size_t cmsg_dpget_number_of_current_players__pack
+ (const CMsgDPGetNumberOfCurrentPlayers *message,
+ uint8_t *out);
+size_t cmsg_dpget_number_of_current_players__pack_to_buffer
+ (const CMsgDPGetNumberOfCurrentPlayers *message,
+ ProtobufCBuffer *buffer);
+CMsgDPGetNumberOfCurrentPlayers *
+ cmsg_dpget_number_of_current_players__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_dpget_number_of_current_players__free_unpacked
+ (CMsgDPGetNumberOfCurrentPlayers *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_dpget_number_of_current_players_response__get_packed_size
+ (const CMsgDPGetNumberOfCurrentPlayersResponse *message);
+size_t cmsg_dpget_number_of_current_players_response__pack
+ (const CMsgDPGetNumberOfCurrentPlayersResponse *message,
+ uint8_t *out);
+size_t cmsg_dpget_number_of_current_players_response__pack_to_buffer
+ (const CMsgDPGetNumberOfCurrentPlayersResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgDPGetNumberOfCurrentPlayersResponse *
+ cmsg_dpget_number_of_current_players_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_dpget_number_of_current_players_response__free_unpacked
+ (CMsgDPGetNumberOfCurrentPlayersResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_friend_user_status_published__get_packed_size
+ (const CMsgClientFriendUserStatusPublished *message);
+size_t cmsg_client_friend_user_status_published__pack
+ (const CMsgClientFriendUserStatusPublished *message,
+ uint8_t *out);
+size_t cmsg_client_friend_user_status_published__pack_to_buffer
+ (const CMsgClientFriendUserStatusPublished *message,
+ ProtobufCBuffer *buffer);
+CMsgClientFriendUserStatusPublished *
+ cmsg_client_friend_user_status_published__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_friend_user_status_published__free_unpacked
+ (CMsgClientFriendUserStatusPublished *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_service_method_legacy__get_packed_size
+ (const CMsgClientServiceMethodLegacy *message);
+size_t cmsg_client_service_method_legacy__pack
+ (const CMsgClientServiceMethodLegacy *message,
+ uint8_t *out);
+size_t cmsg_client_service_method_legacy__pack_to_buffer
+ (const CMsgClientServiceMethodLegacy *message,
+ ProtobufCBuffer *buffer);
+CMsgClientServiceMethodLegacy *
+ cmsg_client_service_method_legacy__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_service_method_legacy__free_unpacked
+ (CMsgClientServiceMethodLegacy *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_service_method_legacy_response__get_packed_size
+ (const CMsgClientServiceMethodLegacyResponse *message);
+size_t cmsg_client_service_method_legacy_response__pack
+ (const CMsgClientServiceMethodLegacyResponse *message,
+ uint8_t *out);
+size_t cmsg_client_service_method_legacy_response__pack_to_buffer
+ (const CMsgClientServiceMethodLegacyResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientServiceMethodLegacyResponse *
+ cmsg_client_service_method_legacy_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_service_method_legacy_response__free_unpacked
+ (CMsgClientServiceMethodLegacyResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_uimode__get_packed_size
+ (const CMsgClientUIMode *message);
+size_t cmsg_client_uimode__pack
+ (const CMsgClientUIMode *message,
+ uint8_t *out);
+size_t cmsg_client_uimode__pack_to_buffer
+ (const CMsgClientUIMode *message,
+ ProtobufCBuffer *buffer);
+CMsgClientUIMode *
+ cmsg_client_uimode__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_uimode__free_unpacked
+ (CMsgClientUIMode *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_vanity_urlchanged_notification__get_packed_size
+ (const CMsgClientVanityURLChangedNotification *message);
+size_t cmsg_client_vanity_urlchanged_notification__pack
+ (const CMsgClientVanityURLChangedNotification *message,
+ uint8_t *out);
+size_t cmsg_client_vanity_urlchanged_notification__pack_to_buffer
+ (const CMsgClientVanityURLChangedNotification *message,
+ ProtobufCBuffer *buffer);
+CMsgClientVanityURLChangedNotification *
+ cmsg_client_vanity_urlchanged_notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_vanity_urlchanged_notification__free_unpacked
+ (CMsgClientVanityURLChangedNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_authorize_local_device_request__get_packed_size
+ (const CMsgClientAuthorizeLocalDeviceRequest *message);
+size_t cmsg_client_authorize_local_device_request__pack
+ (const CMsgClientAuthorizeLocalDeviceRequest *message,
+ uint8_t *out);
+size_t cmsg_client_authorize_local_device_request__pack_to_buffer
+ (const CMsgClientAuthorizeLocalDeviceRequest *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAuthorizeLocalDeviceRequest *
+ cmsg_client_authorize_local_device_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_authorize_local_device_request__free_unpacked
+ (CMsgClientAuthorizeLocalDeviceRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_authorize_local_device__get_packed_size
+ (const CMsgClientAuthorizeLocalDevice *message);
+size_t cmsg_client_authorize_local_device__pack
+ (const CMsgClientAuthorizeLocalDevice *message,
+ uint8_t *out);
+size_t cmsg_client_authorize_local_device__pack_to_buffer
+ (const CMsgClientAuthorizeLocalDevice *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAuthorizeLocalDevice *
+ cmsg_client_authorize_local_device__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_authorize_local_device__free_unpacked
+ (CMsgClientAuthorizeLocalDevice *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_authorize_local_device_notification__get_packed_size
+ (const CMsgClientAuthorizeLocalDeviceNotification *message);
+size_t cmsg_client_authorize_local_device_notification__pack
+ (const CMsgClientAuthorizeLocalDeviceNotification *message,
+ uint8_t *out);
+size_t cmsg_client_authorize_local_device_notification__pack_to_buffer
+ (const CMsgClientAuthorizeLocalDeviceNotification *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAuthorizeLocalDeviceNotification *
+ cmsg_client_authorize_local_device_notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_authorize_local_device_notification__free_unpacked
+ (CMsgClientAuthorizeLocalDeviceNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_deauthorize_device_request__get_packed_size
+ (const CMsgClientDeauthorizeDeviceRequest *message);
+size_t cmsg_client_deauthorize_device_request__pack
+ (const CMsgClientDeauthorizeDeviceRequest *message,
+ uint8_t *out);
+size_t cmsg_client_deauthorize_device_request__pack_to_buffer
+ (const CMsgClientDeauthorizeDeviceRequest *message,
+ ProtobufCBuffer *buffer);
+CMsgClientDeauthorizeDeviceRequest *
+ cmsg_client_deauthorize_device_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_deauthorize_device_request__free_unpacked
+ (CMsgClientDeauthorizeDeviceRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_deauthorize_device__get_packed_size
+ (const CMsgClientDeauthorizeDevice *message);
+size_t cmsg_client_deauthorize_device__pack
+ (const CMsgClientDeauthorizeDevice *message,
+ uint8_t *out);
+size_t cmsg_client_deauthorize_device__pack_to_buffer
+ (const CMsgClientDeauthorizeDevice *message,
+ ProtobufCBuffer *buffer);
+CMsgClientDeauthorizeDevice *
+ cmsg_client_deauthorize_device__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_deauthorize_device__free_unpacked
+ (CMsgClientDeauthorizeDevice *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_use_local_device_authorizations__get_packed_size
+ (const CMsgClientUseLocalDeviceAuthorizations *message);
+size_t cmsg_client_use_local_device_authorizations__pack
+ (const CMsgClientUseLocalDeviceAuthorizations *message,
+ uint8_t *out);
+size_t cmsg_client_use_local_device_authorizations__pack_to_buffer
+ (const CMsgClientUseLocalDeviceAuthorizations *message,
+ ProtobufCBuffer *buffer);
+CMsgClientUseLocalDeviceAuthorizations *
+ cmsg_client_use_local_device_authorizations__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_use_local_device_authorizations__free_unpacked
+ (CMsgClientUseLocalDeviceAuthorizations *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_get_authorized_devices__get_packed_size
+ (const CMsgClientGetAuthorizedDevices *message);
+size_t cmsg_client_get_authorized_devices__pack
+ (const CMsgClientGetAuthorizedDevices *message,
+ uint8_t *out);
+size_t cmsg_client_get_authorized_devices__pack_to_buffer
+ (const CMsgClientGetAuthorizedDevices *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGetAuthorizedDevices *
+ cmsg_client_get_authorized_devices__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_get_authorized_devices__free_unpacked
+ (CMsgClientGetAuthorizedDevices *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_get_authorized_devices_response__get_packed_size
+ (const CMsgClientGetAuthorizedDevicesResponse *message);
+size_t cmsg_client_get_authorized_devices_response__pack
+ (const CMsgClientGetAuthorizedDevicesResponse *message,
+ uint8_t *out);
+size_t cmsg_client_get_authorized_devices_response__pack_to_buffer
+ (const CMsgClientGetAuthorizedDevicesResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGetAuthorizedDevicesResponse *
+ cmsg_client_get_authorized_devices_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_get_authorized_devices_response__free_unpacked
+ (CMsgClientGetAuthorizedDevicesResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_shared_library_lock_status__get_packed_size
+ (const CMsgClientSharedLibraryLockStatus *message);
+size_t cmsg_client_shared_library_lock_status__pack
+ (const CMsgClientSharedLibraryLockStatus *message,
+ uint8_t *out);
+size_t cmsg_client_shared_library_lock_status__pack_to_buffer
+ (const CMsgClientSharedLibraryLockStatus *message,
+ ProtobufCBuffer *buffer);
+CMsgClientSharedLibraryLockStatus *
+ cmsg_client_shared_library_lock_status__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_shared_library_lock_status__free_unpacked
+ (CMsgClientSharedLibraryLockStatus *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_shared_library_stop_playing__get_packed_size
+ (const CMsgClientSharedLibraryStopPlaying *message);
+size_t cmsg_client_shared_library_stop_playing__pack
+ (const CMsgClientSharedLibraryStopPlaying *message,
+ uint8_t *out);
+size_t cmsg_client_shared_library_stop_playing__pack_to_buffer
+ (const CMsgClientSharedLibraryStopPlaying *message,
+ ProtobufCBuffer *buffer);
+CMsgClientSharedLibraryStopPlaying *
+ cmsg_client_shared_library_stop_playing__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_shared_library_stop_playing__free_unpacked
+ (CMsgClientSharedLibraryStopPlaying *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_service_call__get_packed_size
+ (const CMsgClientServiceCall *message);
+size_t cmsg_client_service_call__pack
+ (const CMsgClientServiceCall *message,
+ uint8_t *out);
+size_t cmsg_client_service_call__pack_to_buffer
+ (const CMsgClientServiceCall *message,
+ ProtobufCBuffer *buffer);
+CMsgClientServiceCall *
+ cmsg_client_service_call__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_service_call__free_unpacked
+ (CMsgClientServiceCall *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_service_module__get_packed_size
+ (const CMsgClientServiceModule *message);
+size_t cmsg_client_service_module__pack
+ (const CMsgClientServiceModule *message,
+ uint8_t *out);
+size_t cmsg_client_service_module__pack_to_buffer
+ (const CMsgClientServiceModule *message,
+ ProtobufCBuffer *buffer);
+CMsgClientServiceModule *
+ cmsg_client_service_module__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_service_module__free_unpacked
+ (CMsgClientServiceModule *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_service_call_response__get_packed_size
+ (const CMsgClientServiceCallResponse *message);
+size_t cmsg_client_service_call_response__pack
+ (const CMsgClientServiceCallResponse *message,
+ uint8_t *out);
+size_t cmsg_client_service_call_response__pack_to_buffer
+ (const CMsgClientServiceCallResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientServiceCallResponse *
+ cmsg_client_service_call_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_service_call_response__free_unpacked
+ (CMsgClientServiceCallResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_amunlock_h264__get_packed_size
+ (const CMsgAMUnlockH264 *message);
+size_t cmsg_amunlock_h264__pack
+ (const CMsgAMUnlockH264 *message,
+ uint8_t *out);
+size_t cmsg_amunlock_h264__pack_to_buffer
+ (const CMsgAMUnlockH264 *message,
+ ProtobufCBuffer *buffer);
+CMsgAMUnlockH264 *
+ cmsg_amunlock_h264__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_amunlock_h264__free_unpacked
+ (CMsgAMUnlockH264 *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_amunlock_h264_response__get_packed_size
+ (const CMsgAMUnlockH264Response *message);
+size_t cmsg_amunlock_h264_response__pack
+ (const CMsgAMUnlockH264Response *message,
+ uint8_t *out);
+size_t cmsg_amunlock_h264_response__pack_to_buffer
+ (const CMsgAMUnlockH264Response *message,
+ ProtobufCBuffer *buffer);
+CMsgAMUnlockH264Response *
+ cmsg_amunlock_h264_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_amunlock_h264_response__free_unpacked
+ (CMsgAMUnlockH264Response *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_playing_session_state__get_packed_size
+ (const CMsgClientPlayingSessionState *message);
+size_t cmsg_client_playing_session_state__pack
+ (const CMsgClientPlayingSessionState *message,
+ uint8_t *out);
+size_t cmsg_client_playing_session_state__pack_to_buffer
+ (const CMsgClientPlayingSessionState *message,
+ ProtobufCBuffer *buffer);
+CMsgClientPlayingSessionState *
+ cmsg_client_playing_session_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_playing_session_state__free_unpacked
+ (CMsgClientPlayingSessionState *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_kick_playing_session__get_packed_size
+ (const CMsgClientKickPlayingSession *message);
+size_t cmsg_client_kick_playing_session__pack
+ (const CMsgClientKickPlayingSession *message,
+ uint8_t *out);
+size_t cmsg_client_kick_playing_session__pack_to_buffer
+ (const CMsgClientKickPlayingSession *message,
+ ProtobufCBuffer *buffer);
+CMsgClientKickPlayingSession *
+ cmsg_client_kick_playing_session__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_kick_playing_session__free_unpacked
+ (CMsgClientKickPlayingSession *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_voice_call_pre_authorize__get_packed_size
+ (const CMsgClientVoiceCallPreAuthorize *message);
+size_t cmsg_client_voice_call_pre_authorize__pack
+ (const CMsgClientVoiceCallPreAuthorize *message,
+ uint8_t *out);
+size_t cmsg_client_voice_call_pre_authorize__pack_to_buffer
+ (const CMsgClientVoiceCallPreAuthorize *message,
+ ProtobufCBuffer *buffer);
+CMsgClientVoiceCallPreAuthorize *
+ cmsg_client_voice_call_pre_authorize__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_voice_call_pre_authorize__free_unpacked
+ (CMsgClientVoiceCallPreAuthorize *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_voice_call_pre_authorize_response__get_packed_size
+ (const CMsgClientVoiceCallPreAuthorizeResponse *message);
+size_t cmsg_client_voice_call_pre_authorize_response__pack
+ (const CMsgClientVoiceCallPreAuthorizeResponse *message,
+ uint8_t *out);
+size_t cmsg_client_voice_call_pre_authorize_response__pack_to_buffer
+ (const CMsgClientVoiceCallPreAuthorizeResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientVoiceCallPreAuthorizeResponse *
+ cmsg_client_voice_call_pre_authorize_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_voice_call_pre_authorize_response__free_unpacked
+ (CMsgClientVoiceCallPreAuthorizeResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_badge_crafted_notification__get_packed_size
+ (const CMsgBadgeCraftedNotification *message);
+size_t cmsg_badge_crafted_notification__pack
+ (const CMsgBadgeCraftedNotification *message,
+ uint8_t *out);
+size_t cmsg_badge_crafted_notification__pack_to_buffer
+ (const CMsgBadgeCraftedNotification *message,
+ ProtobufCBuffer *buffer);
+CMsgBadgeCraftedNotification *
+ cmsg_badge_crafted_notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_badge_crafted_notification__free_unpacked
+ (CMsgBadgeCraftedNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_start_peer_content_server__get_packed_size
+ (const CMsgClientStartPeerContentServer *message);
+size_t cmsg_client_start_peer_content_server__pack
+ (const CMsgClientStartPeerContentServer *message,
+ uint8_t *out);
+size_t cmsg_client_start_peer_content_server__pack_to_buffer
+ (const CMsgClientStartPeerContentServer *message,
+ ProtobufCBuffer *buffer);
+CMsgClientStartPeerContentServer *
+ cmsg_client_start_peer_content_server__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_start_peer_content_server__free_unpacked
+ (CMsgClientStartPeerContentServer *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_start_peer_content_server_response__get_packed_size
+ (const CMsgClientStartPeerContentServerResponse *message);
+size_t cmsg_client_start_peer_content_server_response__pack
+ (const CMsgClientStartPeerContentServerResponse *message,
+ uint8_t *out);
+size_t cmsg_client_start_peer_content_server_response__pack_to_buffer
+ (const CMsgClientStartPeerContentServerResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientStartPeerContentServerResponse *
+ cmsg_client_start_peer_content_server_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_start_peer_content_server_response__free_unpacked
+ (CMsgClientStartPeerContentServerResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_get_peer_content_info__get_packed_size
+ (const CMsgClientGetPeerContentInfo *message);
+size_t cmsg_client_get_peer_content_info__pack
+ (const CMsgClientGetPeerContentInfo *message,
+ uint8_t *out);
+size_t cmsg_client_get_peer_content_info__pack_to_buffer
+ (const CMsgClientGetPeerContentInfo *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGetPeerContentInfo *
+ cmsg_client_get_peer_content_info__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_get_peer_content_info__free_unpacked
+ (CMsgClientGetPeerContentInfo *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_get_peer_content_info_response__get_packed_size
+ (const CMsgClientGetPeerContentInfoResponse *message);
+size_t cmsg_client_get_peer_content_info_response__pack
+ (const CMsgClientGetPeerContentInfoResponse *message,
+ uint8_t *out);
+size_t cmsg_client_get_peer_content_info_response__pack_to_buffer
+ (const CMsgClientGetPeerContentInfoResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGetPeerContentInfoResponse *
+ cmsg_client_get_peer_content_info_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_get_peer_content_info_response__free_unpacked
+ (CMsgClientGetPeerContentInfoResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*CMsgClientUpdateUserGameInfo_Closure)
+ (const CMsgClientUpdateUserGameInfo *message,
+ void *closure_data);
+typedef void (*CMsgClientRichPresenceUpload_Closure)
+ (const CMsgClientRichPresenceUpload *message,
+ void *closure_data);
+typedef void (*CMsgClientRichPresenceRequest_Closure)
+ (const CMsgClientRichPresenceRequest *message,
+ void *closure_data);
+typedef void (*CMsgClientRichPresenceInfo__RichPresence_Closure)
+ (const CMsgClientRichPresenceInfo__RichPresence *message,
+ void *closure_data);
+typedef void (*CMsgClientRichPresenceInfo_Closure)
+ (const CMsgClientRichPresenceInfo *message,
+ void *closure_data);
+typedef void (*CMsgClientCheckFileSignature_Closure)
+ (const CMsgClientCheckFileSignature *message,
+ void *closure_data);
+typedef void (*CMsgClientCheckFileSignatureResponse_Closure)
+ (const CMsgClientCheckFileSignatureResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientReadMachineAuth_Closure)
+ (const CMsgClientReadMachineAuth *message,
+ void *closure_data);
+typedef void (*CMsgClientReadMachineAuthResponse_Closure)
+ (const CMsgClientReadMachineAuthResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientUpdateMachineAuth_Closure)
+ (const CMsgClientUpdateMachineAuth *message,
+ void *closure_data);
+typedef void (*CMsgClientUpdateMachineAuthResponse_Closure)
+ (const CMsgClientUpdateMachineAuthResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestMachineAuth_Closure)
+ (const CMsgClientRequestMachineAuth *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestMachineAuthResponse_Closure)
+ (const CMsgClientRequestMachineAuthResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientRegisterKey_Closure)
+ (const CMsgClientRegisterKey *message,
+ void *closure_data);
+typedef void (*CMsgClientPurchaseResponse_Closure)
+ (const CMsgClientPurchaseResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientActivateOEMLicense_Closure)
+ (const CMsgClientActivateOEMLicense *message,
+ void *closure_data);
+typedef void (*CMsgClientRegisterOEMMachine_Closure)
+ (const CMsgClientRegisterOEMMachine *message,
+ void *closure_data);
+typedef void (*CMsgClientRegisterOEMMachineResponse_Closure)
+ (const CMsgClientRegisterOEMMachineResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientPurchaseWithMachineID_Closure)
+ (const CMsgClientPurchaseWithMachineID *message,
+ void *closure_data);
+typedef void (*CMsgTradingInitiateTradeRequest_Closure)
+ (const CMsgTradingInitiateTradeRequest *message,
+ void *closure_data);
+typedef void (*CMsgTradingInitiateTradeResponse_Closure)
+ (const CMsgTradingInitiateTradeResponse *message,
+ void *closure_data);
+typedef void (*CMsgTradingCancelTradeRequest_Closure)
+ (const CMsgTradingCancelTradeRequest *message,
+ void *closure_data);
+typedef void (*CMsgTradingStartSession_Closure)
+ (const CMsgTradingStartSession *message,
+ void *closure_data);
+typedef void (*CMsgClientGetCDNAuthToken_Closure)
+ (const CMsgClientGetCDNAuthToken *message,
+ void *closure_data);
+typedef void (*CMsgClientGetDepotDecryptionKey_Closure)
+ (const CMsgClientGetDepotDecryptionKey *message,
+ void *closure_data);
+typedef void (*CMsgClientGetDepotDecryptionKeyResponse_Closure)
+ (const CMsgClientGetDepotDecryptionKeyResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientCheckAppBetaPassword_Closure)
+ (const CMsgClientCheckAppBetaPassword *message,
+ void *closure_data);
+typedef void (*CMsgClientCheckAppBetaPasswordResponse__BetaPassword_Closure)
+ (const CMsgClientCheckAppBetaPasswordResponse__BetaPassword *message,
+ void *closure_data);
+typedef void (*CMsgClientCheckAppBetaPasswordResponse_Closure)
+ (const CMsgClientCheckAppBetaPasswordResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientGetCDNAuthTokenResponse_Closure)
+ (const CMsgClientGetCDNAuthTokenResponse *message,
+ void *closure_data);
+typedef void (*CMsgDownloadRateStatistics__StatsInfo_Closure)
+ (const CMsgDownloadRateStatistics__StatsInfo *message,
+ void *closure_data);
+typedef void (*CMsgDownloadRateStatistics_Closure)
+ (const CMsgDownloadRateStatistics *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestAccountData_Closure)
+ (const CMsgClientRequestAccountData *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestAccountDataResponse_Closure)
+ (const CMsgClientRequestAccountDataResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientUGSGetGlobalStats_Closure)
+ (const CMsgClientUGSGetGlobalStats *message,
+ void *closure_data);
+typedef void (*CMsgClientUGSGetGlobalStatsResponse__Day__Stat_Closure)
+ (const CMsgClientUGSGetGlobalStatsResponse__Day__Stat *message,
+ void *closure_data);
+typedef void (*CMsgClientUGSGetGlobalStatsResponse__Day_Closure)
+ (const CMsgClientUGSGetGlobalStatsResponse__Day *message,
+ void *closure_data);
+typedef void (*CMsgClientUGSGetGlobalStatsResponse_Closure)
+ (const CMsgClientUGSGetGlobalStatsResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientRedeemGuestPass_Closure)
+ (const CMsgClientRedeemGuestPass *message,
+ void *closure_data);
+typedef void (*CMsgClientRedeemGuestPassResponse_Closure)
+ (const CMsgClientRedeemGuestPassResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientGetClanActivityCounts_Closure)
+ (const CMsgClientGetClanActivityCounts *message,
+ void *closure_data);
+typedef void (*CMsgClientGetClanActivityCountsResponse_Closure)
+ (const CMsgClientGetClanActivityCountsResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientOGSReportString_Closure)
+ (const CMsgClientOGSReportString *message,
+ void *closure_data);
+typedef void (*CMsgClientOGSReportBug_Closure)
+ (const CMsgClientOGSReportBug *message,
+ void *closure_data);
+typedef void (*CMsgClientSentLogs_Closure)
+ (const CMsgClientSentLogs *message,
+ void *closure_data);
+typedef void (*CMsgGCClient_Closure)
+ (const CMsgGCClient *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestFreeLicense_Closure)
+ (const CMsgClientRequestFreeLicense *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestFreeLicenseResponse_Closure)
+ (const CMsgClientRequestFreeLicenseResponse *message,
+ void *closure_data);
+typedef void (*CMsgDRMDownloadRequestWithCrashData_Closure)
+ (const CMsgDRMDownloadRequestWithCrashData *message,
+ void *closure_data);
+typedef void (*CMsgDRMDownloadResponse_Closure)
+ (const CMsgDRMDownloadResponse *message,
+ void *closure_data);
+typedef void (*CMsgDRMFinalResult_Closure)
+ (const CMsgDRMFinalResult *message,
+ void *closure_data);
+typedef void (*CMsgClientDPCheckSpecialSurvey_Closure)
+ (const CMsgClientDPCheckSpecialSurvey *message,
+ void *closure_data);
+typedef void (*CMsgClientDPCheckSpecialSurveyResponse_Closure)
+ (const CMsgClientDPCheckSpecialSurveyResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientDPSendSpecialSurveyResponse_Closure)
+ (const CMsgClientDPSendSpecialSurveyResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientDPSendSpecialSurveyResponseReply_Closure)
+ (const CMsgClientDPSendSpecialSurveyResponseReply *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestForgottenPasswordEmail_Closure)
+ (const CMsgClientRequestForgottenPasswordEmail *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestForgottenPasswordEmailResponse_Closure)
+ (const CMsgClientRequestForgottenPasswordEmailResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientItemAnnouncements__UnseenItem_Closure)
+ (const CMsgClientItemAnnouncements__UnseenItem *message,
+ void *closure_data);
+typedef void (*CMsgClientItemAnnouncements_Closure)
+ (const CMsgClientItemAnnouncements *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestItemAnnouncements_Closure)
+ (const CMsgClientRequestItemAnnouncements *message,
+ void *closure_data);
+typedef void (*CMsgClientUserNotifications__Notification_Closure)
+ (const CMsgClientUserNotifications__Notification *message,
+ void *closure_data);
+typedef void (*CMsgClientUserNotifications_Closure)
+ (const CMsgClientUserNotifications *message,
+ void *closure_data);
+typedef void (*CMsgClientCommentNotifications_Closure)
+ (const CMsgClientCommentNotifications *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestCommentNotifications_Closure)
+ (const CMsgClientRequestCommentNotifications *message,
+ void *closure_data);
+typedef void (*CMsgClientOfflineMessageNotification_Closure)
+ (const CMsgClientOfflineMessageNotification *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestOfflineMessageCount_Closure)
+ (const CMsgClientRequestOfflineMessageCount *message,
+ void *closure_data);
+typedef void (*CMsgClientChatGetFriendMessageHistory_Closure)
+ (const CMsgClientChatGetFriendMessageHistory *message,
+ void *closure_data);
+typedef void (*CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage_Closure)
+ (const CMsgClientChatGetFriendMessageHistoryResponse__FriendMessage *message,
+ void *closure_data);
+typedef void (*CMsgClientChatGetFriendMessageHistoryResponse_Closure)
+ (const CMsgClientChatGetFriendMessageHistoryResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientChatGetFriendMessageHistoryForOfflineMessages_Closure)
+ (const CMsgClientChatGetFriendMessageHistoryForOfflineMessages *message,
+ void *closure_data);
+typedef void (*CMsgClientFSGetFriendsSteamLevels_Closure)
+ (const CMsgClientFSGetFriendsSteamLevels *message,
+ void *closure_data);
+typedef void (*CMsgClientFSGetFriendsSteamLevelsResponse__Friend_Closure)
+ (const CMsgClientFSGetFriendsSteamLevelsResponse__Friend *message,
+ void *closure_data);
+typedef void (*CMsgClientFSGetFriendsSteamLevelsResponse_Closure)
+ (const CMsgClientFSGetFriendsSteamLevelsResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientEmailAddrInfo_Closure)
+ (const CMsgClientEmailAddrInfo *message,
+ void *closure_data);
+typedef void (*CMsgCREItemVoteSummary__PublishedFileId_Closure)
+ (const CMsgCREItemVoteSummary__PublishedFileId *message,
+ void *closure_data);
+typedef void (*CMsgCREItemVoteSummary_Closure)
+ (const CMsgCREItemVoteSummary *message,
+ void *closure_data);
+typedef void (*CMsgCREItemVoteSummaryResponse__ItemVoteSummary_Closure)
+ (const CMsgCREItemVoteSummaryResponse__ItemVoteSummary *message,
+ void *closure_data);
+typedef void (*CMsgCREItemVoteSummaryResponse_Closure)
+ (const CMsgCREItemVoteSummaryResponse *message,
+ void *closure_data);
+typedef void (*CMsgCREUpdateUserPublishedItemVote_Closure)
+ (const CMsgCREUpdateUserPublishedItemVote *message,
+ void *closure_data);
+typedef void (*CMsgCREUpdateUserPublishedItemVoteResponse_Closure)
+ (const CMsgCREUpdateUserPublishedItemVoteResponse *message,
+ void *closure_data);
+typedef void (*CMsgCREGetUserPublishedItemVoteDetails__PublishedFileId_Closure)
+ (const CMsgCREGetUserPublishedItemVoteDetails__PublishedFileId *message,
+ void *closure_data);
+typedef void (*CMsgCREGetUserPublishedItemVoteDetails_Closure)
+ (const CMsgCREGetUserPublishedItemVoteDetails *message,
+ void *closure_data);
+typedef void (*CMsgCREGetUserPublishedItemVoteDetailsResponse__UserItemVoteDetail_Closure)
+ (const CMsgCREGetUserPublishedItemVoteDetailsResponse__UserItemVoteDetail *message,
+ void *closure_data);
+typedef void (*CMsgCREGetUserPublishedItemVoteDetailsResponse_Closure)
+ (const CMsgCREGetUserPublishedItemVoteDetailsResponse *message,
+ void *closure_data);
+typedef void (*CMsgFSGetFollowerCount_Closure)
+ (const CMsgFSGetFollowerCount *message,
+ void *closure_data);
+typedef void (*CMsgFSGetFollowerCountResponse_Closure)
+ (const CMsgFSGetFollowerCountResponse *message,
+ void *closure_data);
+typedef void (*CMsgFSGetIsFollowing_Closure)
+ (const CMsgFSGetIsFollowing *message,
+ void *closure_data);
+typedef void (*CMsgFSGetIsFollowingResponse_Closure)
+ (const CMsgFSGetIsFollowingResponse *message,
+ void *closure_data);
+typedef void (*CMsgFSEnumerateFollowingList_Closure)
+ (const CMsgFSEnumerateFollowingList *message,
+ void *closure_data);
+typedef void (*CMsgFSEnumerateFollowingListResponse_Closure)
+ (const CMsgFSEnumerateFollowingListResponse *message,
+ void *closure_data);
+typedef void (*CMsgDPGetNumberOfCurrentPlayers_Closure)
+ (const CMsgDPGetNumberOfCurrentPlayers *message,
+ void *closure_data);
+typedef void (*CMsgDPGetNumberOfCurrentPlayersResponse_Closure)
+ (const CMsgDPGetNumberOfCurrentPlayersResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientFriendUserStatusPublished_Closure)
+ (const CMsgClientFriendUserStatusPublished *message,
+ void *closure_data);
+typedef void (*CMsgClientServiceMethodLegacy_Closure)
+ (const CMsgClientServiceMethodLegacy *message,
+ void *closure_data);
+typedef void (*CMsgClientServiceMethodLegacyResponse_Closure)
+ (const CMsgClientServiceMethodLegacyResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientUIMode_Closure)
+ (const CMsgClientUIMode *message,
+ void *closure_data);
+typedef void (*CMsgClientVanityURLChangedNotification_Closure)
+ (const CMsgClientVanityURLChangedNotification *message,
+ void *closure_data);
+typedef void (*CMsgClientAuthorizeLocalDeviceRequest_Closure)
+ (const CMsgClientAuthorizeLocalDeviceRequest *message,
+ void *closure_data);
+typedef void (*CMsgClientAuthorizeLocalDevice_Closure)
+ (const CMsgClientAuthorizeLocalDevice *message,
+ void *closure_data);
+typedef void (*CMsgClientAuthorizeLocalDeviceNotification_Closure)
+ (const CMsgClientAuthorizeLocalDeviceNotification *message,
+ void *closure_data);
+typedef void (*CMsgClientDeauthorizeDeviceRequest_Closure)
+ (const CMsgClientDeauthorizeDeviceRequest *message,
+ void *closure_data);
+typedef void (*CMsgClientDeauthorizeDevice_Closure)
+ (const CMsgClientDeauthorizeDevice *message,
+ void *closure_data);
+typedef void (*CMsgClientUseLocalDeviceAuthorizations__DeviceToken_Closure)
+ (const CMsgClientUseLocalDeviceAuthorizations__DeviceToken *message,
+ void *closure_data);
+typedef void (*CMsgClientUseLocalDeviceAuthorizations_Closure)
+ (const CMsgClientUseLocalDeviceAuthorizations *message,
+ void *closure_data);
+typedef void (*CMsgClientGetAuthorizedDevices_Closure)
+ (const CMsgClientGetAuthorizedDevices *message,
+ void *closure_data);
+typedef void (*CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice_Closure)
+ (const CMsgClientGetAuthorizedDevicesResponse__AuthorizedDevice *message,
+ void *closure_data);
+typedef void (*CMsgClientGetAuthorizedDevicesResponse_Closure)
+ (const CMsgClientGetAuthorizedDevicesResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientSharedLibraryLockStatus__LockedLibrary_Closure)
+ (const CMsgClientSharedLibraryLockStatus__LockedLibrary *message,
+ void *closure_data);
+typedef void (*CMsgClientSharedLibraryLockStatus_Closure)
+ (const CMsgClientSharedLibraryLockStatus *message,
+ void *closure_data);
+typedef void (*CMsgClientSharedLibraryStopPlaying__StopApp_Closure)
+ (const CMsgClientSharedLibraryStopPlaying__StopApp *message,
+ void *closure_data);
+typedef void (*CMsgClientSharedLibraryStopPlaying_Closure)
+ (const CMsgClientSharedLibraryStopPlaying *message,
+ void *closure_data);
+typedef void (*CMsgClientServiceCall_Closure)
+ (const CMsgClientServiceCall *message,
+ void *closure_data);
+typedef void (*CMsgClientServiceModule_Closure)
+ (const CMsgClientServiceModule *message,
+ void *closure_data);
+typedef void (*CMsgClientServiceCallResponse_Closure)
+ (const CMsgClientServiceCallResponse *message,
+ void *closure_data);
+typedef void (*CMsgAMUnlockH264_Closure)
+ (const CMsgAMUnlockH264 *message,
+ void *closure_data);
+typedef void (*CMsgAMUnlockH264Response_Closure)
+ (const CMsgAMUnlockH264Response *message,
+ void *closure_data);
+typedef void (*CMsgClientPlayingSessionState_Closure)
+ (const CMsgClientPlayingSessionState *message,
+ void *closure_data);
+typedef void (*CMsgClientKickPlayingSession_Closure)
+ (const CMsgClientKickPlayingSession *message,
+ void *closure_data);
+typedef void (*CMsgClientVoiceCallPreAuthorize_Closure)
+ (const CMsgClientVoiceCallPreAuthorize *message,
+ void *closure_data);
+typedef void (*CMsgClientVoiceCallPreAuthorizeResponse_Closure)
+ (const CMsgClientVoiceCallPreAuthorizeResponse *message,
+ void *closure_data);
+typedef void (*CMsgBadgeCraftedNotification_Closure)
+ (const CMsgBadgeCraftedNotification *message,
+ void *closure_data);
+typedef void (*CMsgClientStartPeerContentServer_Closure)
+ (const CMsgClientStartPeerContentServer *message,
+ void *closure_data);
+typedef void (*CMsgClientStartPeerContentServerResponse_Closure)
+ (const CMsgClientStartPeerContentServerResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientGetPeerContentInfo_Closure)
+ (const CMsgClientGetPeerContentInfo *message,
+ void *closure_data);
+typedef void (*CMsgClientGetPeerContentInfoResponse_Closure)
+ (const CMsgClientGetPeerContentInfoResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_steammessages_5fclientserver_5f2_2eproto__INCLUDED */
diff --git a/protocols/Steam/src/protobuf-c/steammessages_clientserver_2.proto b/protocols/Steam/src/protobuf-c/steammessages_clientserver_2.proto
new file mode 100644
index 0000000000..b32e8be9df
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_clientserver_2.proto
@@ -0,0 +1,758 @@
+import "steammessages_base.proto";
+
+option optimize_for = SPEED;
+option cc_generic_services = false;
+
+message CMsgClientUpdateUserGameInfo {
+ optional fixed64 steamid_idgs = 1;
+ optional fixed64 gameid = 2;
+ optional uint32 game_ip = 3;
+ optional uint32 game_port = 4;
+ optional bytes token = 5;
+}
+
+message CMsgClientRichPresenceUpload {
+ optional bytes rich_presence_kv = 1;
+ repeated fixed64 steamid_broadcast = 2;
+}
+
+message CMsgClientRichPresenceRequest {
+ repeated fixed64 steamid_request = 1;
+}
+
+message CMsgClientRichPresenceInfo {
+ message RichPresence {
+ optional fixed64 steamid_user = 1;
+ optional bytes rich_presence_kv = 2;
+ }
+
+ repeated .CMsgClientRichPresenceInfo.RichPresence rich_presence = 1;
+}
+
+message CMsgClientCheckFileSignature {
+ optional uint32 app_id = 1;
+}
+
+message CMsgClientCheckFileSignatureResponse {
+ optional uint32 app_id = 1;
+ optional uint32 pid = 2;
+ optional uint32 eresult = 3;
+ optional string filename = 4;
+ optional uint32 esignatureresult = 5;
+ optional bytes sha_file = 6;
+ optional bytes signatureheader = 7;
+ optional uint32 filesize = 8;
+ optional uint32 getlasterror = 9;
+ optional uint32 evalvesignaturecheckdetail = 10;
+}
+
+message CMsgClientReadMachineAuth {
+ optional string filename = 1;
+ optional uint32 offset = 2;
+ optional uint32 cubtoread = 3;
+}
+
+message CMsgClientReadMachineAuthResponse {
+ optional string filename = 1;
+ optional uint32 eresult = 2;
+ optional uint32 filesize = 3;
+ optional bytes sha_file = 4;
+ optional uint32 getlasterror = 5;
+ optional uint32 offset = 6;
+ optional uint32 cubread = 7;
+ optional bytes bytes_read = 8;
+ optional string filename_sentry = 9;
+}
+
+message CMsgClientUpdateMachineAuth {
+ optional string filename = 1;
+ optional uint32 offset = 2;
+ optional uint32 cubtowrite = 3;
+ optional bytes bytes = 4;
+ optional uint32 otp_type = 5;
+ optional string otp_identifier = 6;
+ optional bytes otp_sharedsecret = 7;
+ optional uint32 otp_timedrift = 8;
+}
+
+message CMsgClientUpdateMachineAuthResponse {
+ optional string filename = 1;
+ optional uint32 eresult = 2;
+ optional uint32 filesize = 3;
+ optional bytes sha_file = 4;
+ optional uint32 getlasterror = 5;
+ optional uint32 offset = 6;
+ optional uint32 cubwrote = 7;
+ optional int32 otp_type = 8;
+ optional uint32 otp_value = 9;
+ optional string otp_identifier = 10;
+}
+
+message CMsgClientRequestMachineAuth {
+ optional string filename = 1;
+ optional uint32 eresult_sentryfile = 2;
+ optional uint32 filesize = 3;
+ optional bytes sha_sentryfile = 4;
+ optional int32 lock_account_action = 6;
+ optional uint32 otp_type = 7;
+ optional string otp_identifier = 8;
+ optional bytes otp_sharedsecret = 9;
+ optional uint32 otp_value = 10;
+ optional string machine_name = 11;
+ optional string machine_name_userchosen = 12;
+}
+
+message CMsgClientRequestMachineAuthResponse {
+ optional uint32 eresult = 1;
+}
+
+message CMsgClientRegisterKey {
+ optional string key = 1;
+}
+
+message CMsgClientPurchaseResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional int32 purchase_result_details = 2;
+ optional bytes purchase_receipt_info = 3;
+}
+
+message CMsgClientActivateOEMLicense {
+ optional string bios_manufacturer = 1;
+ optional string bios_serialnumber = 2;
+ optional bytes license_file = 3;
+ optional string mainboard_manufacturer = 4;
+ optional string mainboard_product = 5;
+ optional string mainboard_serialnumber = 6;
+}
+
+message CMsgClientRegisterOEMMachine {
+ optional bytes oem_register_file = 1;
+}
+
+message CMsgClientRegisterOEMMachineResponse {
+ optional uint32 eresult = 1;
+}
+
+message CMsgClientPurchaseWithMachineID {
+ optional uint32 package_id = 1;
+ optional bytes machine_info = 2;
+}
+
+message CMsgTrading_InitiateTradeRequest {
+ optional uint32 trade_request_id = 1;
+ optional uint64 other_steamid = 2;
+ optional string other_name = 3;
+}
+
+message CMsgTrading_InitiateTradeResponse {
+ optional uint32 response = 1;
+ optional uint32 trade_request_id = 2;
+ optional uint64 other_steamid = 3;
+ optional uint32 steamguard_required_days = 4;
+ optional uint32 new_device_cooldown_days = 5;
+ optional uint32 default_password_reset_probation_days = 6;
+ optional uint32 password_reset_probation_days = 7;
+ optional uint32 default_email_change_probation_days = 8;
+ optional uint32 email_change_probation_days = 9;
+}
+
+message CMsgTrading_CancelTradeRequest {
+ optional uint64 other_steamid = 1;
+}
+
+message CMsgTrading_StartSession {
+ optional uint64 other_steamid = 1;
+}
+
+message CMsgClientGetCDNAuthToken {
+ optional uint32 depot_id = 1;
+ optional string host_name = 2;
+ optional uint32 app_id = 3;
+}
+
+message CMsgClientGetDepotDecryptionKey {
+ optional uint32 depot_id = 1;
+ optional uint32 app_id = 2;
+}
+
+message CMsgClientGetDepotDecryptionKeyResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional uint32 depot_id = 2;
+ optional bytes depot_encryption_key = 3;
+}
+
+message CMsgClientCheckAppBetaPassword {
+ optional uint32 app_id = 1;
+ optional string betapassword = 2;
+ optional int32 language = 3;
+}
+
+message CMsgClientCheckAppBetaPasswordResponse {
+ message BetaPassword {
+ optional string betaname = 1;
+ optional string betapassword = 2;
+ optional string betadescription = 3;
+ }
+
+ optional int32 eresult = 1 [default = 2];
+ repeated .CMsgClientCheckAppBetaPasswordResponse.BetaPassword betapasswords = 4;
+}
+
+message CMsgClientGetCDNAuthTokenResponse {
+ optional uint32 eresult = 1 [default = 2];
+ optional string token = 2;
+ optional uint32 expiration_time = 3;
+}
+
+message CMsgDownloadRateStatistics {
+ message StatsInfo {
+ optional uint32 source_type = 1;
+ optional uint32 source_id = 2;
+ optional uint32 seconds = 3;
+ optional uint64 bytes = 4;
+ optional string host_name = 5;
+ optional uint64 microseconds = 6;
+ optional bool used_ipv6 = 7;
+ optional bool proxied = 8;
+ }
+
+ optional uint32 cell_id = 1;
+ repeated .CMsgDownloadRateStatistics.StatsInfo stats = 2;
+ optional uint32 throttling_kbps = 3;
+ optional uint32 steam_realm = 4;
+}
+
+message CMsgClientRequestAccountData {
+ optional string account_or_email = 1;
+ optional uint32 action = 2;
+}
+
+message CMsgClientRequestAccountDataResponse {
+ optional uint32 action = 1;
+ optional uint32 eresult = 2;
+ optional string account_name = 3;
+ optional uint32 ct_matches = 4;
+ optional string account_name_suggestion1 = 5;
+ optional string account_name_suggestion2 = 6;
+ optional string account_name_suggestion3 = 7;
+}
+
+message CMsgClientUGSGetGlobalStats {
+ optional uint64 gameid = 1;
+ optional uint32 history_days_requested = 2;
+ optional fixed32 time_last_requested = 3;
+ optional uint32 first_day_cached = 4;
+ optional uint32 days_cached = 5;
+}
+
+message CMsgClientUGSGetGlobalStatsResponse {
+ message Day {
+ message Stat {
+ optional int32 stat_id = 1;
+ optional int64 data = 2;
+ }
+
+ optional uint32 day_id = 1;
+ repeated .CMsgClientUGSGetGlobalStatsResponse.Day.Stat stats = 2;
+ }
+
+ optional int32 eresult = 1 [default = 2];
+ optional fixed32 timestamp = 2;
+ optional int32 day_current = 3;
+ repeated .CMsgClientUGSGetGlobalStatsResponse.Day days = 4;
+}
+
+message CMsgClientRedeemGuestPass {
+ optional fixed64 guest_pass_id = 1;
+}
+
+message CMsgClientRedeemGuestPassResponse {
+ optional uint32 eresult = 1 [default = 2];
+ optional uint32 package_id = 2;
+ optional uint32 must_own_appid = 3;
+}
+
+message CMsgClientGetClanActivityCounts {
+ repeated uint64 steamid_clans = 1;
+}
+
+message CMsgClientGetClanActivityCountsResponse {
+ optional uint32 eresult = 1 [default = 2];
+}
+
+message CMsgClientOGSReportString {
+ optional bool accumulated = 1;
+ optional uint64 sessionid = 2;
+ optional int32 severity = 3;
+ optional string formatter = 4;
+ optional bytes varargs = 5;
+}
+
+message CMsgClientOGSReportBug {
+ optional uint64 sessionid = 1;
+ optional string bugtext = 2;
+ optional bytes screenshot = 3;
+}
+
+message CMsgClientSentLogs {
+}
+
+message CMsgGCClient {
+ optional uint32 appid = 1;
+ optional uint32 msgtype = 2;
+ optional bytes payload = 3;
+ optional fixed64 steamid = 4;
+ optional string gcname = 5;
+ optional uint32 ip = 6;
+}
+
+message CMsgClientRequestFreeLicense {
+ repeated uint32 appids = 2;
+}
+
+message CMsgClientRequestFreeLicenseResponse {
+ optional uint32 eresult = 1 [default = 2];
+ repeated uint32 granted_packageids = 2;
+ repeated uint32 granted_appids = 3;
+}
+
+message CMsgDRMDownloadRequestWithCrashData {
+ optional uint32 download_flags = 1;
+ optional uint32 download_types_known = 2;
+ optional bytes guid_drm = 3;
+ optional bytes guid_split = 4;
+ optional bytes guid_merge = 5;
+ optional string module_name = 6;
+ optional string module_path = 7;
+ optional bytes crash_data = 8;
+}
+
+message CMsgDRMDownloadResponse {
+ optional uint32 eresult = 1 [default = 2];
+ optional uint32 app_id = 2;
+ optional uint32 blob_download_type = 3;
+ optional bytes merge_guid = 4;
+ optional uint32 download_file_dfs_ip = 5;
+ optional uint32 download_file_dfs_port = 6;
+ optional string download_file_url = 7;
+ optional string module_path = 8;
+}
+
+message CMsgDRMFinalResult {
+ optional uint32 eResult = 1 [default = 2];
+ optional uint32 app_id = 2;
+ optional uint32 blob_download_type = 3;
+ optional uint32 error_detail = 4;
+ optional bytes merge_guid = 5;
+ optional uint32 download_file_dfs_ip = 6;
+ optional uint32 download_file_dfs_port = 7;
+ optional string download_file_url = 8;
+}
+
+message CMsgClientDPCheckSpecialSurvey {
+ optional uint32 survey_id = 1;
+}
+
+message CMsgClientDPCheckSpecialSurveyResponse {
+ optional uint32 eResult = 1 [default = 2];
+ optional uint32 state = 2;
+ optional string name = 3;
+ optional string custom_url = 4;
+ optional bool include_software = 5;
+ optional bytes token = 6;
+}
+
+message CMsgClientDPSendSpecialSurveyResponse {
+ optional uint32 survey_id = 1;
+ optional bytes data = 2;
+}
+
+message CMsgClientDPSendSpecialSurveyResponseReply {
+ optional uint32 eResult = 1 [default = 2];
+ optional bytes token = 2;
+}
+
+message CMsgClientRequestForgottenPasswordEmail {
+ optional string account_name = 1;
+ optional string password_tried = 2;
+}
+
+message CMsgClientRequestForgottenPasswordEmailResponse {
+ optional uint32 eResult = 1;
+ optional bool use_secret_question = 2;
+}
+
+message CMsgClientItemAnnouncements {
+ message UnseenItem {
+ optional uint32 appid = 1;
+ optional uint64 context_id = 2;
+ optional uint64 asset_id = 3;
+ optional uint64 amount = 4;
+ optional fixed32 rtime32_gained = 5;
+ optional uint32 source_appid = 6;
+ }
+
+ optional uint32 count_new_items = 1;
+ repeated .CMsgClientItemAnnouncements.UnseenItem unseen_items = 2;
+}
+
+message CMsgClientRequestItemAnnouncements {
+}
+
+message CMsgClientUserNotifications {
+ message Notification {
+ optional uint32 user_notification_type = 1;
+ optional uint32 count = 2;
+ }
+
+ repeated .CMsgClientUserNotifications.Notification notifications = 1;
+}
+
+message CMsgClientCommentNotifications {
+ optional uint32 count_new_comments = 1;
+ optional uint32 count_new_comments_owner = 2;
+ optional uint32 count_new_comments_subscriptions = 3;
+}
+
+message CMsgClientRequestCommentNotifications {
+}
+
+message CMsgClientOfflineMessageNotification {
+ optional uint32 offline_messages = 1;
+ repeated uint32 friends_with_offline_messages = 2;
+}
+
+message CMsgClientRequestOfflineMessageCount {
+}
+
+message CMsgClientChatGetFriendMessageHistory {
+ optional fixed64 steamid = 1;
+}
+
+message CMsgClientChatGetFriendMessageHistoryResponse {
+ message FriendMessage {
+ optional uint32 accountid = 1;
+ optional uint32 timestamp = 2;
+ optional string message = 3;
+ optional bool unread = 4;
+ }
+
+ optional fixed64 steamid = 1;
+ optional uint32 success = 2;
+ repeated .CMsgClientChatGetFriendMessageHistoryResponse.FriendMessage messages = 3;
+}
+
+message CMsgClientChatGetFriendMessageHistoryForOfflineMessages {
+}
+
+message CMsgClientFSGetFriendsSteamLevels {
+ repeated uint32 accountids = 1;
+}
+
+message CMsgClientFSGetFriendsSteamLevelsResponse {
+ message Friend {
+ optional uint32 accountid = 1;
+ optional uint32 level = 2;
+ }
+
+ repeated .CMsgClientFSGetFriendsSteamLevelsResponse.Friend friends = 1;
+}
+
+message CMsgClientEmailAddrInfo {
+ optional string email_address = 1;
+ optional bool email_is_validated = 2;
+ optional bool email_validation_changed = 3;
+ optional bool credential_change_requires_code = 4;
+ optional bool password_or_secretqa_change_requires_code = 5;
+}
+
+message CMsgCREItemVoteSummary {
+ message PublishedFileId {
+ optional fixed64 published_file_id = 1;
+ }
+
+ repeated .CMsgCREItemVoteSummary.PublishedFileId published_file_ids = 1;
+}
+
+message CMsgCREItemVoteSummaryResponse {
+ message ItemVoteSummary {
+ optional fixed64 published_file_id = 1;
+ optional int32 votes_for = 2;
+ optional int32 votes_against = 3;
+ optional int32 reports = 4;
+ optional float score = 5;
+ }
+
+ optional int32 eresult = 1 [default = 2];
+ repeated .CMsgCREItemVoteSummaryResponse.ItemVoteSummary item_vote_summaries = 2;
+}
+
+message CMsgCREUpdateUserPublishedItemVote {
+ optional fixed64 published_file_id = 1;
+ optional bool vote_up = 2;
+}
+
+message CMsgCREUpdateUserPublishedItemVoteResponse {
+ optional int32 eresult = 1 [default = 2];
+}
+
+message CMsgCREGetUserPublishedItemVoteDetails {
+ message PublishedFileId {
+ optional fixed64 published_file_id = 1;
+ }
+
+ repeated .CMsgCREGetUserPublishedItemVoteDetails.PublishedFileId published_file_ids = 1;
+}
+
+message CMsgCREGetUserPublishedItemVoteDetailsResponse {
+ message UserItemVoteDetail {
+ optional fixed64 published_file_id = 1;
+ optional int32 vote = 2 [default = 0];
+ }
+
+ optional int32 eresult = 1 [default = 2];
+ repeated .CMsgCREGetUserPublishedItemVoteDetailsResponse.UserItemVoteDetail user_item_vote_details = 2;
+}
+
+message CMsgFSGetFollowerCount {
+ optional fixed64 steam_id = 1;
+}
+
+message CMsgFSGetFollowerCountResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional int32 count = 2 [default = 0];
+}
+
+message CMsgFSGetIsFollowing {
+ optional fixed64 steam_id = 1;
+}
+
+message CMsgFSGetIsFollowingResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional bool is_following = 2 [default = false];
+}
+
+message CMsgFSEnumerateFollowingList {
+ optional uint32 start_index = 1;
+}
+
+message CMsgFSEnumerateFollowingListResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional int32 total_results = 2;
+ repeated fixed64 steam_ids = 3;
+}
+
+message CMsgDPGetNumberOfCurrentPlayers {
+ optional uint32 appid = 1;
+}
+
+message CMsgDPGetNumberOfCurrentPlayersResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional int32 player_count = 2;
+}
+
+message CMsgClientFriendUserStatusPublished {
+ optional fixed64 friend_steamid = 1;
+ optional uint32 appid = 2;
+ optional string status_text = 3;
+}
+
+message CMsgClientServiceMethodLegacy {
+ optional string method_name = 1;
+ optional bytes serialized_method = 2;
+ optional bool is_notification = 3;
+}
+
+message CMsgClientServiceMethodLegacyResponse {
+ optional string method_name = 1;
+ optional bytes serialized_method_response = 2;
+}
+
+message CMsgClientUIMode {
+ optional uint32 uimode = 1;
+ optional uint32 chat_mode = 2;
+}
+
+message CMsgClientVanityURLChangedNotification {
+ optional string vanity_url = 1;
+}
+
+message CMsgClientAuthorizeLocalDeviceRequest {
+ optional string device_description = 1;
+ optional uint32 owner_account_id = 2;
+ optional uint64 local_device_token = 3;
+}
+
+message CMsgClientAuthorizeLocalDevice {
+ optional int32 eresult = 1 [default = 2];
+ optional uint32 owner_account_id = 2;
+ optional uint64 authed_device_token = 3;
+}
+
+message CMsgClientAuthorizeLocalDeviceNotification {
+ optional int32 eresult = 1 [default = 2];
+ optional uint32 owner_account_id = 2;
+ optional uint64 local_device_token = 3;
+}
+
+message CMsgClientDeauthorizeDeviceRequest {
+ optional uint32 deauthorization_account_id = 1;
+ optional uint64 deauthorization_device_token = 2;
+}
+
+message CMsgClientDeauthorizeDevice {
+ optional int32 eresult = 1 [default = 2];
+ optional uint32 deauthorization_account_id = 2;
+}
+
+message CMsgClientUseLocalDeviceAuthorizations {
+ message DeviceToken {
+ optional uint32 owner_account_id = 1;
+ optional uint64 token_id = 2;
+ }
+
+ repeated uint32 authorization_account_id = 1;
+ repeated .CMsgClientUseLocalDeviceAuthorizations.DeviceToken device_tokens = 2;
+}
+
+message CMsgClientGetAuthorizedDevices {
+}
+
+message CMsgClientGetAuthorizedDevicesResponse {
+ message AuthorizedDevice {
+ optional uint64 auth_device_token = 1;
+ optional string device_name = 2;
+ optional uint32 last_access_time = 3;
+ optional uint32 borrower_id = 4;
+ optional bool is_pending = 5;
+ optional uint32 app_played = 6;
+ }
+
+ optional int32 eresult = 1 [default = 2];
+ repeated .CMsgClientGetAuthorizedDevicesResponse.AuthorizedDevice authorized_device = 2;
+}
+
+message CMsgClientSharedLibraryLockStatus {
+ message LockedLibrary {
+ optional uint32 owner_id = 1;
+ optional uint32 locked_by = 2;
+ }
+
+ repeated .CMsgClientSharedLibraryLockStatus.LockedLibrary locked_library = 1;
+ optional uint32 own_library_locked_by = 2;
+}
+
+message CMsgClientSharedLibraryStopPlaying {
+ message StopApp {
+ optional uint32 app_id = 1;
+ optional uint32 owner_id = 2;
+ }
+
+ optional int32 seconds_left = 1;
+ repeated .CMsgClientSharedLibraryStopPlaying.StopApp stop_apps = 2;
+}
+
+message CMsgClientServiceCall {
+ optional bytes sysid_routing = 1;
+ optional uint32 call_handle = 2;
+ optional uint32 module_crc = 3;
+ optional bytes module_hash = 4;
+ optional uint32 function_id = 5;
+ optional uint32 cub_output_max = 6;
+ optional uint32 flags = 7;
+ optional bytes callparameter = 8;
+ optional bool ping_only = 9;
+ optional uint32 max_outstanding_calls = 10;
+ optional uint32 app_id = 11;
+}
+
+message CMsgClientServiceModule {
+ optional uint32 module_crc = 1;
+ optional bytes module_hash = 2;
+ optional bytes module_content = 3;
+}
+
+message CMsgClientServiceCallResponse {
+ optional bytes sysid_routing = 1;
+ optional uint32 call_handle = 2;
+ optional uint32 module_crc = 3;
+ optional bytes module_hash = 4;
+ optional uint32 ecallresult = 5;
+ optional bytes result_content = 6;
+ optional bytes os_version_info = 7;
+ optional bytes system_info = 8;
+ optional fixed64 load_address = 9;
+ optional bytes exception_record = 10;
+ optional bytes portable_os_version_info = 11;
+ optional bytes portable_system_info = 12;
+ optional bool was_converted = 13;
+ optional uint32 internal_result = 14;
+ optional uint32 current_count = 15;
+ optional uint32 last_call_handle = 16;
+ optional uint32 last_call_module_crc = 17;
+ optional bytes last_call_sysid_routing = 18;
+ optional uint32 last_ecallresult = 19;
+ optional uint32 last_callissue_delta = 20;
+ optional uint32 last_callcomplete_delta = 21;
+}
+
+message CMsgAMUnlockH264 {
+ optional uint32 appid = 1;
+ optional int32 platform = 2;
+ optional int32 reason = 3;
+}
+
+message CMsgAMUnlockH264Response {
+ optional int32 eresult = 1 [default = 2];
+ optional bytes encryption_key = 2;
+}
+
+message CMsgClientPlayingSessionState {
+ optional bool playing_blocked = 2;
+ optional uint32 playing_app = 3;
+}
+
+message CMsgClientKickPlayingSession {
+ optional bool only_stop_game = 1;
+}
+
+message CMsgClientVoiceCallPreAuthorize {
+ optional fixed64 caller_steamid = 1;
+ optional fixed64 receiver_steamid = 2;
+ optional int32 caller_id = 3;
+ optional bool hangup = 4;
+}
+
+message CMsgClientVoiceCallPreAuthorizeResponse {
+ optional fixed64 caller_steamid = 1;
+ optional fixed64 receiver_steamid = 2;
+ optional int32 eresult = 3 [default = 2];
+ optional int32 caller_id = 4;
+}
+
+message CMsgBadgeCraftedNotification {
+ optional uint32 appid = 1;
+ optional uint32 badge_level = 2;
+}
+
+message CMsgClientStartPeerContentServer {
+ optional fixed64 steamid = 1;
+ optional fixed64 client_remote_id = 2;
+ optional uint32 app_id = 3;
+ optional uint32 current_build_id = 4;
+}
+
+message CMsgClientStartPeerContentServerResponse {
+ optional uint32 result = 1;
+ optional uint32 server_port = 2;
+}
+
+message CMsgClientGetPeerContentInfo {
+ optional fixed64 steamid = 1;
+ optional fixed64 client_remote_id = 2;
+}
+
+message CMsgClientGetPeerContentInfoResponse {
+ optional uint32 result = 1;
+ repeated uint32 apps = 2;
+}
diff --git a/protocols/Steam/src/protobuf-c/steammessages_clientserver_appinfo.pb-c.cpp b/protocols/Steam/src/protobuf-c/steammessages_clientserver_appinfo.pb-c.cpp
new file mode 100644
index 0000000000..ac50d25e09
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_clientserver_appinfo.pb-c.cpp
@@ -0,0 +1,1712 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_clientserver_appinfo.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "steammessages_clientserver_appinfo.pb-c.h"
+size_t cmsg_client_app_info_update__get_packed_size
+ (const CMsgClientAppInfoUpdate *message)
+{
+ assert(message->descriptor == &cmsg_client_app_info_update__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_app_info_update__pack
+ (const CMsgClientAppInfoUpdate *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_app_info_update__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_app_info_update__pack_to_buffer
+ (const CMsgClientAppInfoUpdate *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_app_info_update__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAppInfoUpdate *
+ cmsg_client_app_info_update__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAppInfoUpdate *)
+ protobuf_c_message_unpack (&cmsg_client_app_info_update__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_app_info_update__free_unpacked
+ (CMsgClientAppInfoUpdate *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_app_info_update__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_app_info_changes__get_packed_size
+ (const CMsgClientAppInfoChanges *message)
+{
+ assert(message->descriptor == &cmsg_client_app_info_changes__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_app_info_changes__pack
+ (const CMsgClientAppInfoChanges *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_app_info_changes__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_app_info_changes__pack_to_buffer
+ (const CMsgClientAppInfoChanges *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_app_info_changes__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAppInfoChanges *
+ cmsg_client_app_info_changes__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAppInfoChanges *)
+ protobuf_c_message_unpack (&cmsg_client_app_info_changes__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_app_info_changes__free_unpacked
+ (CMsgClientAppInfoChanges *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_app_info_changes__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_app_info_request__get_packed_size
+ (const CMsgClientAppInfoRequest *message)
+{
+ assert(message->descriptor == &cmsg_client_app_info_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_app_info_request__pack
+ (const CMsgClientAppInfoRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_app_info_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_app_info_request__pack_to_buffer
+ (const CMsgClientAppInfoRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_app_info_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAppInfoRequest *
+ cmsg_client_app_info_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAppInfoRequest *)
+ protobuf_c_message_unpack (&cmsg_client_app_info_request__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_app_info_request__free_unpacked
+ (CMsgClientAppInfoRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_app_info_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_picschanges_since_request__get_packed_size
+ (const CMsgClientPICSChangesSinceRequest *message)
+{
+ assert(message->descriptor == &cmsg_client_picschanges_since_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_picschanges_since_request__pack
+ (const CMsgClientPICSChangesSinceRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_picschanges_since_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_picschanges_since_request__pack_to_buffer
+ (const CMsgClientPICSChangesSinceRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_picschanges_since_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientPICSChangesSinceRequest *
+ cmsg_client_picschanges_since_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientPICSChangesSinceRequest *)
+ protobuf_c_message_unpack (&cmsg_client_picschanges_since_request__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_picschanges_since_request__free_unpacked
+ (CMsgClientPICSChangesSinceRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_picschanges_since_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_picschanges_since_response__get_packed_size
+ (const CMsgClientPICSChangesSinceResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_picschanges_since_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_picschanges_since_response__pack
+ (const CMsgClientPICSChangesSinceResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_picschanges_since_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_picschanges_since_response__pack_to_buffer
+ (const CMsgClientPICSChangesSinceResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_picschanges_since_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientPICSChangesSinceResponse *
+ cmsg_client_picschanges_since_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientPICSChangesSinceResponse *)
+ protobuf_c_message_unpack (&cmsg_client_picschanges_since_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_picschanges_since_response__free_unpacked
+ (CMsgClientPICSChangesSinceResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_picschanges_since_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_picsproduct_info_request__get_packed_size
+ (const CMsgClientPICSProductInfoRequest *message)
+{
+ assert(message->descriptor == &cmsg_client_picsproduct_info_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_picsproduct_info_request__pack
+ (const CMsgClientPICSProductInfoRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_picsproduct_info_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_picsproduct_info_request__pack_to_buffer
+ (const CMsgClientPICSProductInfoRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_picsproduct_info_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientPICSProductInfoRequest *
+ cmsg_client_picsproduct_info_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientPICSProductInfoRequest *)
+ protobuf_c_message_unpack (&cmsg_client_picsproduct_info_request__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_picsproduct_info_request__free_unpacked
+ (CMsgClientPICSProductInfoRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_picsproduct_info_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_picsproduct_info_response__get_packed_size
+ (const CMsgClientPICSProductInfoResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_picsproduct_info_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_picsproduct_info_response__pack
+ (const CMsgClientPICSProductInfoResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_picsproduct_info_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_picsproduct_info_response__pack_to_buffer
+ (const CMsgClientPICSProductInfoResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_picsproduct_info_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientPICSProductInfoResponse *
+ cmsg_client_picsproduct_info_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientPICSProductInfoResponse *)
+ protobuf_c_message_unpack (&cmsg_client_picsproduct_info_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_picsproduct_info_response__free_unpacked
+ (CMsgClientPICSProductInfoResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_picsproduct_info_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_picsaccess_token_request__get_packed_size
+ (const CMsgClientPICSAccessTokenRequest *message)
+{
+ assert(message->descriptor == &cmsg_client_picsaccess_token_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_picsaccess_token_request__pack
+ (const CMsgClientPICSAccessTokenRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_picsaccess_token_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_picsaccess_token_request__pack_to_buffer
+ (const CMsgClientPICSAccessTokenRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_picsaccess_token_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientPICSAccessTokenRequest *
+ cmsg_client_picsaccess_token_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientPICSAccessTokenRequest *)
+ protobuf_c_message_unpack (&cmsg_client_picsaccess_token_request__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_picsaccess_token_request__free_unpacked
+ (CMsgClientPICSAccessTokenRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_picsaccess_token_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_picsaccess_token_response__get_packed_size
+ (const CMsgClientPICSAccessTokenResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_picsaccess_token_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_picsaccess_token_response__pack
+ (const CMsgClientPICSAccessTokenResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_picsaccess_token_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_picsaccess_token_response__pack_to_buffer
+ (const CMsgClientPICSAccessTokenResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_picsaccess_token_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientPICSAccessTokenResponse *
+ cmsg_client_picsaccess_token_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientPICSAccessTokenResponse *)
+ protobuf_c_message_unpack (&cmsg_client_picsaccess_token_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_picsaccess_token_response__free_unpacked
+ (CMsgClientPICSAccessTokenResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_picsaccess_token_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+static const ProtobufCFieldDescriptor cmsg_client_app_info_update__field_descriptors[2] =
+{
+ {
+ "last_changenumber",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAppInfoUpdate, has_last_changenumber),
+ offsetof(CMsgClientAppInfoUpdate, last_changenumber),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "send_changelist",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientAppInfoUpdate, has_send_changelist),
+ offsetof(CMsgClientAppInfoUpdate, send_changelist),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_app_info_update__field_indices_by_name[] = {
+ 0, /* field[0] = last_changenumber */
+ 1, /* field[1] = send_changelist */
+};
+static const ProtobufCIntRange cmsg_client_app_info_update__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_app_info_update__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAppInfoUpdate",
+ "CMsgClientAppInfoUpdate",
+ "CMsgClientAppInfoUpdate",
+ "",
+ sizeof(CMsgClientAppInfoUpdate),
+ 2,
+ cmsg_client_app_info_update__field_descriptors,
+ cmsg_client_app_info_update__field_indices_by_name,
+ 1, cmsg_client_app_info_update__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_app_info_changes__field_descriptors[3] =
+{
+ {
+ "current_change_number",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAppInfoChanges, has_current_change_number),
+ offsetof(CMsgClientAppInfoChanges, current_change_number),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "force_full_update",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientAppInfoChanges, has_force_full_update),
+ offsetof(CMsgClientAppInfoChanges, force_full_update),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "appIDs",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAppInfoChanges, n_appids),
+ offsetof(CMsgClientAppInfoChanges, appids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_app_info_changes__field_indices_by_name[] = {
+ 2, /* field[2] = appIDs */
+ 0, /* field[0] = current_change_number */
+ 1, /* field[1] = force_full_update */
+};
+static const ProtobufCIntRange cmsg_client_app_info_changes__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_app_info_changes__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAppInfoChanges",
+ "CMsgClientAppInfoChanges",
+ "CMsgClientAppInfoChanges",
+ "",
+ sizeof(CMsgClientAppInfoChanges),
+ 3,
+ cmsg_client_app_info_changes__field_descriptors,
+ cmsg_client_app_info_changes__field_indices_by_name,
+ 1, cmsg_client_app_info_changes__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_app_info_request__app__field_descriptors[3] =
+{
+ {
+ "app_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAppInfoRequest__App, has_app_id),
+ offsetof(CMsgClientAppInfoRequest__App, app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "section_flags",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAppInfoRequest__App, has_section_flags),
+ offsetof(CMsgClientAppInfoRequest__App, section_flags),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "section_CRC",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAppInfoRequest__App, n_section_crc),
+ offsetof(CMsgClientAppInfoRequest__App, section_crc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_app_info_request__app__field_indices_by_name[] = {
+ 0, /* field[0] = app_id */
+ 2, /* field[2] = section_CRC */
+ 1, /* field[1] = section_flags */
+};
+static const ProtobufCIntRange cmsg_client_app_info_request__app__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_app_info_request__app__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAppInfoRequest.App",
+ "App",
+ "CMsgClientAppInfoRequest__App",
+ "",
+ sizeof(CMsgClientAppInfoRequest__App),
+ 3,
+ cmsg_client_app_info_request__app__field_descriptors,
+ cmsg_client_app_info_request__app__field_indices_by_name,
+ 1, cmsg_client_app_info_request__app__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const protobuf_c_boolean cmsg_client_app_info_request__supports_batches__default_value = 0;
+static const ProtobufCFieldDescriptor cmsg_client_app_info_request__field_descriptors[2] =
+{
+ {
+ "apps",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientAppInfoRequest, n_apps),
+ offsetof(CMsgClientAppInfoRequest, apps),
+ &cmsg_client_app_info_request__app__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "supports_batches",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientAppInfoRequest, has_supports_batches),
+ offsetof(CMsgClientAppInfoRequest, supports_batches),
+ NULL,
+ &cmsg_client_app_info_request__supports_batches__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_app_info_request__field_indices_by_name[] = {
+ 0, /* field[0] = apps */
+ 1, /* field[1] = supports_batches */
+};
+static const ProtobufCIntRange cmsg_client_app_info_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_app_info_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAppInfoRequest",
+ "CMsgClientAppInfoRequest",
+ "CMsgClientAppInfoRequest",
+ "",
+ sizeof(CMsgClientAppInfoRequest),
+ 2,
+ cmsg_client_app_info_request__field_descriptors,
+ cmsg_client_app_info_request__field_indices_by_name,
+ 1, cmsg_client_app_info_request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_picschanges_since_request__field_descriptors[5] =
+{
+ {
+ "since_change_number",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSChangesSinceRequest, has_since_change_number),
+ offsetof(CMsgClientPICSChangesSinceRequest, since_change_number),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "send_app_info_changes",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPICSChangesSinceRequest, has_send_app_info_changes),
+ offsetof(CMsgClientPICSChangesSinceRequest, send_app_info_changes),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "send_package_info_changes",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPICSChangesSinceRequest, has_send_package_info_changes),
+ offsetof(CMsgClientPICSChangesSinceRequest, send_package_info_changes),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "num_app_info_cached",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSChangesSinceRequest, has_num_app_info_cached),
+ offsetof(CMsgClientPICSChangesSinceRequest, num_app_info_cached),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "num_package_info_cached",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSChangesSinceRequest, has_num_package_info_cached),
+ offsetof(CMsgClientPICSChangesSinceRequest, num_package_info_cached),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_picschanges_since_request__field_indices_by_name[] = {
+ 3, /* field[3] = num_app_info_cached */
+ 4, /* field[4] = num_package_info_cached */
+ 1, /* field[1] = send_app_info_changes */
+ 2, /* field[2] = send_package_info_changes */
+ 0, /* field[0] = since_change_number */
+};
+static const ProtobufCIntRange cmsg_client_picschanges_since_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cmsg_client_picschanges_since_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPICSChangesSinceRequest",
+ "CMsgClientPICSChangesSinceRequest",
+ "CMsgClientPICSChangesSinceRequest",
+ "",
+ sizeof(CMsgClientPICSChangesSinceRequest),
+ 5,
+ cmsg_client_picschanges_since_request__field_descriptors,
+ cmsg_client_picschanges_since_request__field_indices_by_name,
+ 1, cmsg_client_picschanges_since_request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_picschanges_since_response__package_change__field_descriptors[3] =
+{
+ {
+ "packageid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSChangesSinceResponse__PackageChange, has_packageid),
+ offsetof(CMsgClientPICSChangesSinceResponse__PackageChange, packageid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "change_number",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSChangesSinceResponse__PackageChange, has_change_number),
+ offsetof(CMsgClientPICSChangesSinceResponse__PackageChange, change_number),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "needs_token",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPICSChangesSinceResponse__PackageChange, has_needs_token),
+ offsetof(CMsgClientPICSChangesSinceResponse__PackageChange, needs_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_picschanges_since_response__package_change__field_indices_by_name[] = {
+ 1, /* field[1] = change_number */
+ 2, /* field[2] = needs_token */
+ 0, /* field[0] = packageid */
+};
+static const ProtobufCIntRange cmsg_client_picschanges_since_response__package_change__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_picschanges_since_response__package_change__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPICSChangesSinceResponse.PackageChange",
+ "PackageChange",
+ "CMsgClientPICSChangesSinceResponse__PackageChange",
+ "",
+ sizeof(CMsgClientPICSChangesSinceResponse__PackageChange),
+ 3,
+ cmsg_client_picschanges_since_response__package_change__field_descriptors,
+ cmsg_client_picschanges_since_response__package_change__field_indices_by_name,
+ 1, cmsg_client_picschanges_since_response__package_change__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_picschanges_since_response__app_change__field_descriptors[3] =
+{
+ {
+ "appid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSChangesSinceResponse__AppChange, has_appid),
+ offsetof(CMsgClientPICSChangesSinceResponse__AppChange, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "change_number",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSChangesSinceResponse__AppChange, has_change_number),
+ offsetof(CMsgClientPICSChangesSinceResponse__AppChange, change_number),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "needs_token",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPICSChangesSinceResponse__AppChange, has_needs_token),
+ offsetof(CMsgClientPICSChangesSinceResponse__AppChange, needs_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_picschanges_since_response__app_change__field_indices_by_name[] = {
+ 0, /* field[0] = appid */
+ 1, /* field[1] = change_number */
+ 2, /* field[2] = needs_token */
+};
+static const ProtobufCIntRange cmsg_client_picschanges_since_response__app_change__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_picschanges_since_response__app_change__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPICSChangesSinceResponse.AppChange",
+ "AppChange",
+ "CMsgClientPICSChangesSinceResponse__AppChange",
+ "",
+ sizeof(CMsgClientPICSChangesSinceResponse__AppChange),
+ 3,
+ cmsg_client_picschanges_since_response__app_change__field_descriptors,
+ cmsg_client_picschanges_since_response__app_change__field_indices_by_name,
+ 1, cmsg_client_picschanges_since_response__app_change__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_picschanges_since_response__field_descriptors[7] =
+{
+ {
+ "current_change_number",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSChangesSinceResponse, has_current_change_number),
+ offsetof(CMsgClientPICSChangesSinceResponse, current_change_number),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "since_change_number",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSChangesSinceResponse, has_since_change_number),
+ offsetof(CMsgClientPICSChangesSinceResponse, since_change_number),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "force_full_update",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPICSChangesSinceResponse, has_force_full_update),
+ offsetof(CMsgClientPICSChangesSinceResponse, force_full_update),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "package_changes",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientPICSChangesSinceResponse, n_package_changes),
+ offsetof(CMsgClientPICSChangesSinceResponse, package_changes),
+ &cmsg_client_picschanges_since_response__package_change__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_changes",
+ 5,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientPICSChangesSinceResponse, n_app_changes),
+ offsetof(CMsgClientPICSChangesSinceResponse, app_changes),
+ &cmsg_client_picschanges_since_response__app_change__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "force_full_app_update",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPICSChangesSinceResponse, has_force_full_app_update),
+ offsetof(CMsgClientPICSChangesSinceResponse, force_full_app_update),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "force_full_package_update",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPICSChangesSinceResponse, has_force_full_package_update),
+ offsetof(CMsgClientPICSChangesSinceResponse, force_full_package_update),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_picschanges_since_response__field_indices_by_name[] = {
+ 4, /* field[4] = app_changes */
+ 0, /* field[0] = current_change_number */
+ 5, /* field[5] = force_full_app_update */
+ 6, /* field[6] = force_full_package_update */
+ 2, /* field[2] = force_full_update */
+ 3, /* field[3] = package_changes */
+ 1, /* field[1] = since_change_number */
+};
+static const ProtobufCIntRange cmsg_client_picschanges_since_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cmsg_client_picschanges_since_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPICSChangesSinceResponse",
+ "CMsgClientPICSChangesSinceResponse",
+ "CMsgClientPICSChangesSinceResponse",
+ "",
+ sizeof(CMsgClientPICSChangesSinceResponse),
+ 7,
+ cmsg_client_picschanges_since_response__field_descriptors,
+ cmsg_client_picschanges_since_response__field_indices_by_name,
+ 1, cmsg_client_picschanges_since_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_picsproduct_info_request__app_info__field_descriptors[3] =
+{
+ {
+ "appid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSProductInfoRequest__AppInfo, has_appid),
+ offsetof(CMsgClientPICSProductInfoRequest__AppInfo, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "access_token",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientPICSProductInfoRequest__AppInfo, has_access_token),
+ offsetof(CMsgClientPICSProductInfoRequest__AppInfo, access_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "only_public_obsolete",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPICSProductInfoRequest__AppInfo, has_only_public_obsolete),
+ offsetof(CMsgClientPICSProductInfoRequest__AppInfo, only_public_obsolete),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_picsproduct_info_request__app_info__field_indices_by_name[] = {
+ 1, /* field[1] = access_token */
+ 0, /* field[0] = appid */
+ 2, /* field[2] = only_public_obsolete */
+};
+static const ProtobufCIntRange cmsg_client_picsproduct_info_request__app_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_picsproduct_info_request__app_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPICSProductInfoRequest.AppInfo",
+ "AppInfo",
+ "CMsgClientPICSProductInfoRequest__AppInfo",
+ "",
+ sizeof(CMsgClientPICSProductInfoRequest__AppInfo),
+ 3,
+ cmsg_client_picsproduct_info_request__app_info__field_descriptors,
+ cmsg_client_picsproduct_info_request__app_info__field_indices_by_name,
+ 1, cmsg_client_picsproduct_info_request__app_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_picsproduct_info_request__package_info__field_descriptors[2] =
+{
+ {
+ "packageid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSProductInfoRequest__PackageInfo, has_packageid),
+ offsetof(CMsgClientPICSProductInfoRequest__PackageInfo, packageid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "access_token",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientPICSProductInfoRequest__PackageInfo, has_access_token),
+ offsetof(CMsgClientPICSProductInfoRequest__PackageInfo, access_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_picsproduct_info_request__package_info__field_indices_by_name[] = {
+ 1, /* field[1] = access_token */
+ 0, /* field[0] = packageid */
+};
+static const ProtobufCIntRange cmsg_client_picsproduct_info_request__package_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_picsproduct_info_request__package_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPICSProductInfoRequest.PackageInfo",
+ "PackageInfo",
+ "CMsgClientPICSProductInfoRequest__PackageInfo",
+ "",
+ sizeof(CMsgClientPICSProductInfoRequest__PackageInfo),
+ 2,
+ cmsg_client_picsproduct_info_request__package_info__field_descriptors,
+ cmsg_client_picsproduct_info_request__package_info__field_indices_by_name,
+ 1, cmsg_client_picsproduct_info_request__package_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_picsproduct_info_request__field_descriptors[6] =
+{
+ {
+ "packages",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientPICSProductInfoRequest, n_packages),
+ offsetof(CMsgClientPICSProductInfoRequest, packages),
+ &cmsg_client_picsproduct_info_request__package_info__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "apps",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientPICSProductInfoRequest, n_apps),
+ offsetof(CMsgClientPICSProductInfoRequest, apps),
+ &cmsg_client_picsproduct_info_request__app_info__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "meta_data_only",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPICSProductInfoRequest, has_meta_data_only),
+ offsetof(CMsgClientPICSProductInfoRequest, meta_data_only),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "num_prev_failed",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSProductInfoRequest, has_num_prev_failed),
+ offsetof(CMsgClientPICSProductInfoRequest, num_prev_failed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "OBSOLETE_supports_package_tokens",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSProductInfoRequest, has_obsolete_supports_package_tokens),
+ offsetof(CMsgClientPICSProductInfoRequest, obsolete_supports_package_tokens),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sequence_number",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSProductInfoRequest, has_sequence_number),
+ offsetof(CMsgClientPICSProductInfoRequest, sequence_number),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_picsproduct_info_request__field_indices_by_name[] = {
+ 4, /* field[4] = OBSOLETE_supports_package_tokens */
+ 1, /* field[1] = apps */
+ 2, /* field[2] = meta_data_only */
+ 3, /* field[3] = num_prev_failed */
+ 0, /* field[0] = packages */
+ 5, /* field[5] = sequence_number */
+};
+static const ProtobufCIntRange cmsg_client_picsproduct_info_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor cmsg_client_picsproduct_info_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPICSProductInfoRequest",
+ "CMsgClientPICSProductInfoRequest",
+ "CMsgClientPICSProductInfoRequest",
+ "",
+ sizeof(CMsgClientPICSProductInfoRequest),
+ 6,
+ cmsg_client_picsproduct_info_request__field_descriptors,
+ cmsg_client_picsproduct_info_request__field_indices_by_name,
+ 1, cmsg_client_picsproduct_info_request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_picsproduct_info_response__app_info__field_descriptors[7] =
+{
+ {
+ "appid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSProductInfoResponse__AppInfo, has_appid),
+ offsetof(CMsgClientPICSProductInfoResponse__AppInfo, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "change_number",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSProductInfoResponse__AppInfo, has_change_number),
+ offsetof(CMsgClientPICSProductInfoResponse__AppInfo, change_number),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "missing_token",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPICSProductInfoResponse__AppInfo, has_missing_token),
+ offsetof(CMsgClientPICSProductInfoResponse__AppInfo, missing_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sha",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientPICSProductInfoResponse__AppInfo, has_sha),
+ offsetof(CMsgClientPICSProductInfoResponse__AppInfo, sha),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "buffer",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientPICSProductInfoResponse__AppInfo, has_buffer),
+ offsetof(CMsgClientPICSProductInfoResponse__AppInfo, buffer),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "only_public",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPICSProductInfoResponse__AppInfo, has_only_public),
+ offsetof(CMsgClientPICSProductInfoResponse__AppInfo, only_public),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "size",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSProductInfoResponse__AppInfo, has_size),
+ offsetof(CMsgClientPICSProductInfoResponse__AppInfo, size),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_picsproduct_info_response__app_info__field_indices_by_name[] = {
+ 0, /* field[0] = appid */
+ 4, /* field[4] = buffer */
+ 1, /* field[1] = change_number */
+ 2, /* field[2] = missing_token */
+ 5, /* field[5] = only_public */
+ 3, /* field[3] = sha */
+ 6, /* field[6] = size */
+};
+static const ProtobufCIntRange cmsg_client_picsproduct_info_response__app_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cmsg_client_picsproduct_info_response__app_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPICSProductInfoResponse.AppInfo",
+ "AppInfo",
+ "CMsgClientPICSProductInfoResponse__AppInfo",
+ "",
+ sizeof(CMsgClientPICSProductInfoResponse__AppInfo),
+ 7,
+ cmsg_client_picsproduct_info_response__app_info__field_descriptors,
+ cmsg_client_picsproduct_info_response__app_info__field_indices_by_name,
+ 1, cmsg_client_picsproduct_info_response__app_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_picsproduct_info_response__package_info__field_descriptors[6] =
+{
+ {
+ "packageid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSProductInfoResponse__PackageInfo, has_packageid),
+ offsetof(CMsgClientPICSProductInfoResponse__PackageInfo, packageid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "change_number",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSProductInfoResponse__PackageInfo, has_change_number),
+ offsetof(CMsgClientPICSProductInfoResponse__PackageInfo, change_number),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "missing_token",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPICSProductInfoResponse__PackageInfo, has_missing_token),
+ offsetof(CMsgClientPICSProductInfoResponse__PackageInfo, missing_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "sha",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientPICSProductInfoResponse__PackageInfo, has_sha),
+ offsetof(CMsgClientPICSProductInfoResponse__PackageInfo, sha),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "buffer",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientPICSProductInfoResponse__PackageInfo, has_buffer),
+ offsetof(CMsgClientPICSProductInfoResponse__PackageInfo, buffer),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "size",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSProductInfoResponse__PackageInfo, has_size),
+ offsetof(CMsgClientPICSProductInfoResponse__PackageInfo, size),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_picsproduct_info_response__package_info__field_indices_by_name[] = {
+ 4, /* field[4] = buffer */
+ 1, /* field[1] = change_number */
+ 2, /* field[2] = missing_token */
+ 0, /* field[0] = packageid */
+ 3, /* field[3] = sha */
+ 5, /* field[5] = size */
+};
+static const ProtobufCIntRange cmsg_client_picsproduct_info_response__package_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor cmsg_client_picsproduct_info_response__package_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPICSProductInfoResponse.PackageInfo",
+ "PackageInfo",
+ "CMsgClientPICSProductInfoResponse__PackageInfo",
+ "",
+ sizeof(CMsgClientPICSProductInfoResponse__PackageInfo),
+ 6,
+ cmsg_client_picsproduct_info_response__package_info__field_descriptors,
+ cmsg_client_picsproduct_info_response__package_info__field_indices_by_name,
+ 1, cmsg_client_picsproduct_info_response__package_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_picsproduct_info_response__field_descriptors[8] =
+{
+ {
+ "apps",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientPICSProductInfoResponse, n_apps),
+ offsetof(CMsgClientPICSProductInfoResponse, apps),
+ &cmsg_client_picsproduct_info_response__app_info__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "unknown_appids",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSProductInfoResponse, n_unknown_appids),
+ offsetof(CMsgClientPICSProductInfoResponse, unknown_appids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "packages",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientPICSProductInfoResponse, n_packages),
+ offsetof(CMsgClientPICSProductInfoResponse, packages),
+ &cmsg_client_picsproduct_info_response__package_info__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "unknown_packageids",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSProductInfoResponse, n_unknown_packageids),
+ offsetof(CMsgClientPICSProductInfoResponse, unknown_packageids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "meta_data_only",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPICSProductInfoResponse, has_meta_data_only),
+ offsetof(CMsgClientPICSProductInfoResponse, meta_data_only),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "response_pending",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPICSProductInfoResponse, has_response_pending),
+ offsetof(CMsgClientPICSProductInfoResponse, response_pending),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "http_min_size",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSProductInfoResponse, has_http_min_size),
+ offsetof(CMsgClientPICSProductInfoResponse, http_min_size),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "http_host",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientPICSProductInfoResponse, http_host),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_picsproduct_info_response__field_indices_by_name[] = {
+ 0, /* field[0] = apps */
+ 7, /* field[7] = http_host */
+ 6, /* field[6] = http_min_size */
+ 4, /* field[4] = meta_data_only */
+ 2, /* field[2] = packages */
+ 5, /* field[5] = response_pending */
+ 1, /* field[1] = unknown_appids */
+ 3, /* field[3] = unknown_packageids */
+};
+static const ProtobufCIntRange cmsg_client_picsproduct_info_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor cmsg_client_picsproduct_info_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPICSProductInfoResponse",
+ "CMsgClientPICSProductInfoResponse",
+ "CMsgClientPICSProductInfoResponse",
+ "",
+ sizeof(CMsgClientPICSProductInfoResponse),
+ 8,
+ cmsg_client_picsproduct_info_response__field_descriptors,
+ cmsg_client_picsproduct_info_response__field_indices_by_name,
+ 1, cmsg_client_picsproduct_info_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_picsaccess_token_request__field_descriptors[2] =
+{
+ {
+ "packageids",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSAccessTokenRequest, n_packageids),
+ offsetof(CMsgClientPICSAccessTokenRequest, packageids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "appids",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSAccessTokenRequest, n_appids),
+ offsetof(CMsgClientPICSAccessTokenRequest, appids),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_picsaccess_token_request__field_indices_by_name[] = {
+ 1, /* field[1] = appids */
+ 0, /* field[0] = packageids */
+};
+static const ProtobufCIntRange cmsg_client_picsaccess_token_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_picsaccess_token_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPICSAccessTokenRequest",
+ "CMsgClientPICSAccessTokenRequest",
+ "CMsgClientPICSAccessTokenRequest",
+ "",
+ sizeof(CMsgClientPICSAccessTokenRequest),
+ 2,
+ cmsg_client_picsaccess_token_request__field_descriptors,
+ cmsg_client_picsaccess_token_request__field_indices_by_name,
+ 1, cmsg_client_picsaccess_token_request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_picsaccess_token_response__package_token__field_descriptors[2] =
+{
+ {
+ "packageid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSAccessTokenResponse__PackageToken, has_packageid),
+ offsetof(CMsgClientPICSAccessTokenResponse__PackageToken, packageid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "access_token",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientPICSAccessTokenResponse__PackageToken, has_access_token),
+ offsetof(CMsgClientPICSAccessTokenResponse__PackageToken, access_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_picsaccess_token_response__package_token__field_indices_by_name[] = {
+ 1, /* field[1] = access_token */
+ 0, /* field[0] = packageid */
+};
+static const ProtobufCIntRange cmsg_client_picsaccess_token_response__package_token__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_picsaccess_token_response__package_token__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPICSAccessTokenResponse.PackageToken",
+ "PackageToken",
+ "CMsgClientPICSAccessTokenResponse__PackageToken",
+ "",
+ sizeof(CMsgClientPICSAccessTokenResponse__PackageToken),
+ 2,
+ cmsg_client_picsaccess_token_response__package_token__field_descriptors,
+ cmsg_client_picsaccess_token_response__package_token__field_indices_by_name,
+ 1, cmsg_client_picsaccess_token_response__package_token__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_picsaccess_token_response__app_token__field_descriptors[2] =
+{
+ {
+ "appid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSAccessTokenResponse__AppToken, has_appid),
+ offsetof(CMsgClientPICSAccessTokenResponse__AppToken, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "access_token",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientPICSAccessTokenResponse__AppToken, has_access_token),
+ offsetof(CMsgClientPICSAccessTokenResponse__AppToken, access_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_picsaccess_token_response__app_token__field_indices_by_name[] = {
+ 1, /* field[1] = access_token */
+ 0, /* field[0] = appid */
+};
+static const ProtobufCIntRange cmsg_client_picsaccess_token_response__app_token__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_picsaccess_token_response__app_token__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPICSAccessTokenResponse.AppToken",
+ "AppToken",
+ "CMsgClientPICSAccessTokenResponse__AppToken",
+ "",
+ sizeof(CMsgClientPICSAccessTokenResponse__AppToken),
+ 2,
+ cmsg_client_picsaccess_token_response__app_token__field_descriptors,
+ cmsg_client_picsaccess_token_response__app_token__field_indices_by_name,
+ 1, cmsg_client_picsaccess_token_response__app_token__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_picsaccess_token_response__field_descriptors[4] =
+{
+ {
+ "package_access_tokens",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientPICSAccessTokenResponse, n_package_access_tokens),
+ offsetof(CMsgClientPICSAccessTokenResponse, package_access_tokens),
+ &cmsg_client_picsaccess_token_response__package_token__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "package_denied_tokens",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSAccessTokenResponse, n_package_denied_tokens),
+ offsetof(CMsgClientPICSAccessTokenResponse, package_denied_tokens),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_access_tokens",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientPICSAccessTokenResponse, n_app_access_tokens),
+ offsetof(CMsgClientPICSAccessTokenResponse, app_access_tokens),
+ &cmsg_client_picsaccess_token_response__app_token__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "app_denied_tokens",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPICSAccessTokenResponse, n_app_denied_tokens),
+ offsetof(CMsgClientPICSAccessTokenResponse, app_denied_tokens),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_picsaccess_token_response__field_indices_by_name[] = {
+ 2, /* field[2] = app_access_tokens */
+ 3, /* field[3] = app_denied_tokens */
+ 0, /* field[0] = package_access_tokens */
+ 1, /* field[1] = package_denied_tokens */
+};
+static const ProtobufCIntRange cmsg_client_picsaccess_token_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cmsg_client_picsaccess_token_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPICSAccessTokenResponse",
+ "CMsgClientPICSAccessTokenResponse",
+ "CMsgClientPICSAccessTokenResponse",
+ "",
+ sizeof(CMsgClientPICSAccessTokenResponse),
+ 4,
+ cmsg_client_picsaccess_token_response__field_descriptors,
+ cmsg_client_picsaccess_token_response__field_indices_by_name,
+ 1, cmsg_client_picsaccess_token_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/protocols/Steam/src/protobuf-c/steammessages_clientserver_appinfo.pb-c.h b/protocols/Steam/src/protobuf-c/steammessages_clientserver_appinfo.pb-c.h
new file mode 100644
index 0000000000..81a0bd4354
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_clientserver_appinfo.pb-c.h
@@ -0,0 +1,557 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_clientserver_appinfo.proto */
+
+#ifndef PROTOBUF_C_steammessages_5fclientserver_5fappinfo_2eproto__INCLUDED
+#define PROTOBUF_C_steammessages_5fclientserver_5fappinfo_2eproto__INCLUDED
+
+#include "protobuf-c.h"
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1000000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1004001 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "steammessages_base.pb-c.h"
+
+struct CMsgClientAppInfoUpdate;
+struct CMsgClientAppInfoChanges;
+struct CMsgClientAppInfoRequest;
+struct CMsgClientAppInfoRequest__App;
+struct CMsgClientPICSChangesSinceRequest;
+struct CMsgClientPICSChangesSinceResponse;
+struct CMsgClientPICSChangesSinceResponse__PackageChange;
+struct CMsgClientPICSChangesSinceResponse__AppChange;
+struct CMsgClientPICSProductInfoRequest;
+struct CMsgClientPICSProductInfoRequest__AppInfo;
+struct CMsgClientPICSProductInfoRequest__PackageInfo;
+struct CMsgClientPICSProductInfoResponse;
+struct CMsgClientPICSProductInfoResponse__AppInfo;
+struct CMsgClientPICSProductInfoResponse__PackageInfo;
+struct CMsgClientPICSAccessTokenRequest;
+struct CMsgClientPICSAccessTokenResponse;
+struct CMsgClientPICSAccessTokenResponse__PackageToken;
+struct CMsgClientPICSAccessTokenResponse__AppToken;
+
+
+/* --- enums --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor cmsg_client_app_info_update__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_app_info_changes__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_app_info_request__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_app_info_request__app__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_picschanges_since_request__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_picschanges_since_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_picschanges_since_response__package_change__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_picschanges_since_response__app_change__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_picsproduct_info_request__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_picsproduct_info_request__app_info__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_picsproduct_info_request__package_info__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_picsproduct_info_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_picsproduct_info_response__app_info__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_picsproduct_info_response__package_info__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_picsaccess_token_request__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_picsaccess_token_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_picsaccess_token_response__package_token__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_picsaccess_token_response__app_token__descriptor;
+
+/* --- messages --- */
+
+extern "C" void message_init_generic(const ProtobufCMessageDescriptor * desc, ProtobufCMessage * message);
+
+struct CMsgClientAppInfoUpdate : public ProtobufCppMessage
+{
+ CMsgClientAppInfoUpdate() :
+ ProtobufCppMessage(cmsg_client_app_info_update__descriptor)
+ {}
+
+ protobuf_c_boolean has_last_changenumber;
+ uint32_t last_changenumber;
+ protobuf_c_boolean has_send_changelist;
+ protobuf_c_boolean send_changelist;
+};
+
+struct CMsgClientAppInfoChanges : public ProtobufCppMessage
+{
+ CMsgClientAppInfoChanges() :
+ ProtobufCppMessage(cmsg_client_app_info_changes__descriptor)
+ {}
+
+ protobuf_c_boolean has_current_change_number;
+ uint32_t current_change_number;
+ protobuf_c_boolean has_force_full_update;
+ protobuf_c_boolean force_full_update;
+ size_t n_appids;
+ uint32_t *appids;
+};
+
+struct CMsgClientAppInfoRequest__App : public ProtobufCppMessage
+{
+ CMsgClientAppInfoRequest__App() :
+ ProtobufCppMessage(cmsg_client_app_info_request__app__descriptor)
+ {}
+
+ protobuf_c_boolean has_app_id;
+ uint32_t app_id;
+ protobuf_c_boolean has_section_flags;
+ uint32_t section_flags;
+ size_t n_section_crc;
+ uint32_t *section_crc;
+};
+
+struct CMsgClientAppInfoRequest : public ProtobufCppMessage
+{
+ CMsgClientAppInfoRequest() :
+ ProtobufCppMessage(cmsg_client_app_info_request__descriptor)
+ {}
+
+ size_t n_apps;
+ CMsgClientAppInfoRequest__App **apps;
+ protobuf_c_boolean has_supports_batches;
+ protobuf_c_boolean supports_batches;
+};
+
+struct CMsgClientPICSChangesSinceRequest : public ProtobufCppMessage
+{
+ CMsgClientPICSChangesSinceRequest() :
+ ProtobufCppMessage(cmsg_client_picschanges_since_request__descriptor)
+ {}
+
+ protobuf_c_boolean has_since_change_number;
+ uint32_t since_change_number;
+ protobuf_c_boolean has_send_app_info_changes;
+ protobuf_c_boolean send_app_info_changes;
+ protobuf_c_boolean has_send_package_info_changes;
+ protobuf_c_boolean send_package_info_changes;
+ protobuf_c_boolean has_num_app_info_cached;
+ uint32_t num_app_info_cached;
+ protobuf_c_boolean has_num_package_info_cached;
+ uint32_t num_package_info_cached;
+};
+
+struct CMsgClientPICSChangesSinceResponse__PackageChange : public ProtobufCppMessage
+{
+ CMsgClientPICSChangesSinceResponse__PackageChange() :
+ ProtobufCppMessage(cmsg_client_picschanges_since_response__package_change__descriptor)
+ {}
+
+ protobuf_c_boolean has_packageid;
+ uint32_t packageid;
+ protobuf_c_boolean has_change_number;
+ uint32_t change_number;
+ protobuf_c_boolean has_needs_token;
+ protobuf_c_boolean needs_token;
+};
+
+struct CMsgClientPICSChangesSinceResponse__AppChange : public ProtobufCppMessage
+{
+ CMsgClientPICSChangesSinceResponse__AppChange() :
+ ProtobufCppMessage(cmsg_client_picschanges_since_response__app_change__descriptor)
+ {}
+
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+ protobuf_c_boolean has_change_number;
+ uint32_t change_number;
+ protobuf_c_boolean has_needs_token;
+ protobuf_c_boolean needs_token;
+};
+
+struct CMsgClientPICSChangesSinceResponse : public ProtobufCppMessage
+{
+ CMsgClientPICSChangesSinceResponse() :
+ ProtobufCppMessage(cmsg_client_picschanges_since_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_current_change_number;
+ uint32_t current_change_number;
+ protobuf_c_boolean has_since_change_number;
+ uint32_t since_change_number;
+ protobuf_c_boolean has_force_full_update;
+ protobuf_c_boolean force_full_update;
+ size_t n_package_changes;
+ CMsgClientPICSChangesSinceResponse__PackageChange **package_changes;
+ size_t n_app_changes;
+ CMsgClientPICSChangesSinceResponse__AppChange **app_changes;
+ protobuf_c_boolean has_force_full_app_update;
+ protobuf_c_boolean force_full_app_update;
+ protobuf_c_boolean has_force_full_package_update;
+ protobuf_c_boolean force_full_package_update;
+};
+
+struct CMsgClientPICSProductInfoRequest__AppInfo : public ProtobufCppMessage
+{
+ CMsgClientPICSProductInfoRequest__AppInfo() :
+ ProtobufCppMessage(cmsg_client_picsproduct_info_request__app_info__descriptor)
+ {}
+
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+ protobuf_c_boolean has_access_token;
+ uint64_t access_token;
+ protobuf_c_boolean has_only_public_obsolete;
+ protobuf_c_boolean only_public_obsolete;
+};
+
+struct CMsgClientPICSProductInfoRequest__PackageInfo : public ProtobufCppMessage
+{
+ CMsgClientPICSProductInfoRequest__PackageInfo() :
+ ProtobufCppMessage(cmsg_client_picsproduct_info_request__package_info__descriptor)
+ {}
+
+ protobuf_c_boolean has_packageid;
+ uint32_t packageid;
+ protobuf_c_boolean has_access_token;
+ uint64_t access_token;
+};
+
+struct CMsgClientPICSProductInfoRequest : public ProtobufCppMessage
+{
+ CMsgClientPICSProductInfoRequest() :
+ ProtobufCppMessage(cmsg_client_picsproduct_info_request__descriptor)
+ {}
+
+ size_t n_packages;
+ CMsgClientPICSProductInfoRequest__PackageInfo **packages;
+ size_t n_apps;
+ CMsgClientPICSProductInfoRequest__AppInfo **apps;
+ protobuf_c_boolean has_meta_data_only;
+ protobuf_c_boolean meta_data_only;
+ protobuf_c_boolean has_num_prev_failed;
+ uint32_t num_prev_failed;
+ protobuf_c_boolean has_obsolete_supports_package_tokens;
+ uint32_t obsolete_supports_package_tokens;
+ protobuf_c_boolean has_sequence_number;
+ uint32_t sequence_number;
+};
+
+struct CMsgClientPICSProductInfoResponse__AppInfo : public ProtobufCppMessage
+{
+ CMsgClientPICSProductInfoResponse__AppInfo() :
+ ProtobufCppMessage(cmsg_client_picsproduct_info_response__app_info__descriptor)
+ {}
+
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+ protobuf_c_boolean has_change_number;
+ uint32_t change_number;
+ protobuf_c_boolean has_missing_token;
+ protobuf_c_boolean missing_token;
+ protobuf_c_boolean has_sha;
+ ProtobufCBinaryData sha;
+ protobuf_c_boolean has_buffer;
+ ProtobufCBinaryData buffer;
+ protobuf_c_boolean has_only_public;
+ protobuf_c_boolean only_public;
+ protobuf_c_boolean has_size;
+ uint32_t size;
+};
+
+struct CMsgClientPICSProductInfoResponse__PackageInfo : public ProtobufCppMessage
+{
+ CMsgClientPICSProductInfoResponse__PackageInfo() :
+ ProtobufCppMessage(cmsg_client_picsproduct_info_response__package_info__descriptor)
+ {}
+
+ protobuf_c_boolean has_packageid;
+ uint32_t packageid;
+ protobuf_c_boolean has_change_number;
+ uint32_t change_number;
+ protobuf_c_boolean has_missing_token;
+ protobuf_c_boolean missing_token;
+ protobuf_c_boolean has_sha;
+ ProtobufCBinaryData sha;
+ protobuf_c_boolean has_buffer;
+ ProtobufCBinaryData buffer;
+ protobuf_c_boolean has_size;
+ uint32_t size;
+};
+
+struct CMsgClientPICSProductInfoResponse : public ProtobufCppMessage
+{
+ CMsgClientPICSProductInfoResponse() :
+ ProtobufCppMessage(cmsg_client_picsproduct_info_response__descriptor)
+ {}
+
+ size_t n_apps;
+ CMsgClientPICSProductInfoResponse__AppInfo **apps;
+ size_t n_unknown_appids;
+ uint32_t *unknown_appids;
+ size_t n_packages;
+ CMsgClientPICSProductInfoResponse__PackageInfo **packages;
+ size_t n_unknown_packageids;
+ uint32_t *unknown_packageids;
+ protobuf_c_boolean has_meta_data_only;
+ protobuf_c_boolean meta_data_only;
+ protobuf_c_boolean has_response_pending;
+ protobuf_c_boolean response_pending;
+ protobuf_c_boolean has_http_min_size;
+ uint32_t http_min_size;
+ char *http_host;
+};
+
+struct CMsgClientPICSAccessTokenRequest : public ProtobufCppMessage
+{
+ CMsgClientPICSAccessTokenRequest() :
+ ProtobufCppMessage(cmsg_client_picsaccess_token_request__descriptor)
+ {}
+
+ size_t n_packageids;
+ uint32_t *packageids;
+ size_t n_appids;
+ uint32_t *appids;
+};
+
+struct CMsgClientPICSAccessTokenResponse__PackageToken : public ProtobufCppMessage
+{
+ CMsgClientPICSAccessTokenResponse__PackageToken() :
+ ProtobufCppMessage(cmsg_client_picsaccess_token_response__package_token__descriptor)
+ {}
+
+ protobuf_c_boolean has_packageid;
+ uint32_t packageid;
+ protobuf_c_boolean has_access_token;
+ uint64_t access_token;
+};
+
+struct CMsgClientPICSAccessTokenResponse__AppToken : public ProtobufCppMessage
+{
+ CMsgClientPICSAccessTokenResponse__AppToken() :
+ ProtobufCppMessage(cmsg_client_picsaccess_token_response__app_token__descriptor)
+ {}
+
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+ protobuf_c_boolean has_access_token;
+ uint64_t access_token;
+};
+
+struct CMsgClientPICSAccessTokenResponse : public ProtobufCppMessage
+{
+ CMsgClientPICSAccessTokenResponse() :
+ ProtobufCppMessage(cmsg_client_picsaccess_token_response__descriptor)
+ {}
+
+ size_t n_package_access_tokens;
+ CMsgClientPICSAccessTokenResponse__PackageToken **package_access_tokens;
+ size_t n_package_denied_tokens;
+ uint32_t *package_denied_tokens;
+ size_t n_app_access_tokens;
+ CMsgClientPICSAccessTokenResponse__AppToken **app_access_tokens;
+ size_t n_app_denied_tokens;
+ uint32_t *app_denied_tokens;
+};
+
+size_t cmsg_client_app_info_update__get_packed_size
+ (const CMsgClientAppInfoUpdate *message);
+size_t cmsg_client_app_info_update__pack
+ (const CMsgClientAppInfoUpdate *message,
+ uint8_t *out);
+size_t cmsg_client_app_info_update__pack_to_buffer
+ (const CMsgClientAppInfoUpdate *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAppInfoUpdate *
+ cmsg_client_app_info_update__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_app_info_update__free_unpacked
+ (CMsgClientAppInfoUpdate *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_app_info_changes__get_packed_size
+ (const CMsgClientAppInfoChanges *message);
+size_t cmsg_client_app_info_changes__pack
+ (const CMsgClientAppInfoChanges *message,
+ uint8_t *out);
+size_t cmsg_client_app_info_changes__pack_to_buffer
+ (const CMsgClientAppInfoChanges *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAppInfoChanges *
+ cmsg_client_app_info_changes__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_app_info_changes__free_unpacked
+ (CMsgClientAppInfoChanges *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_app_info_request__get_packed_size
+ (const CMsgClientAppInfoRequest *message);
+size_t cmsg_client_app_info_request__pack
+ (const CMsgClientAppInfoRequest *message,
+ uint8_t *out);
+size_t cmsg_client_app_info_request__pack_to_buffer
+ (const CMsgClientAppInfoRequest *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAppInfoRequest *
+ cmsg_client_app_info_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_app_info_request__free_unpacked
+ (CMsgClientAppInfoRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_picschanges_since_request__get_packed_size
+ (const CMsgClientPICSChangesSinceRequest *message);
+size_t cmsg_client_picschanges_since_request__pack
+ (const CMsgClientPICSChangesSinceRequest *message,
+ uint8_t *out);
+size_t cmsg_client_picschanges_since_request__pack_to_buffer
+ (const CMsgClientPICSChangesSinceRequest *message,
+ ProtobufCBuffer *buffer);
+CMsgClientPICSChangesSinceRequest *
+ cmsg_client_picschanges_since_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_picschanges_since_request__free_unpacked
+ (CMsgClientPICSChangesSinceRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_picschanges_since_response__get_packed_size
+ (const CMsgClientPICSChangesSinceResponse *message);
+size_t cmsg_client_picschanges_since_response__pack
+ (const CMsgClientPICSChangesSinceResponse *message,
+ uint8_t *out);
+size_t cmsg_client_picschanges_since_response__pack_to_buffer
+ (const CMsgClientPICSChangesSinceResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientPICSChangesSinceResponse *
+ cmsg_client_picschanges_since_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_picschanges_since_response__free_unpacked
+ (CMsgClientPICSChangesSinceResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_picsproduct_info_request__get_packed_size
+ (const CMsgClientPICSProductInfoRequest *message);
+size_t cmsg_client_picsproduct_info_request__pack
+ (const CMsgClientPICSProductInfoRequest *message,
+ uint8_t *out);
+size_t cmsg_client_picsproduct_info_request__pack_to_buffer
+ (const CMsgClientPICSProductInfoRequest *message,
+ ProtobufCBuffer *buffer);
+CMsgClientPICSProductInfoRequest *
+ cmsg_client_picsproduct_info_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_picsproduct_info_request__free_unpacked
+ (CMsgClientPICSProductInfoRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_picsproduct_info_response__get_packed_size
+ (const CMsgClientPICSProductInfoResponse *message);
+size_t cmsg_client_picsproduct_info_response__pack
+ (const CMsgClientPICSProductInfoResponse *message,
+ uint8_t *out);
+size_t cmsg_client_picsproduct_info_response__pack_to_buffer
+ (const CMsgClientPICSProductInfoResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientPICSProductInfoResponse *
+ cmsg_client_picsproduct_info_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_picsproduct_info_response__free_unpacked
+ (CMsgClientPICSProductInfoResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_picsaccess_token_request__get_packed_size
+ (const CMsgClientPICSAccessTokenRequest *message);
+size_t cmsg_client_picsaccess_token_request__pack
+ (const CMsgClientPICSAccessTokenRequest *message,
+ uint8_t *out);
+size_t cmsg_client_picsaccess_token_request__pack_to_buffer
+ (const CMsgClientPICSAccessTokenRequest *message,
+ ProtobufCBuffer *buffer);
+CMsgClientPICSAccessTokenRequest *
+ cmsg_client_picsaccess_token_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_picsaccess_token_request__free_unpacked
+ (CMsgClientPICSAccessTokenRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_picsaccess_token_response__get_packed_size
+ (const CMsgClientPICSAccessTokenResponse *message);
+size_t cmsg_client_picsaccess_token_response__pack
+ (const CMsgClientPICSAccessTokenResponse *message,
+ uint8_t *out);
+size_t cmsg_client_picsaccess_token_response__pack_to_buffer
+ (const CMsgClientPICSAccessTokenResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientPICSAccessTokenResponse *
+ cmsg_client_picsaccess_token_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_picsaccess_token_response__free_unpacked
+ (CMsgClientPICSAccessTokenResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*CMsgClientAppInfoUpdate_Closure)
+ (const CMsgClientAppInfoUpdate *message,
+ void *closure_data);
+typedef void (*CMsgClientAppInfoChanges_Closure)
+ (const CMsgClientAppInfoChanges *message,
+ void *closure_data);
+typedef void (*CMsgClientAppInfoRequest__App_Closure)
+ (const CMsgClientAppInfoRequest__App *message,
+ void *closure_data);
+typedef void (*CMsgClientAppInfoRequest_Closure)
+ (const CMsgClientAppInfoRequest *message,
+ void *closure_data);
+typedef void (*CMsgClientPICSChangesSinceRequest_Closure)
+ (const CMsgClientPICSChangesSinceRequest *message,
+ void *closure_data);
+typedef void (*CMsgClientPICSChangesSinceResponse__PackageChange_Closure)
+ (const CMsgClientPICSChangesSinceResponse__PackageChange *message,
+ void *closure_data);
+typedef void (*CMsgClientPICSChangesSinceResponse__AppChange_Closure)
+ (const CMsgClientPICSChangesSinceResponse__AppChange *message,
+ void *closure_data);
+typedef void (*CMsgClientPICSChangesSinceResponse_Closure)
+ (const CMsgClientPICSChangesSinceResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientPICSProductInfoRequest__AppInfo_Closure)
+ (const CMsgClientPICSProductInfoRequest__AppInfo *message,
+ void *closure_data);
+typedef void (*CMsgClientPICSProductInfoRequest__PackageInfo_Closure)
+ (const CMsgClientPICSProductInfoRequest__PackageInfo *message,
+ void *closure_data);
+typedef void (*CMsgClientPICSProductInfoRequest_Closure)
+ (const CMsgClientPICSProductInfoRequest *message,
+ void *closure_data);
+typedef void (*CMsgClientPICSProductInfoResponse__AppInfo_Closure)
+ (const CMsgClientPICSProductInfoResponse__AppInfo *message,
+ void *closure_data);
+typedef void (*CMsgClientPICSProductInfoResponse__PackageInfo_Closure)
+ (const CMsgClientPICSProductInfoResponse__PackageInfo *message,
+ void *closure_data);
+typedef void (*CMsgClientPICSProductInfoResponse_Closure)
+ (const CMsgClientPICSProductInfoResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientPICSAccessTokenRequest_Closure)
+ (const CMsgClientPICSAccessTokenRequest *message,
+ void *closure_data);
+typedef void (*CMsgClientPICSAccessTokenResponse__PackageToken_Closure)
+ (const CMsgClientPICSAccessTokenResponse__PackageToken *message,
+ void *closure_data);
+typedef void (*CMsgClientPICSAccessTokenResponse__AppToken_Closure)
+ (const CMsgClientPICSAccessTokenResponse__AppToken *message,
+ void *closure_data);
+typedef void (*CMsgClientPICSAccessTokenResponse_Closure)
+ (const CMsgClientPICSAccessTokenResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_steammessages_5fclientserver_5fappinfo_2eproto__INCLUDED */
diff --git a/protocols/Steam/src/protobuf-c/steammessages_clientserver_appinfo.proto b/protocols/Steam/src/protobuf-c/steammessages_clientserver_appinfo.proto
new file mode 100644
index 0000000000..41bcdabd32
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_clientserver_appinfo.proto
@@ -0,0 +1,130 @@
+import "steammessages_base.proto";
+
+option optimize_for = SPEED;
+option cc_generic_services = false;
+
+message CMsgClientAppInfoUpdate {
+ optional uint32 last_changenumber = 1;
+ optional bool send_changelist = 2;
+}
+
+message CMsgClientAppInfoChanges {
+ optional uint32 current_change_number = 1;
+ optional bool force_full_update = 2;
+ repeated uint32 appIDs = 3;
+}
+
+message CMsgClientAppInfoRequest {
+ message App {
+ optional uint32 app_id = 1;
+ optional uint32 section_flags = 2;
+ repeated uint32 section_CRC = 3;
+ }
+
+ repeated .CMsgClientAppInfoRequest.App apps = 1;
+ optional bool supports_batches = 2 [default = false];
+}
+
+message CMsgClientPICSChangesSinceRequest {
+ optional uint32 since_change_number = 1;
+ optional bool send_app_info_changes = 2;
+ optional bool send_package_info_changes = 3;
+ optional uint32 num_app_info_cached = 4;
+ optional uint32 num_package_info_cached = 5;
+}
+
+message CMsgClientPICSChangesSinceResponse {
+ message PackageChange {
+ optional uint32 packageid = 1;
+ optional uint32 change_number = 2;
+ optional bool needs_token = 3;
+ }
+
+ message AppChange {
+ optional uint32 appid = 1;
+ optional uint32 change_number = 2;
+ optional bool needs_token = 3;
+ }
+
+ optional uint32 current_change_number = 1;
+ optional uint32 since_change_number = 2;
+ optional bool force_full_update = 3;
+ repeated .CMsgClientPICSChangesSinceResponse.PackageChange package_changes = 4;
+ repeated .CMsgClientPICSChangesSinceResponse.AppChange app_changes = 5;
+ optional bool force_full_app_update = 6;
+ optional bool force_full_package_update = 7;
+}
+
+message CMsgClientPICSProductInfoRequest {
+ message AppInfo {
+ optional uint32 appid = 1;
+ optional uint64 access_token = 2;
+ optional bool only_public_obsolete = 3;
+ }
+
+ message PackageInfo {
+ optional uint32 packageid = 1;
+ optional uint64 access_token = 2;
+ }
+
+ repeated .CMsgClientPICSProductInfoRequest.PackageInfo packages = 1;
+ repeated .CMsgClientPICSProductInfoRequest.AppInfo apps = 2;
+ optional bool meta_data_only = 3;
+ optional uint32 num_prev_failed = 4;
+ optional uint32 OBSOLETE_supports_package_tokens = 5;
+ optional uint32 sequence_number = 6;
+}
+
+message CMsgClientPICSProductInfoResponse {
+ option (msgpool_hard_limit) = 0;
+
+ message AppInfo {
+ optional uint32 appid = 1;
+ optional uint32 change_number = 2;
+ optional bool missing_token = 3;
+ optional bytes sha = 4;
+ optional bytes buffer = 5;
+ optional bool only_public = 6;
+ optional uint32 size = 7;
+ }
+
+ message PackageInfo {
+ optional uint32 packageid = 1;
+ optional uint32 change_number = 2;
+ optional bool missing_token = 3;
+ optional bytes sha = 4;
+ optional bytes buffer = 5;
+ optional uint32 size = 6;
+ }
+
+ repeated .CMsgClientPICSProductInfoResponse.AppInfo apps = 1;
+ repeated uint32 unknown_appids = 2;
+ repeated .CMsgClientPICSProductInfoResponse.PackageInfo packages = 3;
+ repeated uint32 unknown_packageids = 4;
+ optional bool meta_data_only = 5;
+ optional bool response_pending = 6;
+ optional uint32 http_min_size = 7;
+ optional string http_host = 8;
+}
+
+message CMsgClientPICSAccessTokenRequest {
+ repeated uint32 packageids = 1;
+ repeated uint32 appids = 2;
+}
+
+message CMsgClientPICSAccessTokenResponse {
+ message PackageToken {
+ optional uint32 packageid = 1;
+ optional uint64 access_token = 2;
+ }
+
+ message AppToken {
+ optional uint32 appid = 1;
+ optional uint64 access_token = 2;
+ }
+
+ repeated .CMsgClientPICSAccessTokenResponse.PackageToken package_access_tokens = 1;
+ repeated uint32 package_denied_tokens = 2;
+ repeated .CMsgClientPICSAccessTokenResponse.AppToken app_access_tokens = 3;
+ repeated uint32 app_denied_tokens = 4;
+}
diff --git a/protocols/Steam/src/protobuf-c/steammessages_clientserver_friends.pb-c.cpp b/protocols/Steam/src/protobuf-c/steammessages_clientserver_friends.pb-c.cpp
new file mode 100644
index 0000000000..79f43880cc
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_clientserver_friends.pb-c.cpp
@@ -0,0 +1,3920 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_clientserver_friends.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "steammessages_clientserver_friends.pb-c.h"
+size_t cmsg_client_friend_msg__get_packed_size
+ (const CMsgClientFriendMsg *message)
+{
+ assert(message->descriptor == &cmsg_client_friend_msg__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_friend_msg__pack
+ (const CMsgClientFriendMsg *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_friend_msg__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_friend_msg__pack_to_buffer
+ (const CMsgClientFriendMsg *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_friend_msg__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientFriendMsg *
+ cmsg_client_friend_msg__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientFriendMsg *)
+ protobuf_c_message_unpack (&cmsg_client_friend_msg__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_friend_msg__free_unpacked
+ (CMsgClientFriendMsg *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_friend_msg__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_friend_msg_incoming__get_packed_size
+ (const CMsgClientFriendMsgIncoming *message)
+{
+ assert(message->descriptor == &cmsg_client_friend_msg_incoming__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_friend_msg_incoming__pack
+ (const CMsgClientFriendMsgIncoming *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_friend_msg_incoming__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_friend_msg_incoming__pack_to_buffer
+ (const CMsgClientFriendMsgIncoming *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_friend_msg_incoming__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientFriendMsgIncoming *
+ cmsg_client_friend_msg_incoming__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientFriendMsgIncoming *)
+ protobuf_c_message_unpack (&cmsg_client_friend_msg_incoming__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_friend_msg_incoming__free_unpacked
+ (CMsgClientFriendMsgIncoming *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_friend_msg_incoming__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_add_friend__get_packed_size
+ (const CMsgClientAddFriend *message)
+{
+ assert(message->descriptor == &cmsg_client_add_friend__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_add_friend__pack
+ (const CMsgClientAddFriend *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_add_friend__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_add_friend__pack_to_buffer
+ (const CMsgClientAddFriend *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_add_friend__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAddFriend *
+ cmsg_client_add_friend__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAddFriend *)
+ protobuf_c_message_unpack (&cmsg_client_add_friend__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_add_friend__free_unpacked
+ (CMsgClientAddFriend *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_add_friend__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_add_friend_response__get_packed_size
+ (const CMsgClientAddFriendResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_add_friend_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_add_friend_response__pack
+ (const CMsgClientAddFriendResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_add_friend_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_add_friend_response__pack_to_buffer
+ (const CMsgClientAddFriendResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_add_friend_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAddFriendResponse *
+ cmsg_client_add_friend_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAddFriendResponse *)
+ protobuf_c_message_unpack (&cmsg_client_add_friend_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_add_friend_response__free_unpacked
+ (CMsgClientAddFriendResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_add_friend_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_remove_friend__get_packed_size
+ (const CMsgClientRemoveFriend *message)
+{
+ assert(message->descriptor == &cmsg_client_remove_friend__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_remove_friend__pack
+ (const CMsgClientRemoveFriend *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_remove_friend__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_remove_friend__pack_to_buffer
+ (const CMsgClientRemoveFriend *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_remove_friend__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRemoveFriend *
+ cmsg_client_remove_friend__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRemoveFriend *)
+ protobuf_c_message_unpack (&cmsg_client_remove_friend__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_remove_friend__free_unpacked
+ (CMsgClientRemoveFriend *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_remove_friend__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_hide_friend__get_packed_size
+ (const CMsgClientHideFriend *message)
+{
+ assert(message->descriptor == &cmsg_client_hide_friend__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_hide_friend__pack
+ (const CMsgClientHideFriend *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_hide_friend__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_hide_friend__pack_to_buffer
+ (const CMsgClientHideFriend *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_hide_friend__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientHideFriend *
+ cmsg_client_hide_friend__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientHideFriend *)
+ protobuf_c_message_unpack (&cmsg_client_hide_friend__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_hide_friend__free_unpacked
+ (CMsgClientHideFriend *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_hide_friend__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_friends_list__get_packed_size
+ (const CMsgClientFriendsList *message)
+{
+ assert(message->descriptor == &cmsg_client_friends_list__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_friends_list__pack
+ (const CMsgClientFriendsList *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_friends_list__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_friends_list__pack_to_buffer
+ (const CMsgClientFriendsList *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_friends_list__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientFriendsList *
+ cmsg_client_friends_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientFriendsList *)
+ protobuf_c_message_unpack (&cmsg_client_friends_list__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_friends_list__free_unpacked
+ (CMsgClientFriendsList *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_friends_list__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_friends_groups_list__get_packed_size
+ (const CMsgClientFriendsGroupsList *message)
+{
+ assert(message->descriptor == &cmsg_client_friends_groups_list__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_friends_groups_list__pack
+ (const CMsgClientFriendsGroupsList *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_friends_groups_list__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_friends_groups_list__pack_to_buffer
+ (const CMsgClientFriendsGroupsList *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_friends_groups_list__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientFriendsGroupsList *
+ cmsg_client_friends_groups_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientFriendsGroupsList *)
+ protobuf_c_message_unpack (&cmsg_client_friends_groups_list__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_friends_groups_list__free_unpacked
+ (CMsgClientFriendsGroupsList *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_friends_groups_list__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_player_nickname_list__get_packed_size
+ (const CMsgClientPlayerNicknameList *message)
+{
+ assert(message->descriptor == &cmsg_client_player_nickname_list__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_player_nickname_list__pack
+ (const CMsgClientPlayerNicknameList *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_player_nickname_list__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_player_nickname_list__pack_to_buffer
+ (const CMsgClientPlayerNicknameList *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_player_nickname_list__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientPlayerNicknameList *
+ cmsg_client_player_nickname_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientPlayerNicknameList *)
+ protobuf_c_message_unpack (&cmsg_client_player_nickname_list__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_player_nickname_list__free_unpacked
+ (CMsgClientPlayerNicknameList *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_player_nickname_list__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_set_player_nickname__get_packed_size
+ (const CMsgClientSetPlayerNickname *message)
+{
+ assert(message->descriptor == &cmsg_client_set_player_nickname__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_set_player_nickname__pack
+ (const CMsgClientSetPlayerNickname *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_set_player_nickname__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_set_player_nickname__pack_to_buffer
+ (const CMsgClientSetPlayerNickname *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_set_player_nickname__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientSetPlayerNickname *
+ cmsg_client_set_player_nickname__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientSetPlayerNickname *)
+ protobuf_c_message_unpack (&cmsg_client_set_player_nickname__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_set_player_nickname__free_unpacked
+ (CMsgClientSetPlayerNickname *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_set_player_nickname__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_set_player_nickname_response__get_packed_size
+ (const CMsgClientSetPlayerNicknameResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_set_player_nickname_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_set_player_nickname_response__pack
+ (const CMsgClientSetPlayerNicknameResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_set_player_nickname_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_set_player_nickname_response__pack_to_buffer
+ (const CMsgClientSetPlayerNicknameResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_set_player_nickname_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientSetPlayerNicknameResponse *
+ cmsg_client_set_player_nickname_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientSetPlayerNicknameResponse *)
+ protobuf_c_message_unpack (&cmsg_client_set_player_nickname_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_set_player_nickname_response__free_unpacked
+ (CMsgClientSetPlayerNicknameResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_set_player_nickname_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_request_friend_data__get_packed_size
+ (const CMsgClientRequestFriendData *message)
+{
+ assert(message->descriptor == &cmsg_client_request_friend_data__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_request_friend_data__pack
+ (const CMsgClientRequestFriendData *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_request_friend_data__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_request_friend_data__pack_to_buffer
+ (const CMsgClientRequestFriendData *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_request_friend_data__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRequestFriendData *
+ cmsg_client_request_friend_data__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRequestFriendData *)
+ protobuf_c_message_unpack (&cmsg_client_request_friend_data__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_request_friend_data__free_unpacked
+ (CMsgClientRequestFriendData *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_request_friend_data__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_change_status__get_packed_size
+ (const CMsgClientChangeStatus *message)
+{
+ assert(message->descriptor == &cmsg_client_change_status__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_change_status__pack
+ (const CMsgClientChangeStatus *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_change_status__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_change_status__pack_to_buffer
+ (const CMsgClientChangeStatus *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_change_status__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientChangeStatus *
+ cmsg_client_change_status__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientChangeStatus *)
+ protobuf_c_message_unpack (&cmsg_client_change_status__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_change_status__free_unpacked
+ (CMsgClientChangeStatus *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_change_status__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_persona_change_response__get_packed_size
+ (const CMsgPersonaChangeResponse *message)
+{
+ assert(message->descriptor == &cmsg_persona_change_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_persona_change_response__pack
+ (const CMsgPersonaChangeResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_persona_change_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_persona_change_response__pack_to_buffer
+ (const CMsgPersonaChangeResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_persona_change_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgPersonaChangeResponse *
+ cmsg_persona_change_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgPersonaChangeResponse *)
+ protobuf_c_message_unpack (&cmsg_persona_change_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_persona_change_response__free_unpacked
+ (CMsgPersonaChangeResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_persona_change_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_persona_state__get_packed_size
+ (const CMsgClientPersonaState *message)
+{
+ assert(message->descriptor == &cmsg_client_persona_state__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_persona_state__pack
+ (const CMsgClientPersonaState *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_persona_state__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_persona_state__pack_to_buffer
+ (const CMsgClientPersonaState *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_persona_state__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientPersonaState *
+ cmsg_client_persona_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientPersonaState *)
+ protobuf_c_message_unpack (&cmsg_client_persona_state__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_persona_state__free_unpacked
+ (CMsgClientPersonaState *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_persona_state__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_friend_profile_info__get_packed_size
+ (const CMsgClientFriendProfileInfo *message)
+{
+ assert(message->descriptor == &cmsg_client_friend_profile_info__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_friend_profile_info__pack
+ (const CMsgClientFriendProfileInfo *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_friend_profile_info__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_friend_profile_info__pack_to_buffer
+ (const CMsgClientFriendProfileInfo *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_friend_profile_info__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientFriendProfileInfo *
+ cmsg_client_friend_profile_info__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientFriendProfileInfo *)
+ protobuf_c_message_unpack (&cmsg_client_friend_profile_info__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_friend_profile_info__free_unpacked
+ (CMsgClientFriendProfileInfo *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_friend_profile_info__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_friend_profile_info_response__get_packed_size
+ (const CMsgClientFriendProfileInfoResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_friend_profile_info_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_friend_profile_info_response__pack
+ (const CMsgClientFriendProfileInfoResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_friend_profile_info_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_friend_profile_info_response__pack_to_buffer
+ (const CMsgClientFriendProfileInfoResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_friend_profile_info_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientFriendProfileInfoResponse *
+ cmsg_client_friend_profile_info_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientFriendProfileInfoResponse *)
+ protobuf_c_message_unpack (&cmsg_client_friend_profile_info_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_friend_profile_info_response__free_unpacked
+ (CMsgClientFriendProfileInfoResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_friend_profile_info_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_create_friends_group__get_packed_size
+ (const CMsgClientCreateFriendsGroup *message)
+{
+ assert(message->descriptor == &cmsg_client_create_friends_group__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_create_friends_group__pack
+ (const CMsgClientCreateFriendsGroup *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_create_friends_group__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_create_friends_group__pack_to_buffer
+ (const CMsgClientCreateFriendsGroup *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_create_friends_group__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientCreateFriendsGroup *
+ cmsg_client_create_friends_group__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientCreateFriendsGroup *)
+ protobuf_c_message_unpack (&cmsg_client_create_friends_group__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_create_friends_group__free_unpacked
+ (CMsgClientCreateFriendsGroup *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_create_friends_group__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_create_friends_group_response__get_packed_size
+ (const CMsgClientCreateFriendsGroupResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_create_friends_group_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_create_friends_group_response__pack
+ (const CMsgClientCreateFriendsGroupResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_create_friends_group_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_create_friends_group_response__pack_to_buffer
+ (const CMsgClientCreateFriendsGroupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_create_friends_group_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientCreateFriendsGroupResponse *
+ cmsg_client_create_friends_group_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientCreateFriendsGroupResponse *)
+ protobuf_c_message_unpack (&cmsg_client_create_friends_group_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_create_friends_group_response__free_unpacked
+ (CMsgClientCreateFriendsGroupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_create_friends_group_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_delete_friends_group__get_packed_size
+ (const CMsgClientDeleteFriendsGroup *message)
+{
+ assert(message->descriptor == &cmsg_client_delete_friends_group__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_delete_friends_group__pack
+ (const CMsgClientDeleteFriendsGroup *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_delete_friends_group__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_delete_friends_group__pack_to_buffer
+ (const CMsgClientDeleteFriendsGroup *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_delete_friends_group__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientDeleteFriendsGroup *
+ cmsg_client_delete_friends_group__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientDeleteFriendsGroup *)
+ protobuf_c_message_unpack (&cmsg_client_delete_friends_group__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_delete_friends_group__free_unpacked
+ (CMsgClientDeleteFriendsGroup *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_delete_friends_group__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_delete_friends_group_response__get_packed_size
+ (const CMsgClientDeleteFriendsGroupResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_delete_friends_group_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_delete_friends_group_response__pack
+ (const CMsgClientDeleteFriendsGroupResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_delete_friends_group_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_delete_friends_group_response__pack_to_buffer
+ (const CMsgClientDeleteFriendsGroupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_delete_friends_group_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientDeleteFriendsGroupResponse *
+ cmsg_client_delete_friends_group_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientDeleteFriendsGroupResponse *)
+ protobuf_c_message_unpack (&cmsg_client_delete_friends_group_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_delete_friends_group_response__free_unpacked
+ (CMsgClientDeleteFriendsGroupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_delete_friends_group_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_manage_friends_group__get_packed_size
+ (const CMsgClientManageFriendsGroup *message)
+{
+ assert(message->descriptor == &cmsg_client_manage_friends_group__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_manage_friends_group__pack
+ (const CMsgClientManageFriendsGroup *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_manage_friends_group__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_manage_friends_group__pack_to_buffer
+ (const CMsgClientManageFriendsGroup *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_manage_friends_group__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientManageFriendsGroup *
+ cmsg_client_manage_friends_group__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientManageFriendsGroup *)
+ protobuf_c_message_unpack (&cmsg_client_manage_friends_group__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_manage_friends_group__free_unpacked
+ (CMsgClientManageFriendsGroup *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_manage_friends_group__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_manage_friends_group_response__get_packed_size
+ (const CMsgClientManageFriendsGroupResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_manage_friends_group_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_manage_friends_group_response__pack
+ (const CMsgClientManageFriendsGroupResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_manage_friends_group_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_manage_friends_group_response__pack_to_buffer
+ (const CMsgClientManageFriendsGroupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_manage_friends_group_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientManageFriendsGroupResponse *
+ cmsg_client_manage_friends_group_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientManageFriendsGroupResponse *)
+ protobuf_c_message_unpack (&cmsg_client_manage_friends_group_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_manage_friends_group_response__free_unpacked
+ (CMsgClientManageFriendsGroupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_manage_friends_group_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_add_friend_to_group__get_packed_size
+ (const CMsgClientAddFriendToGroup *message)
+{
+ assert(message->descriptor == &cmsg_client_add_friend_to_group__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_add_friend_to_group__pack
+ (const CMsgClientAddFriendToGroup *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_add_friend_to_group__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_add_friend_to_group__pack_to_buffer
+ (const CMsgClientAddFriendToGroup *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_add_friend_to_group__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAddFriendToGroup *
+ cmsg_client_add_friend_to_group__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAddFriendToGroup *)
+ protobuf_c_message_unpack (&cmsg_client_add_friend_to_group__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_add_friend_to_group__free_unpacked
+ (CMsgClientAddFriendToGroup *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_add_friend_to_group__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_add_friend_to_group_response__get_packed_size
+ (const CMsgClientAddFriendToGroupResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_add_friend_to_group_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_add_friend_to_group_response__pack
+ (const CMsgClientAddFriendToGroupResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_add_friend_to_group_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_add_friend_to_group_response__pack_to_buffer
+ (const CMsgClientAddFriendToGroupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_add_friend_to_group_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientAddFriendToGroupResponse *
+ cmsg_client_add_friend_to_group_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientAddFriendToGroupResponse *)
+ protobuf_c_message_unpack (&cmsg_client_add_friend_to_group_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_add_friend_to_group_response__free_unpacked
+ (CMsgClientAddFriendToGroupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_add_friend_to_group_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_remove_friend_from_group__get_packed_size
+ (const CMsgClientRemoveFriendFromGroup *message)
+{
+ assert(message->descriptor == &cmsg_client_remove_friend_from_group__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_remove_friend_from_group__pack
+ (const CMsgClientRemoveFriendFromGroup *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_remove_friend_from_group__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_remove_friend_from_group__pack_to_buffer
+ (const CMsgClientRemoveFriendFromGroup *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_remove_friend_from_group__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRemoveFriendFromGroup *
+ cmsg_client_remove_friend_from_group__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRemoveFriendFromGroup *)
+ protobuf_c_message_unpack (&cmsg_client_remove_friend_from_group__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_remove_friend_from_group__free_unpacked
+ (CMsgClientRemoveFriendFromGroup *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_remove_friend_from_group__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_remove_friend_from_group_response__get_packed_size
+ (const CMsgClientRemoveFriendFromGroupResponse *message)
+{
+ assert(message->descriptor == &cmsg_client_remove_friend_from_group_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_remove_friend_from_group_response__pack
+ (const CMsgClientRemoveFriendFromGroupResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_remove_friend_from_group_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_remove_friend_from_group_response__pack_to_buffer
+ (const CMsgClientRemoveFriendFromGroupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_remove_friend_from_group_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientRemoveFriendFromGroupResponse *
+ cmsg_client_remove_friend_from_group_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientRemoveFriendFromGroupResponse *)
+ protobuf_c_message_unpack (&cmsg_client_remove_friend_from_group_response__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_remove_friend_from_group_response__free_unpacked
+ (CMsgClientRemoveFriendFromGroupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_remove_friend_from_group_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_get_emoticon_list__get_packed_size
+ (const CMsgClientGetEmoticonList *message)
+{
+ assert(message->descriptor == &cmsg_client_get_emoticon_list__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_get_emoticon_list__pack
+ (const CMsgClientGetEmoticonList *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_get_emoticon_list__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_get_emoticon_list__pack_to_buffer
+ (const CMsgClientGetEmoticonList *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_get_emoticon_list__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientGetEmoticonList *
+ cmsg_client_get_emoticon_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientGetEmoticonList *)
+ protobuf_c_message_unpack (&cmsg_client_get_emoticon_list__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_get_emoticon_list__free_unpacked
+ (CMsgClientGetEmoticonList *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_get_emoticon_list__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cmsg_client_emoticon_list__get_packed_size
+ (const CMsgClientEmoticonList *message)
+{
+ assert(message->descriptor == &cmsg_client_emoticon_list__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cmsg_client_emoticon_list__pack
+ (const CMsgClientEmoticonList *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cmsg_client_emoticon_list__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cmsg_client_emoticon_list__pack_to_buffer
+ (const CMsgClientEmoticonList *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cmsg_client_emoticon_list__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CMsgClientEmoticonList *
+ cmsg_client_emoticon_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CMsgClientEmoticonList *)
+ protobuf_c_message_unpack (&cmsg_client_emoticon_list__descriptor,
+ allocator, len, data);
+}
+void cmsg_client_emoticon_list__free_unpacked
+ (CMsgClientEmoticonList *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cmsg_client_emoticon_list__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+static const ProtobufCFieldDescriptor cmsg_client_friend_msg__field_descriptors[5] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientFriendMsg, has_steamid),
+ offsetof(CMsgClientFriendMsg, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_entry_type",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientFriendMsg, has_chat_entry_type),
+ offsetof(CMsgClientFriendMsg, chat_entry_type),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientFriendMsg, has_message),
+ offsetof(CMsgClientFriendMsg, message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "rtime32_server_timestamp",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED32,
+ offsetof(CMsgClientFriendMsg, has_rtime32_server_timestamp),
+ offsetof(CMsgClientFriendMsg, rtime32_server_timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "echo_to_sender",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientFriendMsg, has_echo_to_sender),
+ offsetof(CMsgClientFriendMsg, echo_to_sender),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_friend_msg__field_indices_by_name[] = {
+ 1, /* field[1] = chat_entry_type */
+ 4, /* field[4] = echo_to_sender */
+ 2, /* field[2] = message */
+ 3, /* field[3] = rtime32_server_timestamp */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cmsg_client_friend_msg__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cmsg_client_friend_msg__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientFriendMsg",
+ "CMsgClientFriendMsg",
+ "CMsgClientFriendMsg",
+ "",
+ sizeof(CMsgClientFriendMsg),
+ 5,
+ cmsg_client_friend_msg__field_descriptors,
+ cmsg_client_friend_msg__field_indices_by_name,
+ 1, cmsg_client_friend_msg__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_friend_msg_incoming__field_descriptors[5] =
+{
+ {
+ "steamid_from",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientFriendMsgIncoming, has_steamid_from),
+ offsetof(CMsgClientFriendMsgIncoming, steamid_from),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_entry_type",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientFriendMsgIncoming, has_chat_entry_type),
+ offsetof(CMsgClientFriendMsgIncoming, chat_entry_type),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "from_limited_account",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientFriendMsgIncoming, has_from_limited_account),
+ offsetof(CMsgClientFriendMsgIncoming, from_limited_account),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientFriendMsgIncoming, has_message),
+ offsetof(CMsgClientFriendMsgIncoming, message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "rtime32_server_timestamp",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED32,
+ offsetof(CMsgClientFriendMsgIncoming, has_rtime32_server_timestamp),
+ offsetof(CMsgClientFriendMsgIncoming, rtime32_server_timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_friend_msg_incoming__field_indices_by_name[] = {
+ 1, /* field[1] = chat_entry_type */
+ 2, /* field[2] = from_limited_account */
+ 3, /* field[3] = message */
+ 4, /* field[4] = rtime32_server_timestamp */
+ 0, /* field[0] = steamid_from */
+};
+static const ProtobufCIntRange cmsg_client_friend_msg_incoming__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cmsg_client_friend_msg_incoming__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientFriendMsgIncoming",
+ "CMsgClientFriendMsgIncoming",
+ "CMsgClientFriendMsgIncoming",
+ "",
+ sizeof(CMsgClientFriendMsgIncoming),
+ 5,
+ cmsg_client_friend_msg_incoming__field_descriptors,
+ cmsg_client_friend_msg_incoming__field_indices_by_name,
+ 1, cmsg_client_friend_msg_incoming__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_add_friend__field_descriptors[2] =
+{
+ {
+ "steamid_to_add",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientAddFriend, has_steamid_to_add),
+ offsetof(CMsgClientAddFriend, steamid_to_add),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "accountname_or_email_to_add",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientAddFriend, accountname_or_email_to_add),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_add_friend__field_indices_by_name[] = {
+ 1, /* field[1] = accountname_or_email_to_add */
+ 0, /* field[0] = steamid_to_add */
+};
+static const ProtobufCIntRange cmsg_client_add_friend__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_add_friend__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAddFriend",
+ "CMsgClientAddFriend",
+ "CMsgClientAddFriend",
+ "",
+ sizeof(CMsgClientAddFriend),
+ 2,
+ cmsg_client_add_friend__field_descriptors,
+ cmsg_client_add_friend__field_indices_by_name,
+ 1, cmsg_client_add_friend__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_add_friend_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_add_friend_response__field_descriptors[3] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientAddFriendResponse, has_eresult),
+ offsetof(CMsgClientAddFriendResponse, eresult),
+ NULL,
+ &cmsg_client_add_friend_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steam_id_added",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientAddFriendResponse, has_steam_id_added),
+ offsetof(CMsgClientAddFriendResponse, steam_id_added),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "persona_name_added",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientAddFriendResponse, persona_name_added),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_add_friend_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 2, /* field[2] = persona_name_added */
+ 1, /* field[1] = steam_id_added */
+};
+static const ProtobufCIntRange cmsg_client_add_friend_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_add_friend_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAddFriendResponse",
+ "CMsgClientAddFriendResponse",
+ "CMsgClientAddFriendResponse",
+ "",
+ sizeof(CMsgClientAddFriendResponse),
+ 3,
+ cmsg_client_add_friend_response__field_descriptors,
+ cmsg_client_add_friend_response__field_indices_by_name,
+ 1, cmsg_client_add_friend_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_remove_friend__field_descriptors[1] =
+{
+ {
+ "friendid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientRemoveFriend, has_friendid),
+ offsetof(CMsgClientRemoveFriend, friendid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_remove_friend__field_indices_by_name[] = {
+ 0, /* field[0] = friendid */
+};
+static const ProtobufCIntRange cmsg_client_remove_friend__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_remove_friend__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRemoveFriend",
+ "CMsgClientRemoveFriend",
+ "CMsgClientRemoveFriend",
+ "",
+ sizeof(CMsgClientRemoveFriend),
+ 1,
+ cmsg_client_remove_friend__field_descriptors,
+ cmsg_client_remove_friend__field_indices_by_name,
+ 1, cmsg_client_remove_friend__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_hide_friend__field_descriptors[2] =
+{
+ {
+ "friendid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientHideFriend, has_friendid),
+ offsetof(CMsgClientHideFriend, friendid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "hide",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientHideFriend, has_hide),
+ offsetof(CMsgClientHideFriend, hide),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_hide_friend__field_indices_by_name[] = {
+ 0, /* field[0] = friendid */
+ 1, /* field[1] = hide */
+};
+static const ProtobufCIntRange cmsg_client_hide_friend__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_hide_friend__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientHideFriend",
+ "CMsgClientHideFriend",
+ "CMsgClientHideFriend",
+ "",
+ sizeof(CMsgClientHideFriend),
+ 2,
+ cmsg_client_hide_friend__field_descriptors,
+ cmsg_client_hide_friend__field_indices_by_name,
+ 1, cmsg_client_hide_friend__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_friends_list__friend__field_descriptors[2] =
+{
+ {
+ "ulfriendid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientFriendsList__Friend, has_ulfriendid),
+ offsetof(CMsgClientFriendsList__Friend, ulfriendid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "efriendrelationship",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientFriendsList__Friend, has_efriendrelationship),
+ offsetof(CMsgClientFriendsList__Friend, efriendrelationship),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_friends_list__friend__field_indices_by_name[] = {
+ 1, /* field[1] = efriendrelationship */
+ 0, /* field[0] = ulfriendid */
+};
+static const ProtobufCIntRange cmsg_client_friends_list__friend__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_friends_list__friend__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientFriendsList.Friend",
+ "Friend",
+ "CMsgClientFriendsList__Friend",
+ "",
+ sizeof(CMsgClientFriendsList__Friend),
+ 2,
+ cmsg_client_friends_list__friend__field_descriptors,
+ cmsg_client_friends_list__friend__field_indices_by_name,
+ 1, cmsg_client_friends_list__friend__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_friends_list__field_descriptors[5] =
+{
+ {
+ "bincremental",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientFriendsList, has_bincremental),
+ offsetof(CMsgClientFriendsList, bincremental),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientFriendsList, n_friends),
+ offsetof(CMsgClientFriendsList, friends),
+ &cmsg_client_friends_list__friend__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "max_friend_count",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientFriendsList, has_max_friend_count),
+ offsetof(CMsgClientFriendsList, max_friend_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "active_friend_count",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientFriendsList, has_active_friend_count),
+ offsetof(CMsgClientFriendsList, active_friend_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends_limit_hit",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientFriendsList, has_friends_limit_hit),
+ offsetof(CMsgClientFriendsList, friends_limit_hit),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_friends_list__field_indices_by_name[] = {
+ 3, /* field[3] = active_friend_count */
+ 0, /* field[0] = bincremental */
+ 1, /* field[1] = friends */
+ 4, /* field[4] = friends_limit_hit */
+ 2, /* field[2] = max_friend_count */
+};
+static const ProtobufCIntRange cmsg_client_friends_list__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cmsg_client_friends_list__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientFriendsList",
+ "CMsgClientFriendsList",
+ "CMsgClientFriendsList",
+ "",
+ sizeof(CMsgClientFriendsList),
+ 5,
+ cmsg_client_friends_list__field_descriptors,
+ cmsg_client_friends_list__field_indices_by_name,
+ 1, cmsg_client_friends_list__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_friends_groups_list__friend_group__field_descriptors[2] =
+{
+ {
+ "nGroupID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientFriendsGroupsList__FriendGroup, has_ngroupid),
+ offsetof(CMsgClientFriendsGroupsList__FriendGroup, ngroupid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "strGroupName",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientFriendsGroupsList__FriendGroup, strgroupname),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_friends_groups_list__friend_group__field_indices_by_name[] = {
+ 0, /* field[0] = nGroupID */
+ 1, /* field[1] = strGroupName */
+};
+static const ProtobufCIntRange cmsg_client_friends_groups_list__friend_group__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_friends_groups_list__friend_group__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientFriendsGroupsList.FriendGroup",
+ "FriendGroup",
+ "CMsgClientFriendsGroupsList__FriendGroup",
+ "",
+ sizeof(CMsgClientFriendsGroupsList__FriendGroup),
+ 2,
+ cmsg_client_friends_groups_list__friend_group__field_descriptors,
+ cmsg_client_friends_groups_list__friend_group__field_indices_by_name,
+ 1, cmsg_client_friends_groups_list__friend_group__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_friends_groups_list__friend_groups_membership__field_descriptors[2] =
+{
+ {
+ "ulSteamID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientFriendsGroupsList__FriendGroupsMembership, has_ulsteamid),
+ offsetof(CMsgClientFriendsGroupsList__FriendGroupsMembership, ulsteamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "nGroupID",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientFriendsGroupsList__FriendGroupsMembership, has_ngroupid),
+ offsetof(CMsgClientFriendsGroupsList__FriendGroupsMembership, ngroupid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_friends_groups_list__friend_groups_membership__field_indices_by_name[] = {
+ 1, /* field[1] = nGroupID */
+ 0, /* field[0] = ulSteamID */
+};
+static const ProtobufCIntRange cmsg_client_friends_groups_list__friend_groups_membership__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_friends_groups_list__friend_groups_membership__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientFriendsGroupsList.FriendGroupsMembership",
+ "FriendGroupsMembership",
+ "CMsgClientFriendsGroupsList__FriendGroupsMembership",
+ "",
+ sizeof(CMsgClientFriendsGroupsList__FriendGroupsMembership),
+ 2,
+ cmsg_client_friends_groups_list__friend_groups_membership__field_descriptors,
+ cmsg_client_friends_groups_list__friend_groups_membership__field_indices_by_name,
+ 1, cmsg_client_friends_groups_list__friend_groups_membership__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_friends_groups_list__field_descriptors[4] =
+{
+ {
+ "bremoval",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientFriendsGroupsList, has_bremoval),
+ offsetof(CMsgClientFriendsGroupsList, bremoval),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "bincremental",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientFriendsGroupsList, has_bincremental),
+ offsetof(CMsgClientFriendsGroupsList, bincremental),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friendGroups",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientFriendsGroupsList, n_friendgroups),
+ offsetof(CMsgClientFriendsGroupsList, friendgroups),
+ &cmsg_client_friends_groups_list__friend_group__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "memberships",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientFriendsGroupsList, n_memberships),
+ offsetof(CMsgClientFriendsGroupsList, memberships),
+ &cmsg_client_friends_groups_list__friend_groups_membership__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_friends_groups_list__field_indices_by_name[] = {
+ 1, /* field[1] = bincremental */
+ 0, /* field[0] = bremoval */
+ 2, /* field[2] = friendGroups */
+ 3, /* field[3] = memberships */
+};
+static const ProtobufCIntRange cmsg_client_friends_groups_list__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cmsg_client_friends_groups_list__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientFriendsGroupsList",
+ "CMsgClientFriendsGroupsList",
+ "CMsgClientFriendsGroupsList",
+ "",
+ sizeof(CMsgClientFriendsGroupsList),
+ 4,
+ cmsg_client_friends_groups_list__field_descriptors,
+ cmsg_client_friends_groups_list__field_indices_by_name,
+ 1, cmsg_client_friends_groups_list__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_player_nickname_list__player_nickname__field_descriptors[2] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientPlayerNicknameList__PlayerNickname, has_steamid),
+ offsetof(CMsgClientPlayerNicknameList__PlayerNickname, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "nickname",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientPlayerNicknameList__PlayerNickname, nickname),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_player_nickname_list__player_nickname__field_indices_by_name[] = {
+ 1, /* field[1] = nickname */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cmsg_client_player_nickname_list__player_nickname__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 3, 1 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_player_nickname_list__player_nickname__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPlayerNicknameList.PlayerNickname",
+ "PlayerNickname",
+ "CMsgClientPlayerNicknameList__PlayerNickname",
+ "",
+ sizeof(CMsgClientPlayerNicknameList__PlayerNickname),
+ 2,
+ cmsg_client_player_nickname_list__player_nickname__field_descriptors,
+ cmsg_client_player_nickname_list__player_nickname__field_indices_by_name,
+ 2, cmsg_client_player_nickname_list__player_nickname__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_player_nickname_list__field_descriptors[3] =
+{
+ {
+ "removal",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPlayerNicknameList, has_removal),
+ offsetof(CMsgClientPlayerNicknameList, removal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "incremental",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPlayerNicknameList, has_incremental),
+ offsetof(CMsgClientPlayerNicknameList, incremental),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "nicknames",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientPlayerNicknameList, n_nicknames),
+ offsetof(CMsgClientPlayerNicknameList, nicknames),
+ &cmsg_client_player_nickname_list__player_nickname__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_player_nickname_list__field_indices_by_name[] = {
+ 1, /* field[1] = incremental */
+ 2, /* field[2] = nicknames */
+ 0, /* field[0] = removal */
+};
+static const ProtobufCIntRange cmsg_client_player_nickname_list__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_player_nickname_list__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPlayerNicknameList",
+ "CMsgClientPlayerNicknameList",
+ "CMsgClientPlayerNicknameList",
+ "",
+ sizeof(CMsgClientPlayerNicknameList),
+ 3,
+ cmsg_client_player_nickname_list__field_descriptors,
+ cmsg_client_player_nickname_list__field_indices_by_name,
+ 1, cmsg_client_player_nickname_list__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_set_player_nickname__field_descriptors[2] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientSetPlayerNickname, has_steamid),
+ offsetof(CMsgClientSetPlayerNickname, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "nickname",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientSetPlayerNickname, nickname),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_set_player_nickname__field_indices_by_name[] = {
+ 1, /* field[1] = nickname */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cmsg_client_set_player_nickname__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_set_player_nickname__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientSetPlayerNickname",
+ "CMsgClientSetPlayerNickname",
+ "CMsgClientSetPlayerNickname",
+ "",
+ sizeof(CMsgClientSetPlayerNickname),
+ 2,
+ cmsg_client_set_player_nickname__field_descriptors,
+ cmsg_client_set_player_nickname__field_indices_by_name,
+ 1, cmsg_client_set_player_nickname__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_set_player_nickname_response__field_descriptors[1] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientSetPlayerNicknameResponse, has_eresult),
+ offsetof(CMsgClientSetPlayerNicknameResponse, eresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_set_player_nickname_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_client_set_player_nickname_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_set_player_nickname_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientSetPlayerNicknameResponse",
+ "CMsgClientSetPlayerNicknameResponse",
+ "CMsgClientSetPlayerNicknameResponse",
+ "",
+ sizeof(CMsgClientSetPlayerNicknameResponse),
+ 1,
+ cmsg_client_set_player_nickname_response__field_descriptors,
+ cmsg_client_set_player_nickname_response__field_indices_by_name,
+ 1, cmsg_client_set_player_nickname_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_request_friend_data__field_descriptors[2] =
+{
+ {
+ "persona_state_requested",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRequestFriendData, has_persona_state_requested),
+ offsetof(CMsgClientRequestFriendData, persona_state_requested),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientRequestFriendData, n_friends),
+ offsetof(CMsgClientRequestFriendData, friends),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_request_friend_data__field_indices_by_name[] = {
+ 1, /* field[1] = friends */
+ 0, /* field[0] = persona_state_requested */
+};
+static const ProtobufCIntRange cmsg_client_request_friend_data__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_request_friend_data__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRequestFriendData",
+ "CMsgClientRequestFriendData",
+ "CMsgClientRequestFriendData",
+ "",
+ sizeof(CMsgClientRequestFriendData),
+ 2,
+ cmsg_client_request_friend_data__field_descriptors,
+ cmsg_client_request_friend_data__field_indices_by_name,
+ 1, cmsg_client_request_friend_data__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const uint32_t cmsg_client_change_status__persona_state_flags__default_value = 0u;
+static const ProtobufCFieldDescriptor cmsg_client_change_status__field_descriptors[8] =
+{
+ {
+ "persona_state",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientChangeStatus, has_persona_state),
+ offsetof(CMsgClientChangeStatus, persona_state),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "player_name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientChangeStatus, player_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_auto_generated_name",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientChangeStatus, has_is_auto_generated_name),
+ offsetof(CMsgClientChangeStatus, is_auto_generated_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "high_priority",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientChangeStatus, has_high_priority),
+ offsetof(CMsgClientChangeStatus, high_priority),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "persona_set_by_user",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientChangeStatus, has_persona_set_by_user),
+ offsetof(CMsgClientChangeStatus, persona_set_by_user),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "persona_state_flags",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientChangeStatus, has_persona_state_flags),
+ offsetof(CMsgClientChangeStatus, persona_state_flags),
+ NULL,
+ &cmsg_client_change_status__persona_state_flags__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "need_persona_response",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientChangeStatus, has_need_persona_response),
+ offsetof(CMsgClientChangeStatus, need_persona_response),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_client_idle",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientChangeStatus, has_is_client_idle),
+ offsetof(CMsgClientChangeStatus, is_client_idle),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_change_status__field_indices_by_name[] = {
+ 3, /* field[3] = high_priority */
+ 2, /* field[2] = is_auto_generated_name */
+ 7, /* field[7] = is_client_idle */
+ 6, /* field[6] = need_persona_response */
+ 4, /* field[4] = persona_set_by_user */
+ 0, /* field[0] = persona_state */
+ 5, /* field[5] = persona_state_flags */
+ 1, /* field[1] = player_name */
+};
+static const ProtobufCIntRange cmsg_client_change_status__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor cmsg_client_change_status__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientChangeStatus",
+ "CMsgClientChangeStatus",
+ "CMsgClientChangeStatus",
+ "",
+ sizeof(CMsgClientChangeStatus),
+ 8,
+ cmsg_client_change_status__field_descriptors,
+ cmsg_client_change_status__field_indices_by_name,
+ 1, cmsg_client_change_status__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_persona_change_response__field_descriptors[2] =
+{
+ {
+ "result",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgPersonaChangeResponse, has_result),
+ offsetof(CMsgPersonaChangeResponse, result),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "player_name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgPersonaChangeResponse, player_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_persona_change_response__field_indices_by_name[] = {
+ 1, /* field[1] = player_name */
+ 0, /* field[0] = result */
+};
+static const ProtobufCIntRange cmsg_persona_change_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_persona_change_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgPersonaChangeResponse",
+ "CMsgPersonaChangeResponse",
+ "CMsgPersonaChangeResponse",
+ "",
+ sizeof(CMsgPersonaChangeResponse),
+ 2,
+ cmsg_persona_change_response__field_descriptors,
+ cmsg_persona_change_response__field_indices_by_name,
+ 1, cmsg_persona_change_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_persona_state__friend__clan_data__field_descriptors[2] =
+{
+ {
+ "ogg_app_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend__ClanData, has_ogg_app_id),
+ offsetof(CMsgClientPersonaState__Friend__ClanData, ogg_app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_group_id",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(CMsgClientPersonaState__Friend__ClanData, has_chat_group_id),
+ offsetof(CMsgClientPersonaState__Friend__ClanData, chat_group_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_persona_state__friend__clan_data__field_indices_by_name[] = {
+ 1, /* field[1] = chat_group_id */
+ 0, /* field[0] = ogg_app_id */
+};
+static const ProtobufCIntRange cmsg_client_persona_state__friend__clan_data__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_persona_state__friend__clan_data__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPersonaState.Friend.ClanData",
+ "ClanData",
+ "CMsgClientPersonaState__Friend__ClanData",
+ "",
+ sizeof(CMsgClientPersonaState__Friend__ClanData),
+ 2,
+ cmsg_client_persona_state__friend__clan_data__field_descriptors,
+ cmsg_client_persona_state__friend__clan_data__field_indices_by_name,
+ 1, cmsg_client_persona_state__friend__clan_data__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_persona_state__friend__kv__field_descriptors[2] =
+{
+ {
+ "key",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientPersonaState__Friend__KV, key),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "value",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientPersonaState__Friend__KV, value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_persona_state__friend__kv__field_indices_by_name[] = {
+ 0, /* field[0] = key */
+ 1, /* field[1] = value */
+};
+static const ProtobufCIntRange cmsg_client_persona_state__friend__kv__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_persona_state__friend__kv__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPersonaState.Friend.KV",
+ "KV",
+ "CMsgClientPersonaState__Friend__KV",
+ "",
+ sizeof(CMsgClientPersonaState__Friend__KV),
+ 2,
+ cmsg_client_persona_state__friend__kv__field_descriptors,
+ cmsg_client_persona_state__friend__kv__field_indices_by_name,
+ 1, cmsg_client_persona_state__friend__kv__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_persona_state__friend__field_descriptors[31] =
+{
+ {
+ "friendid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientPersonaState__Friend, has_friendid),
+ offsetof(CMsgClientPersonaState__Friend, friendid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "persona_state",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend, has_persona_state),
+ offsetof(CMsgClientPersonaState__Friend, persona_state),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_played_app_id",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend, has_game_played_app_id),
+ offsetof(CMsgClientPersonaState__Friend, game_played_app_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_server_ip",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend, has_game_server_ip),
+ offsetof(CMsgClientPersonaState__Friend, game_server_ip),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_server_port",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend, has_game_server_port),
+ offsetof(CMsgClientPersonaState__Friend, game_server_port),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "persona_state_flags",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend, has_persona_state_flags),
+ offsetof(CMsgClientPersonaState__Friend, persona_state_flags),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "online_session_instances",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend, has_online_session_instances),
+ offsetof(CMsgClientPersonaState__Friend, online_session_instances),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "persona_set_by_user",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPersonaState__Friend, has_persona_set_by_user),
+ offsetof(CMsgClientPersonaState__Friend, persona_set_by_user),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "player_name",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientPersonaState__Friend, player_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "query_port",
+ 20,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend, has_query_port),
+ offsetof(CMsgClientPersonaState__Friend, query_port),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid_source",
+ 25,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientPersonaState__Friend, has_steamid_source),
+ offsetof(CMsgClientPersonaState__Friend, steamid_source),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "avatar_hash",
+ 31,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientPersonaState__Friend, has_avatar_hash),
+ offsetof(CMsgClientPersonaState__Friend, avatar_hash),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_logoff",
+ 45,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend, has_last_logoff),
+ offsetof(CMsgClientPersonaState__Friend, last_logoff),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_logon",
+ 46,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend, has_last_logon),
+ offsetof(CMsgClientPersonaState__Friend, last_logon),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_seen_online",
+ 47,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend, has_last_seen_online),
+ offsetof(CMsgClientPersonaState__Friend, last_seen_online),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "clan_rank",
+ 50,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend, has_clan_rank),
+ offsetof(CMsgClientPersonaState__Friend, clan_rank),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_name",
+ 55,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientPersonaState__Friend, game_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "gameid",
+ 56,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientPersonaState__Friend, has_gameid),
+ offsetof(CMsgClientPersonaState__Friend, gameid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_data_blob",
+ 60,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(CMsgClientPersonaState__Friend, has_game_data_blob),
+ offsetof(CMsgClientPersonaState__Friend, game_data_blob),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "clan_data",
+ 64,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientPersonaState__Friend, clan_data),
+ &cmsg_client_persona_state__friend__clan_data__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "clan_tag",
+ 65,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientPersonaState__Friend, clan_tag),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "rich_presence",
+ 71,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientPersonaState__Friend, n_rich_presence),
+ offsetof(CMsgClientPersonaState__Friend, rich_presence),
+ &cmsg_client_persona_state__friend__kv__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "broadcast_id",
+ 72,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientPersonaState__Friend, has_broadcast_id),
+ offsetof(CMsgClientPersonaState__Friend, broadcast_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_lobby_id",
+ 73,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientPersonaState__Friend, has_game_lobby_id),
+ offsetof(CMsgClientPersonaState__Friend, game_lobby_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "watching_broadcast_accountid",
+ 74,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend, has_watching_broadcast_accountid),
+ offsetof(CMsgClientPersonaState__Friend, watching_broadcast_accountid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "watching_broadcast_appid",
+ 75,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend, has_watching_broadcast_appid),
+ offsetof(CMsgClientPersonaState__Friend, watching_broadcast_appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "watching_broadcast_viewers",
+ 76,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState__Friend, has_watching_broadcast_viewers),
+ offsetof(CMsgClientPersonaState__Friend, watching_broadcast_viewers),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "watching_broadcast_title",
+ 77,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientPersonaState__Friend, watching_broadcast_title),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_community_banned",
+ 78,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPersonaState__Friend, has_is_community_banned),
+ offsetof(CMsgClientPersonaState__Friend, is_community_banned),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "player_name_pending_review",
+ 79,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPersonaState__Friend, has_player_name_pending_review),
+ offsetof(CMsgClientPersonaState__Friend, player_name_pending_review),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "avatar_pending_review",
+ 80,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientPersonaState__Friend, has_avatar_pending_review),
+ offsetof(CMsgClientPersonaState__Friend, avatar_pending_review),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_persona_state__friend__field_indices_by_name[] = {
+ 11, /* field[11] = avatar_hash */
+ 30, /* field[30] = avatar_pending_review */
+ 22, /* field[22] = broadcast_id */
+ 19, /* field[19] = clan_data */
+ 15, /* field[15] = clan_rank */
+ 20, /* field[20] = clan_tag */
+ 0, /* field[0] = friendid */
+ 18, /* field[18] = game_data_blob */
+ 23, /* field[23] = game_lobby_id */
+ 16, /* field[16] = game_name */
+ 2, /* field[2] = game_played_app_id */
+ 3, /* field[3] = game_server_ip */
+ 4, /* field[4] = game_server_port */
+ 17, /* field[17] = gameid */
+ 28, /* field[28] = is_community_banned */
+ 12, /* field[12] = last_logoff */
+ 13, /* field[13] = last_logon */
+ 14, /* field[14] = last_seen_online */
+ 6, /* field[6] = online_session_instances */
+ 7, /* field[7] = persona_set_by_user */
+ 1, /* field[1] = persona_state */
+ 5, /* field[5] = persona_state_flags */
+ 8, /* field[8] = player_name */
+ 29, /* field[29] = player_name_pending_review */
+ 9, /* field[9] = query_port */
+ 21, /* field[21] = rich_presence */
+ 10, /* field[10] = steamid_source */
+ 24, /* field[24] = watching_broadcast_accountid */
+ 25, /* field[25] = watching_broadcast_appid */
+ 27, /* field[27] = watching_broadcast_title */
+ 26, /* field[26] = watching_broadcast_viewers */
+};
+static const ProtobufCIntRange cmsg_client_persona_state__friend__number_ranges[12 + 1] =
+{
+ { 1, 0 },
+ { 10, 7 },
+ { 15, 8 },
+ { 20, 9 },
+ { 25, 10 },
+ { 31, 11 },
+ { 45, 12 },
+ { 50, 15 },
+ { 55, 16 },
+ { 60, 18 },
+ { 64, 19 },
+ { 71, 21 },
+ { 0, 31 }
+};
+const ProtobufCMessageDescriptor cmsg_client_persona_state__friend__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPersonaState.Friend",
+ "Friend",
+ "CMsgClientPersonaState__Friend",
+ "",
+ sizeof(CMsgClientPersonaState__Friend),
+ 31,
+ cmsg_client_persona_state__friend__field_descriptors,
+ cmsg_client_persona_state__friend__field_indices_by_name,
+ 12, cmsg_client_persona_state__friend__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_persona_state__field_descriptors[2] =
+{
+ {
+ "status_flags",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientPersonaState, has_status_flags),
+ offsetof(CMsgClientPersonaState, status_flags),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "friends",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientPersonaState, n_friends),
+ offsetof(CMsgClientPersonaState, friends),
+ &cmsg_client_persona_state__friend__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_persona_state__field_indices_by_name[] = {
+ 1, /* field[1] = friends */
+ 0, /* field[0] = status_flags */
+};
+static const ProtobufCIntRange cmsg_client_persona_state__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_persona_state__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientPersonaState",
+ "CMsgClientPersonaState",
+ "CMsgClientPersonaState",
+ "",
+ sizeof(CMsgClientPersonaState),
+ 2,
+ cmsg_client_persona_state__field_descriptors,
+ cmsg_client_persona_state__field_indices_by_name,
+ 1, cmsg_client_persona_state__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_friend_profile_info__field_descriptors[1] =
+{
+ {
+ "steamid_friend",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientFriendProfileInfo, has_steamid_friend),
+ offsetof(CMsgClientFriendProfileInfo, steamid_friend),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_friend_profile_info__field_indices_by_name[] = {
+ 0, /* field[0] = steamid_friend */
+};
+static const ProtobufCIntRange cmsg_client_friend_profile_info__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_friend_profile_info__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientFriendProfileInfo",
+ "CMsgClientFriendProfileInfo",
+ "CMsgClientFriendProfileInfo",
+ "",
+ sizeof(CMsgClientFriendProfileInfo),
+ 1,
+ cmsg_client_friend_profile_info__field_descriptors,
+ cmsg_client_friend_profile_info__field_indices_by_name,
+ 1, cmsg_client_friend_profile_info__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const int32_t cmsg_client_friend_profile_info_response__eresult__default_value = 2;
+static const ProtobufCFieldDescriptor cmsg_client_friend_profile_info_response__field_descriptors[9] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientFriendProfileInfoResponse, has_eresult),
+ offsetof(CMsgClientFriendProfileInfoResponse, eresult),
+ NULL,
+ &cmsg_client_friend_profile_info_response__eresult__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid_friend",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientFriendProfileInfoResponse, has_steamid_friend),
+ offsetof(CMsgClientFriendProfileInfoResponse, steamid_friend),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_created",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientFriendProfileInfoResponse, has_time_created),
+ offsetof(CMsgClientFriendProfileInfoResponse, time_created),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "real_name",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientFriendProfileInfoResponse, real_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "city_name",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientFriendProfileInfoResponse, city_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "state_name",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientFriendProfileInfoResponse, state_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "country_name",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientFriendProfileInfoResponse, country_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "headline",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientFriendProfileInfoResponse, headline),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "summary",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientFriendProfileInfoResponse, summary),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_friend_profile_info_response__field_indices_by_name[] = {
+ 4, /* field[4] = city_name */
+ 6, /* field[6] = country_name */
+ 0, /* field[0] = eresult */
+ 7, /* field[7] = headline */
+ 3, /* field[3] = real_name */
+ 5, /* field[5] = state_name */
+ 1, /* field[1] = steamid_friend */
+ 8, /* field[8] = summary */
+ 2, /* field[2] = time_created */
+};
+static const ProtobufCIntRange cmsg_client_friend_profile_info_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 9 }
+};
+const ProtobufCMessageDescriptor cmsg_client_friend_profile_info_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientFriendProfileInfoResponse",
+ "CMsgClientFriendProfileInfoResponse",
+ "CMsgClientFriendProfileInfoResponse",
+ "",
+ sizeof(CMsgClientFriendProfileInfoResponse),
+ 9,
+ cmsg_client_friend_profile_info_response__field_descriptors,
+ cmsg_client_friend_profile_info_response__field_indices_by_name,
+ 1, cmsg_client_friend_profile_info_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_create_friends_group__field_descriptors[3] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientCreateFriendsGroup, has_steamid),
+ offsetof(CMsgClientCreateFriendsGroup, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "groupname",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientCreateFriendsGroup, groupname),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid_friends",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientCreateFriendsGroup, n_steamid_friends),
+ offsetof(CMsgClientCreateFriendsGroup, steamid_friends),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_create_friends_group__field_indices_by_name[] = {
+ 1, /* field[1] = groupname */
+ 0, /* field[0] = steamid */
+ 2, /* field[2] = steamid_friends */
+};
+static const ProtobufCIntRange cmsg_client_create_friends_group__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_create_friends_group__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientCreateFriendsGroup",
+ "CMsgClientCreateFriendsGroup",
+ "CMsgClientCreateFriendsGroup",
+ "",
+ sizeof(CMsgClientCreateFriendsGroup),
+ 3,
+ cmsg_client_create_friends_group__field_descriptors,
+ cmsg_client_create_friends_group__field_indices_by_name,
+ 1, cmsg_client_create_friends_group__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_create_friends_group_response__field_descriptors[2] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientCreateFriendsGroupResponse, has_eresult),
+ offsetof(CMsgClientCreateFriendsGroupResponse, eresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "groupid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientCreateFriendsGroupResponse, has_groupid),
+ offsetof(CMsgClientCreateFriendsGroupResponse, groupid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_create_friends_group_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+ 1, /* field[1] = groupid */
+};
+static const ProtobufCIntRange cmsg_client_create_friends_group_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_create_friends_group_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientCreateFriendsGroupResponse",
+ "CMsgClientCreateFriendsGroupResponse",
+ "CMsgClientCreateFriendsGroupResponse",
+ "",
+ sizeof(CMsgClientCreateFriendsGroupResponse),
+ 2,
+ cmsg_client_create_friends_group_response__field_descriptors,
+ cmsg_client_create_friends_group_response__field_indices_by_name,
+ 1, cmsg_client_create_friends_group_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_delete_friends_group__field_descriptors[2] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientDeleteFriendsGroup, has_steamid),
+ offsetof(CMsgClientDeleteFriendsGroup, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "groupid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientDeleteFriendsGroup, has_groupid),
+ offsetof(CMsgClientDeleteFriendsGroup, groupid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_delete_friends_group__field_indices_by_name[] = {
+ 1, /* field[1] = groupid */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cmsg_client_delete_friends_group__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_delete_friends_group__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientDeleteFriendsGroup",
+ "CMsgClientDeleteFriendsGroup",
+ "CMsgClientDeleteFriendsGroup",
+ "",
+ sizeof(CMsgClientDeleteFriendsGroup),
+ 2,
+ cmsg_client_delete_friends_group__field_descriptors,
+ cmsg_client_delete_friends_group__field_indices_by_name,
+ 1, cmsg_client_delete_friends_group__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_delete_friends_group_response__field_descriptors[1] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientDeleteFriendsGroupResponse, has_eresult),
+ offsetof(CMsgClientDeleteFriendsGroupResponse, eresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_delete_friends_group_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_client_delete_friends_group_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_delete_friends_group_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientDeleteFriendsGroupResponse",
+ "CMsgClientDeleteFriendsGroupResponse",
+ "CMsgClientDeleteFriendsGroupResponse",
+ "",
+ sizeof(CMsgClientDeleteFriendsGroupResponse),
+ 1,
+ cmsg_client_delete_friends_group_response__field_descriptors,
+ cmsg_client_delete_friends_group_response__field_indices_by_name,
+ 1, cmsg_client_delete_friends_group_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_manage_friends_group__field_descriptors[4] =
+{
+ {
+ "groupid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientManageFriendsGroup, has_groupid),
+ offsetof(CMsgClientManageFriendsGroup, groupid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "groupname",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientManageFriendsGroup, groupname),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid_friends_added",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientManageFriendsGroup, n_steamid_friends_added),
+ offsetof(CMsgClientManageFriendsGroup, steamid_friends_added),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid_friends_removed",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientManageFriendsGroup, n_steamid_friends_removed),
+ offsetof(CMsgClientManageFriendsGroup, steamid_friends_removed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_manage_friends_group__field_indices_by_name[] = {
+ 0, /* field[0] = groupid */
+ 1, /* field[1] = groupname */
+ 2, /* field[2] = steamid_friends_added */
+ 3, /* field[3] = steamid_friends_removed */
+};
+static const ProtobufCIntRange cmsg_client_manage_friends_group__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cmsg_client_manage_friends_group__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientManageFriendsGroup",
+ "CMsgClientManageFriendsGroup",
+ "CMsgClientManageFriendsGroup",
+ "",
+ sizeof(CMsgClientManageFriendsGroup),
+ 4,
+ cmsg_client_manage_friends_group__field_descriptors,
+ cmsg_client_manage_friends_group__field_indices_by_name,
+ 1, cmsg_client_manage_friends_group__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_manage_friends_group_response__field_descriptors[1] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientManageFriendsGroupResponse, has_eresult),
+ offsetof(CMsgClientManageFriendsGroupResponse, eresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_manage_friends_group_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_client_manage_friends_group_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_manage_friends_group_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientManageFriendsGroupResponse",
+ "CMsgClientManageFriendsGroupResponse",
+ "CMsgClientManageFriendsGroupResponse",
+ "",
+ sizeof(CMsgClientManageFriendsGroupResponse),
+ 1,
+ cmsg_client_manage_friends_group_response__field_descriptors,
+ cmsg_client_manage_friends_group_response__field_indices_by_name,
+ 1, cmsg_client_manage_friends_group_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_add_friend_to_group__field_descriptors[2] =
+{
+ {
+ "groupid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientAddFriendToGroup, has_groupid),
+ offsetof(CMsgClientAddFriendToGroup, groupid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamiduser",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientAddFriendToGroup, has_steamiduser),
+ offsetof(CMsgClientAddFriendToGroup, steamiduser),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_add_friend_to_group__field_indices_by_name[] = {
+ 0, /* field[0] = groupid */
+ 1, /* field[1] = steamiduser */
+};
+static const ProtobufCIntRange cmsg_client_add_friend_to_group__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_add_friend_to_group__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAddFriendToGroup",
+ "CMsgClientAddFriendToGroup",
+ "CMsgClientAddFriendToGroup",
+ "",
+ sizeof(CMsgClientAddFriendToGroup),
+ 2,
+ cmsg_client_add_friend_to_group__field_descriptors,
+ cmsg_client_add_friend_to_group__field_indices_by_name,
+ 1, cmsg_client_add_friend_to_group__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_add_friend_to_group_response__field_descriptors[1] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientAddFriendToGroupResponse, has_eresult),
+ offsetof(CMsgClientAddFriendToGroupResponse, eresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_add_friend_to_group_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_client_add_friend_to_group_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_add_friend_to_group_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientAddFriendToGroupResponse",
+ "CMsgClientAddFriendToGroupResponse",
+ "CMsgClientAddFriendToGroupResponse",
+ "",
+ sizeof(CMsgClientAddFriendToGroupResponse),
+ 1,
+ cmsg_client_add_friend_to_group_response__field_descriptors,
+ cmsg_client_add_friend_to_group_response__field_indices_by_name,
+ 1, cmsg_client_add_friend_to_group_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_remove_friend_from_group__field_descriptors[2] =
+{
+ {
+ "groupid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientRemoveFriendFromGroup, has_groupid),
+ offsetof(CMsgClientRemoveFriendFromGroup, groupid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamiduser",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CMsgClientRemoveFriendFromGroup, has_steamiduser),
+ offsetof(CMsgClientRemoveFriendFromGroup, steamiduser),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_remove_friend_from_group__field_indices_by_name[] = {
+ 0, /* field[0] = groupid */
+ 1, /* field[1] = steamiduser */
+};
+static const ProtobufCIntRange cmsg_client_remove_friend_from_group__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cmsg_client_remove_friend_from_group__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRemoveFriendFromGroup",
+ "CMsgClientRemoveFriendFromGroup",
+ "CMsgClientRemoveFriendFromGroup",
+ "",
+ sizeof(CMsgClientRemoveFriendFromGroup),
+ 2,
+ cmsg_client_remove_friend_from_group__field_descriptors,
+ cmsg_client_remove_friend_from_group__field_indices_by_name,
+ 1, cmsg_client_remove_friend_from_group__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_remove_friend_from_group_response__field_descriptors[1] =
+{
+ {
+ "eresult",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientRemoveFriendFromGroupResponse, has_eresult),
+ offsetof(CMsgClientRemoveFriendFromGroupResponse, eresult),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_remove_friend_from_group_response__field_indices_by_name[] = {
+ 0, /* field[0] = eresult */
+};
+static const ProtobufCIntRange cmsg_client_remove_friend_from_group_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cmsg_client_remove_friend_from_group_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientRemoveFriendFromGroupResponse",
+ "CMsgClientRemoveFriendFromGroupResponse",
+ "CMsgClientRemoveFriendFromGroupResponse",
+ "",
+ sizeof(CMsgClientRemoveFriendFromGroupResponse),
+ 1,
+ cmsg_client_remove_friend_from_group_response__field_descriptors,
+ cmsg_client_remove_friend_from_group_response__field_indices_by_name,
+ 1, cmsg_client_remove_friend_from_group_response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cmsg_client_get_emoticon_list__field_descriptors NULL
+#define cmsg_client_get_emoticon_list__field_indices_by_name NULL
+#define cmsg_client_get_emoticon_list__number_ranges NULL
+const ProtobufCMessageDescriptor cmsg_client_get_emoticon_list__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientGetEmoticonList",
+ "CMsgClientGetEmoticonList",
+ "CMsgClientGetEmoticonList",
+ "",
+ sizeof(CMsgClientGetEmoticonList),
+ 0,
+ cmsg_client_get_emoticon_list__field_descriptors,
+ cmsg_client_get_emoticon_list__field_indices_by_name,
+ 0, cmsg_client_get_emoticon_list__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_emoticon_list__emoticon__field_descriptors[6] =
+{
+ {
+ "name",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientEmoticonList__Emoticon, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "count",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientEmoticonList__Emoticon, has_count),
+ offsetof(CMsgClientEmoticonList__Emoticon, count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_last_used",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientEmoticonList__Emoticon, has_time_last_used),
+ offsetof(CMsgClientEmoticonList__Emoticon, time_last_used),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "use_count",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientEmoticonList__Emoticon, has_use_count),
+ offsetof(CMsgClientEmoticonList__Emoticon, use_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_received",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientEmoticonList__Emoticon, has_time_received),
+ offsetof(CMsgClientEmoticonList__Emoticon, time_received),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "appid",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientEmoticonList__Emoticon, has_appid),
+ offsetof(CMsgClientEmoticonList__Emoticon, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_emoticon_list__emoticon__field_indices_by_name[] = {
+ 5, /* field[5] = appid */
+ 1, /* field[1] = count */
+ 0, /* field[0] = name */
+ 2, /* field[2] = time_last_used */
+ 4, /* field[4] = time_received */
+ 3, /* field[3] = use_count */
+};
+static const ProtobufCIntRange cmsg_client_emoticon_list__emoticon__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor cmsg_client_emoticon_list__emoticon__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientEmoticonList.Emoticon",
+ "Emoticon",
+ "CMsgClientEmoticonList__Emoticon",
+ "",
+ sizeof(CMsgClientEmoticonList__Emoticon),
+ 6,
+ cmsg_client_emoticon_list__emoticon__field_descriptors,
+ cmsg_client_emoticon_list__emoticon__field_indices_by_name,
+ 1, cmsg_client_emoticon_list__emoticon__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_emoticon_list__sticker__field_descriptors[6] =
+{
+ {
+ "name",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientEmoticonList__Sticker, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "count",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientEmoticonList__Sticker, has_count),
+ offsetof(CMsgClientEmoticonList__Sticker, count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_received",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientEmoticonList__Sticker, has_time_received),
+ offsetof(CMsgClientEmoticonList__Sticker, time_received),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "appid",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientEmoticonList__Sticker, has_appid),
+ offsetof(CMsgClientEmoticonList__Sticker, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_last_used",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientEmoticonList__Sticker, has_time_last_used),
+ offsetof(CMsgClientEmoticonList__Sticker, time_last_used),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "use_count",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientEmoticonList__Sticker, has_use_count),
+ offsetof(CMsgClientEmoticonList__Sticker, use_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_emoticon_list__sticker__field_indices_by_name[] = {
+ 3, /* field[3] = appid */
+ 1, /* field[1] = count */
+ 0, /* field[0] = name */
+ 4, /* field[4] = time_last_used */
+ 2, /* field[2] = time_received */
+ 5, /* field[5] = use_count */
+};
+static const ProtobufCIntRange cmsg_client_emoticon_list__sticker__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor cmsg_client_emoticon_list__sticker__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientEmoticonList.Sticker",
+ "Sticker",
+ "CMsgClientEmoticonList__Sticker",
+ "",
+ sizeof(CMsgClientEmoticonList__Sticker),
+ 6,
+ cmsg_client_emoticon_list__sticker__field_descriptors,
+ cmsg_client_emoticon_list__sticker__field_indices_by_name,
+ 1, cmsg_client_emoticon_list__sticker__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_emoticon_list__effect__field_descriptors[5] =
+{
+ {
+ "name",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CMsgClientEmoticonList__Effect, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "count",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CMsgClientEmoticonList__Effect, has_count),
+ offsetof(CMsgClientEmoticonList__Effect, count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_received",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientEmoticonList__Effect, has_time_received),
+ offsetof(CMsgClientEmoticonList__Effect, time_received),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "infinite_use",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CMsgClientEmoticonList__Effect, has_infinite_use),
+ offsetof(CMsgClientEmoticonList__Effect, infinite_use),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "appid",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CMsgClientEmoticonList__Effect, has_appid),
+ offsetof(CMsgClientEmoticonList__Effect, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_emoticon_list__effect__field_indices_by_name[] = {
+ 4, /* field[4] = appid */
+ 1, /* field[1] = count */
+ 3, /* field[3] = infinite_use */
+ 0, /* field[0] = name */
+ 2, /* field[2] = time_received */
+};
+static const ProtobufCIntRange cmsg_client_emoticon_list__effect__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cmsg_client_emoticon_list__effect__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientEmoticonList.Effect",
+ "Effect",
+ "CMsgClientEmoticonList__Effect",
+ "",
+ sizeof(CMsgClientEmoticonList__Effect),
+ 5,
+ cmsg_client_emoticon_list__effect__field_descriptors,
+ cmsg_client_emoticon_list__effect__field_indices_by_name,
+ 1, cmsg_client_emoticon_list__effect__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cmsg_client_emoticon_list__field_descriptors[3] =
+{
+ {
+ "emoticons",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientEmoticonList, n_emoticons),
+ offsetof(CMsgClientEmoticonList, emoticons),
+ &cmsg_client_emoticon_list__emoticon__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "stickers",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientEmoticonList, n_stickers),
+ offsetof(CMsgClientEmoticonList, stickers),
+ &cmsg_client_emoticon_list__sticker__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "effects",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CMsgClientEmoticonList, n_effects),
+ offsetof(CMsgClientEmoticonList, effects),
+ &cmsg_client_emoticon_list__effect__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cmsg_client_emoticon_list__field_indices_by_name[] = {
+ 2, /* field[2] = effects */
+ 0, /* field[0] = emoticons */
+ 1, /* field[1] = stickers */
+};
+static const ProtobufCIntRange cmsg_client_emoticon_list__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cmsg_client_emoticon_list__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CMsgClientEmoticonList",
+ "CMsgClientEmoticonList",
+ "CMsgClientEmoticonList",
+ "",
+ sizeof(CMsgClientEmoticonList),
+ 3,
+ cmsg_client_emoticon_list__field_descriptors,
+ cmsg_client_emoticon_list__field_indices_by_name,
+ 1, cmsg_client_emoticon_list__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/protocols/Steam/src/protobuf-c/steammessages_clientserver_friends.pb-c.h b/protocols/Steam/src/protobuf-c/steammessages_clientserver_friends.pb-c.h
new file mode 100644
index 0000000000..4e42b9283b
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_clientserver_friends.pb-c.h
@@ -0,0 +1,1264 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_clientserver_friends.proto */
+
+#ifndef PROTOBUF_C_steammessages_5fclientserver_5ffriends_2eproto__INCLUDED
+#define PROTOBUF_C_steammessages_5fclientserver_5ffriends_2eproto__INCLUDED
+
+#include "protobuf-c.h"
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1000000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1004001 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "steammessages_base.pb-c.h"
+
+struct CMsgClientFriendMsg;
+struct CMsgClientFriendMsgIncoming;
+struct CMsgClientAddFriend;
+struct CMsgClientAddFriendResponse;
+struct CMsgClientRemoveFriend;
+struct CMsgClientHideFriend;
+struct CMsgClientFriendsList;
+struct CMsgClientFriendsList__Friend;
+struct CMsgClientFriendsGroupsList;
+struct CMsgClientFriendsGroupsList__FriendGroup;
+struct CMsgClientFriendsGroupsList__FriendGroupsMembership;
+struct CMsgClientPlayerNicknameList;
+struct CMsgClientPlayerNicknameList__PlayerNickname;
+struct CMsgClientSetPlayerNickname;
+struct CMsgClientSetPlayerNicknameResponse;
+struct CMsgClientRequestFriendData;
+struct CMsgClientChangeStatus;
+struct CMsgPersonaChangeResponse;
+struct CMsgClientPersonaState;
+struct CMsgClientPersonaState__Friend;
+struct CMsgClientPersonaState__Friend__ClanData;
+struct CMsgClientPersonaState__Friend__KV;
+struct CMsgClientFriendProfileInfo;
+struct CMsgClientFriendProfileInfoResponse;
+struct CMsgClientCreateFriendsGroup;
+struct CMsgClientCreateFriendsGroupResponse;
+struct CMsgClientDeleteFriendsGroup;
+struct CMsgClientDeleteFriendsGroupResponse;
+struct CMsgClientManageFriendsGroup;
+struct CMsgClientManageFriendsGroupResponse;
+struct CMsgClientAddFriendToGroup;
+struct CMsgClientAddFriendToGroupResponse;
+struct CMsgClientRemoveFriendFromGroup;
+struct CMsgClientRemoveFriendFromGroupResponse;
+struct CMsgClientGetEmoticonList;
+struct CMsgClientEmoticonList;
+struct CMsgClientEmoticonList__Emoticon;
+struct CMsgClientEmoticonList__Sticker;
+struct CMsgClientEmoticonList__Effect;
+
+
+/* --- enums --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor cmsg_client_friend_msg__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_friend_msg_incoming__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_add_friend__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_add_friend_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_remove_friend__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_hide_friend__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_friends_list__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_friends_list__friend__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_friends_groups_list__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_friends_groups_list__friend_group__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_friends_groups_list__friend_groups_membership__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_player_nickname_list__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_player_nickname_list__player_nickname__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_set_player_nickname__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_set_player_nickname_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_request_friend_data__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_change_status__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_persona_change_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_persona_state__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_persona_state__friend__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_persona_state__friend__clan_data__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_persona_state__friend__kv__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_friend_profile_info__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_friend_profile_info_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_create_friends_group__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_create_friends_group_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_delete_friends_group__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_delete_friends_group_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_manage_friends_group__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_manage_friends_group_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_add_friend_to_group__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_add_friend_to_group_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_remove_friend_from_group__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_remove_friend_from_group_response__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_get_emoticon_list__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_emoticon_list__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_emoticon_list__emoticon__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_emoticon_list__sticker__descriptor;
+extern const ProtobufCMessageDescriptor cmsg_client_emoticon_list__effect__descriptor;
+
+/* --- messages --- */
+
+extern "C" void message_init_generic(const ProtobufCMessageDescriptor * desc, ProtobufCMessage * message);
+
+struct CMsgClientFriendMsg : public ProtobufCppMessage
+{
+ CMsgClientFriendMsg() :
+ ProtobufCppMessage(cmsg_client_friend_msg__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_chat_entry_type;
+ int32_t chat_entry_type;
+ protobuf_c_boolean has_message;
+ ProtobufCBinaryData message;
+ protobuf_c_boolean has_rtime32_server_timestamp;
+ uint32_t rtime32_server_timestamp;
+ protobuf_c_boolean has_echo_to_sender;
+ protobuf_c_boolean echo_to_sender;
+};
+
+struct CMsgClientFriendMsgIncoming : public ProtobufCppMessage
+{
+ CMsgClientFriendMsgIncoming() :
+ ProtobufCppMessage(cmsg_client_friend_msg_incoming__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid_from;
+ uint64_t steamid_from;
+ protobuf_c_boolean has_chat_entry_type;
+ int32_t chat_entry_type;
+ protobuf_c_boolean has_from_limited_account;
+ protobuf_c_boolean from_limited_account;
+ protobuf_c_boolean has_message;
+ ProtobufCBinaryData message;
+ protobuf_c_boolean has_rtime32_server_timestamp;
+ uint32_t rtime32_server_timestamp;
+};
+
+struct CMsgClientAddFriend : public ProtobufCppMessage
+{
+ CMsgClientAddFriend() :
+ ProtobufCppMessage(cmsg_client_add_friend__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid_to_add;
+ uint64_t steamid_to_add;
+ char *accountname_or_email_to_add;
+};
+
+struct CMsgClientAddFriendResponse : public ProtobufCppMessage
+{
+ CMsgClientAddFriendResponse() :
+ ProtobufCppMessage(cmsg_client_add_friend_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_steam_id_added;
+ uint64_t steam_id_added;
+ char *persona_name_added;
+};
+
+struct CMsgClientRemoveFriend : public ProtobufCppMessage
+{
+ CMsgClientRemoveFriend() :
+ ProtobufCppMessage(cmsg_client_remove_friend__descriptor)
+ {}
+
+ protobuf_c_boolean has_friendid;
+ uint64_t friendid;
+};
+
+struct CMsgClientHideFriend : public ProtobufCppMessage
+{
+ CMsgClientHideFriend() :
+ ProtobufCppMessage(cmsg_client_hide_friend__descriptor)
+ {}
+
+ protobuf_c_boolean has_friendid;
+ uint64_t friendid;
+ protobuf_c_boolean has_hide;
+ protobuf_c_boolean hide;
+};
+
+struct CMsgClientFriendsList__Friend : public ProtobufCppMessage
+{
+ CMsgClientFriendsList__Friend() :
+ ProtobufCppMessage(cmsg_client_friends_list__friend__descriptor)
+ {}
+
+ protobuf_c_boolean has_ulfriendid;
+ uint64_t ulfriendid;
+ protobuf_c_boolean has_efriendrelationship;
+ uint32_t efriendrelationship;
+};
+
+struct CMsgClientFriendsList : public ProtobufCppMessage
+{
+ CMsgClientFriendsList() :
+ ProtobufCppMessage(cmsg_client_friends_list__descriptor)
+ {}
+
+ protobuf_c_boolean has_bincremental;
+ protobuf_c_boolean bincremental;
+ size_t n_friends;
+ CMsgClientFriendsList__Friend **friends;
+ protobuf_c_boolean has_max_friend_count;
+ uint32_t max_friend_count;
+ protobuf_c_boolean has_active_friend_count;
+ uint32_t active_friend_count;
+ protobuf_c_boolean has_friends_limit_hit;
+ protobuf_c_boolean friends_limit_hit;
+};
+
+struct CMsgClientFriendsGroupsList__FriendGroup : public ProtobufCppMessage
+{
+ CMsgClientFriendsGroupsList__FriendGroup() :
+ ProtobufCppMessage(cmsg_client_friends_groups_list__friend_group__descriptor)
+ {}
+
+ protobuf_c_boolean has_ngroupid;
+ int32_t ngroupid;
+ char *strgroupname;
+};
+
+struct CMsgClientFriendsGroupsList__FriendGroupsMembership : public ProtobufCppMessage
+{
+ CMsgClientFriendsGroupsList__FriendGroupsMembership() :
+ ProtobufCppMessage(cmsg_client_friends_groups_list__friend_groups_membership__descriptor)
+ {}
+
+ protobuf_c_boolean has_ulsteamid;
+ uint64_t ulsteamid;
+ protobuf_c_boolean has_ngroupid;
+ int32_t ngroupid;
+};
+
+struct CMsgClientFriendsGroupsList : public ProtobufCppMessage
+{
+ CMsgClientFriendsGroupsList() :
+ ProtobufCppMessage(cmsg_client_friends_groups_list__descriptor)
+ {}
+
+ protobuf_c_boolean has_bremoval;
+ protobuf_c_boolean bremoval;
+ protobuf_c_boolean has_bincremental;
+ protobuf_c_boolean bincremental;
+ size_t n_friendgroups;
+ CMsgClientFriendsGroupsList__FriendGroup **friendgroups;
+ size_t n_memberships;
+ CMsgClientFriendsGroupsList__FriendGroupsMembership **memberships;
+};
+
+struct CMsgClientPlayerNicknameList__PlayerNickname : public ProtobufCppMessage
+{
+ CMsgClientPlayerNicknameList__PlayerNickname() :
+ ProtobufCppMessage(cmsg_client_player_nickname_list__player_nickname__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ char *nickname;
+};
+
+struct CMsgClientPlayerNicknameList : public ProtobufCppMessage
+{
+ CMsgClientPlayerNicknameList() :
+ ProtobufCppMessage(cmsg_client_player_nickname_list__descriptor)
+ {}
+
+ protobuf_c_boolean has_removal;
+ protobuf_c_boolean removal;
+ protobuf_c_boolean has_incremental;
+ protobuf_c_boolean incremental;
+ size_t n_nicknames;
+ CMsgClientPlayerNicknameList__PlayerNickname **nicknames;
+};
+
+struct CMsgClientSetPlayerNickname : public ProtobufCppMessage
+{
+ CMsgClientSetPlayerNickname() :
+ ProtobufCppMessage(cmsg_client_set_player_nickname__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ char *nickname;
+};
+
+struct CMsgClientSetPlayerNicknameResponse : public ProtobufCppMessage
+{
+ CMsgClientSetPlayerNicknameResponse() :
+ ProtobufCppMessage(cmsg_client_set_player_nickname_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+};
+
+struct CMsgClientRequestFriendData : public ProtobufCppMessage
+{
+ CMsgClientRequestFriendData() :
+ ProtobufCppMessage(cmsg_client_request_friend_data__descriptor)
+ {}
+
+ protobuf_c_boolean has_persona_state_requested;
+ uint32_t persona_state_requested;
+ size_t n_friends;
+ uint64_t *friends;
+};
+
+struct CMsgClientChangeStatus : public ProtobufCppMessage
+{
+ CMsgClientChangeStatus() :
+ ProtobufCppMessage(cmsg_client_change_status__descriptor)
+ {}
+
+ protobuf_c_boolean has_persona_state;
+ uint32_t persona_state;
+ char *player_name;
+ protobuf_c_boolean has_is_auto_generated_name;
+ protobuf_c_boolean is_auto_generated_name;
+ protobuf_c_boolean has_high_priority;
+ protobuf_c_boolean high_priority;
+ protobuf_c_boolean has_persona_set_by_user;
+ protobuf_c_boolean persona_set_by_user;
+ protobuf_c_boolean has_persona_state_flags;
+ uint32_t persona_state_flags;
+ protobuf_c_boolean has_need_persona_response;
+ protobuf_c_boolean need_persona_response;
+ protobuf_c_boolean has_is_client_idle;
+ protobuf_c_boolean is_client_idle;
+};
+
+struct CMsgPersonaChangeResponse : public ProtobufCppMessage
+{
+ CMsgPersonaChangeResponse() :
+ ProtobufCppMessage(cmsg_persona_change_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_result;
+ uint32_t result;
+ char *player_name;
+};
+
+struct CMsgClientPersonaState__Friend__ClanData : public ProtobufCppMessage
+{
+ CMsgClientPersonaState__Friend__ClanData() :
+ ProtobufCppMessage(cmsg_client_persona_state__friend__clan_data__descriptor)
+ {}
+
+ protobuf_c_boolean has_ogg_app_id;
+ uint32_t ogg_app_id;
+ protobuf_c_boolean has_chat_group_id;
+ uint64_t chat_group_id;
+};
+
+struct CMsgClientPersonaState__Friend__KV : public ProtobufCppMessage
+{
+ CMsgClientPersonaState__Friend__KV() :
+ ProtobufCppMessage(cmsg_client_persona_state__friend__kv__descriptor)
+ {}
+
+ char *key;
+ char *value;
+};
+
+struct CMsgClientPersonaState__Friend : public ProtobufCppMessage
+{
+ CMsgClientPersonaState__Friend() :
+ ProtobufCppMessage(cmsg_client_persona_state__friend__descriptor)
+ {}
+
+ protobuf_c_boolean has_friendid;
+ uint64_t friendid;
+ protobuf_c_boolean has_persona_state;
+ uint32_t persona_state;
+ protobuf_c_boolean has_game_played_app_id;
+ uint32_t game_played_app_id;
+ protobuf_c_boolean has_game_server_ip;
+ uint32_t game_server_ip;
+ protobuf_c_boolean has_game_server_port;
+ uint32_t game_server_port;
+ protobuf_c_boolean has_persona_state_flags;
+ uint32_t persona_state_flags;
+ protobuf_c_boolean has_online_session_instances;
+ uint32_t online_session_instances;
+ protobuf_c_boolean has_persona_set_by_user;
+ protobuf_c_boolean persona_set_by_user;
+ char *player_name;
+ protobuf_c_boolean has_query_port;
+ uint32_t query_port;
+ protobuf_c_boolean has_steamid_source;
+ uint64_t steamid_source;
+ protobuf_c_boolean has_avatar_hash;
+ ProtobufCBinaryData avatar_hash;
+ protobuf_c_boolean has_last_logoff;
+ uint32_t last_logoff;
+ protobuf_c_boolean has_last_logon;
+ uint32_t last_logon;
+ protobuf_c_boolean has_last_seen_online;
+ uint32_t last_seen_online;
+ protobuf_c_boolean has_clan_rank;
+ uint32_t clan_rank;
+ char *game_name;
+ protobuf_c_boolean has_gameid;
+ uint64_t gameid;
+ protobuf_c_boolean has_game_data_blob;
+ ProtobufCBinaryData game_data_blob;
+ CMsgClientPersonaState__Friend__ClanData *clan_data;
+ char *clan_tag;
+ size_t n_rich_presence;
+ CMsgClientPersonaState__Friend__KV **rich_presence;
+ protobuf_c_boolean has_broadcast_id;
+ uint64_t broadcast_id;
+ protobuf_c_boolean has_game_lobby_id;
+ uint64_t game_lobby_id;
+ protobuf_c_boolean has_watching_broadcast_accountid;
+ uint32_t watching_broadcast_accountid;
+ protobuf_c_boolean has_watching_broadcast_appid;
+ uint32_t watching_broadcast_appid;
+ protobuf_c_boolean has_watching_broadcast_viewers;
+ uint32_t watching_broadcast_viewers;
+ char *watching_broadcast_title;
+ protobuf_c_boolean has_is_community_banned;
+ protobuf_c_boolean is_community_banned;
+ protobuf_c_boolean has_player_name_pending_review;
+ protobuf_c_boolean player_name_pending_review;
+ protobuf_c_boolean has_avatar_pending_review;
+ protobuf_c_boolean avatar_pending_review;
+};
+
+struct CMsgClientPersonaState : public ProtobufCppMessage
+{
+ CMsgClientPersonaState() :
+ ProtobufCppMessage(cmsg_client_persona_state__descriptor)
+ {}
+
+ protobuf_c_boolean has_status_flags;
+ uint32_t status_flags;
+ size_t n_friends;
+ CMsgClientPersonaState__Friend **friends;
+};
+
+struct CMsgClientFriendProfileInfo : public ProtobufCppMessage
+{
+ CMsgClientFriendProfileInfo() :
+ ProtobufCppMessage(cmsg_client_friend_profile_info__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid_friend;
+ uint64_t steamid_friend;
+};
+
+struct CMsgClientFriendProfileInfoResponse : public ProtobufCppMessage
+{
+ CMsgClientFriendProfileInfoResponse() :
+ ProtobufCppMessage(cmsg_client_friend_profile_info_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ int32_t eresult;
+ protobuf_c_boolean has_steamid_friend;
+ uint64_t steamid_friend;
+ protobuf_c_boolean has_time_created;
+ uint32_t time_created;
+ char *real_name;
+ char *city_name;
+ char *state_name;
+ char *country_name;
+ char *headline;
+ char *summary;
+};
+
+struct CMsgClientCreateFriendsGroup : public ProtobufCppMessage
+{
+ CMsgClientCreateFriendsGroup() :
+ ProtobufCppMessage(cmsg_client_create_friends_group__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ char *groupname;
+ size_t n_steamid_friends;
+ uint64_t *steamid_friends;
+};
+
+struct CMsgClientCreateFriendsGroupResponse : public ProtobufCppMessage
+{
+ CMsgClientCreateFriendsGroupResponse() :
+ ProtobufCppMessage(cmsg_client_create_friends_group_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+ protobuf_c_boolean has_groupid;
+ int32_t groupid;
+};
+
+struct CMsgClientDeleteFriendsGroup : public ProtobufCppMessage
+{
+ CMsgClientDeleteFriendsGroup() :
+ ProtobufCppMessage(cmsg_client_delete_friends_group__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_groupid;
+ int32_t groupid;
+};
+
+struct CMsgClientDeleteFriendsGroupResponse : public ProtobufCppMessage
+{
+ CMsgClientDeleteFriendsGroupResponse() :
+ ProtobufCppMessage(cmsg_client_delete_friends_group_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+};
+
+struct CMsgClientManageFriendsGroup : public ProtobufCppMessage
+{
+ CMsgClientManageFriendsGroup() :
+ ProtobufCppMessage(cmsg_client_manage_friends_group__descriptor)
+ {}
+
+ protobuf_c_boolean has_groupid;
+ int32_t groupid;
+ char *groupname;
+ size_t n_steamid_friends_added;
+ uint64_t *steamid_friends_added;
+ size_t n_steamid_friends_removed;
+ uint64_t *steamid_friends_removed;
+};
+
+struct CMsgClientManageFriendsGroupResponse : public ProtobufCppMessage
+{
+ CMsgClientManageFriendsGroupResponse() :
+ ProtobufCppMessage(cmsg_client_manage_friends_group_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+};
+
+struct CMsgClientAddFriendToGroup : public ProtobufCppMessage
+{
+ CMsgClientAddFriendToGroup() :
+ ProtobufCppMessage(cmsg_client_add_friend_to_group__descriptor)
+ {}
+
+ protobuf_c_boolean has_groupid;
+ int32_t groupid;
+ protobuf_c_boolean has_steamiduser;
+ uint64_t steamiduser;
+};
+
+struct CMsgClientAddFriendToGroupResponse : public ProtobufCppMessage
+{
+ CMsgClientAddFriendToGroupResponse() :
+ ProtobufCppMessage(cmsg_client_add_friend_to_group_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+};
+
+struct CMsgClientRemoveFriendFromGroup : public ProtobufCppMessage
+{
+ CMsgClientRemoveFriendFromGroup() :
+ ProtobufCppMessage(cmsg_client_remove_friend_from_group__descriptor)
+ {}
+
+ protobuf_c_boolean has_groupid;
+ int32_t groupid;
+ protobuf_c_boolean has_steamiduser;
+ uint64_t steamiduser;
+};
+
+struct CMsgClientRemoveFriendFromGroupResponse : public ProtobufCppMessage
+{
+ CMsgClientRemoveFriendFromGroupResponse() :
+ ProtobufCppMessage(cmsg_client_remove_friend_from_group_response__descriptor)
+ {}
+
+ protobuf_c_boolean has_eresult;
+ uint32_t eresult;
+};
+
+struct CMsgClientGetEmoticonList : public ProtobufCppMessage
+{
+ CMsgClientGetEmoticonList() :
+ ProtobufCppMessage(cmsg_client_get_emoticon_list__descriptor)
+ {}
+
+};
+
+struct CMsgClientEmoticonList__Emoticon : public ProtobufCppMessage
+{
+ CMsgClientEmoticonList__Emoticon() :
+ ProtobufCppMessage(cmsg_client_emoticon_list__emoticon__descriptor)
+ {}
+
+ char *name;
+ protobuf_c_boolean has_count;
+ int32_t count;
+ protobuf_c_boolean has_time_last_used;
+ uint32_t time_last_used;
+ protobuf_c_boolean has_use_count;
+ uint32_t use_count;
+ protobuf_c_boolean has_time_received;
+ uint32_t time_received;
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+};
+
+struct CMsgClientEmoticonList__Sticker : public ProtobufCppMessage
+{
+ CMsgClientEmoticonList__Sticker() :
+ ProtobufCppMessage(cmsg_client_emoticon_list__sticker__descriptor)
+ {}
+
+ char *name;
+ protobuf_c_boolean has_count;
+ int32_t count;
+ protobuf_c_boolean has_time_received;
+ uint32_t time_received;
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+ protobuf_c_boolean has_time_last_used;
+ uint32_t time_last_used;
+ protobuf_c_boolean has_use_count;
+ uint32_t use_count;
+};
+
+struct CMsgClientEmoticonList__Effect : public ProtobufCppMessage
+{
+ CMsgClientEmoticonList__Effect() :
+ ProtobufCppMessage(cmsg_client_emoticon_list__effect__descriptor)
+ {}
+
+ char *name;
+ protobuf_c_boolean has_count;
+ int32_t count;
+ protobuf_c_boolean has_time_received;
+ uint32_t time_received;
+ protobuf_c_boolean has_infinite_use;
+ protobuf_c_boolean infinite_use;
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+};
+
+struct CMsgClientEmoticonList : public ProtobufCppMessage
+{
+ CMsgClientEmoticonList() :
+ ProtobufCppMessage(cmsg_client_emoticon_list__descriptor)
+ {}
+
+ size_t n_emoticons;
+ CMsgClientEmoticonList__Emoticon **emoticons;
+ size_t n_stickers;
+ CMsgClientEmoticonList__Sticker **stickers;
+ size_t n_effects;
+ CMsgClientEmoticonList__Effect **effects;
+};
+
+size_t cmsg_client_friend_msg__get_packed_size
+ (const CMsgClientFriendMsg *message);
+size_t cmsg_client_friend_msg__pack
+ (const CMsgClientFriendMsg *message,
+ uint8_t *out);
+size_t cmsg_client_friend_msg__pack_to_buffer
+ (const CMsgClientFriendMsg *message,
+ ProtobufCBuffer *buffer);
+CMsgClientFriendMsg *
+ cmsg_client_friend_msg__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_friend_msg__free_unpacked
+ (CMsgClientFriendMsg *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_friend_msg_incoming__get_packed_size
+ (const CMsgClientFriendMsgIncoming *message);
+size_t cmsg_client_friend_msg_incoming__pack
+ (const CMsgClientFriendMsgIncoming *message,
+ uint8_t *out);
+size_t cmsg_client_friend_msg_incoming__pack_to_buffer
+ (const CMsgClientFriendMsgIncoming *message,
+ ProtobufCBuffer *buffer);
+CMsgClientFriendMsgIncoming *
+ cmsg_client_friend_msg_incoming__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_friend_msg_incoming__free_unpacked
+ (CMsgClientFriendMsgIncoming *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_add_friend__get_packed_size
+ (const CMsgClientAddFriend *message);
+size_t cmsg_client_add_friend__pack
+ (const CMsgClientAddFriend *message,
+ uint8_t *out);
+size_t cmsg_client_add_friend__pack_to_buffer
+ (const CMsgClientAddFriend *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAddFriend *
+ cmsg_client_add_friend__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_add_friend__free_unpacked
+ (CMsgClientAddFriend *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_add_friend_response__get_packed_size
+ (const CMsgClientAddFriendResponse *message);
+size_t cmsg_client_add_friend_response__pack
+ (const CMsgClientAddFriendResponse *message,
+ uint8_t *out);
+size_t cmsg_client_add_friend_response__pack_to_buffer
+ (const CMsgClientAddFriendResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAddFriendResponse *
+ cmsg_client_add_friend_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_add_friend_response__free_unpacked
+ (CMsgClientAddFriendResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_remove_friend__get_packed_size
+ (const CMsgClientRemoveFriend *message);
+size_t cmsg_client_remove_friend__pack
+ (const CMsgClientRemoveFriend *message,
+ uint8_t *out);
+size_t cmsg_client_remove_friend__pack_to_buffer
+ (const CMsgClientRemoveFriend *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRemoveFriend *
+ cmsg_client_remove_friend__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_remove_friend__free_unpacked
+ (CMsgClientRemoveFriend *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_hide_friend__get_packed_size
+ (const CMsgClientHideFriend *message);
+size_t cmsg_client_hide_friend__pack
+ (const CMsgClientHideFriend *message,
+ uint8_t *out);
+size_t cmsg_client_hide_friend__pack_to_buffer
+ (const CMsgClientHideFriend *message,
+ ProtobufCBuffer *buffer);
+CMsgClientHideFriend *
+ cmsg_client_hide_friend__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_hide_friend__free_unpacked
+ (CMsgClientHideFriend *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_friends_list__get_packed_size
+ (const CMsgClientFriendsList *message);
+size_t cmsg_client_friends_list__pack
+ (const CMsgClientFriendsList *message,
+ uint8_t *out);
+size_t cmsg_client_friends_list__pack_to_buffer
+ (const CMsgClientFriendsList *message,
+ ProtobufCBuffer *buffer);
+CMsgClientFriendsList *
+ cmsg_client_friends_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_friends_list__free_unpacked
+ (CMsgClientFriendsList *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_friends_groups_list__get_packed_size
+ (const CMsgClientFriendsGroupsList *message);
+size_t cmsg_client_friends_groups_list__pack
+ (const CMsgClientFriendsGroupsList *message,
+ uint8_t *out);
+size_t cmsg_client_friends_groups_list__pack_to_buffer
+ (const CMsgClientFriendsGroupsList *message,
+ ProtobufCBuffer *buffer);
+CMsgClientFriendsGroupsList *
+ cmsg_client_friends_groups_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_friends_groups_list__free_unpacked
+ (CMsgClientFriendsGroupsList *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_player_nickname_list__get_packed_size
+ (const CMsgClientPlayerNicknameList *message);
+size_t cmsg_client_player_nickname_list__pack
+ (const CMsgClientPlayerNicknameList *message,
+ uint8_t *out);
+size_t cmsg_client_player_nickname_list__pack_to_buffer
+ (const CMsgClientPlayerNicknameList *message,
+ ProtobufCBuffer *buffer);
+CMsgClientPlayerNicknameList *
+ cmsg_client_player_nickname_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_player_nickname_list__free_unpacked
+ (CMsgClientPlayerNicknameList *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_set_player_nickname__get_packed_size
+ (const CMsgClientSetPlayerNickname *message);
+size_t cmsg_client_set_player_nickname__pack
+ (const CMsgClientSetPlayerNickname *message,
+ uint8_t *out);
+size_t cmsg_client_set_player_nickname__pack_to_buffer
+ (const CMsgClientSetPlayerNickname *message,
+ ProtobufCBuffer *buffer);
+CMsgClientSetPlayerNickname *
+ cmsg_client_set_player_nickname__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_set_player_nickname__free_unpacked
+ (CMsgClientSetPlayerNickname *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_set_player_nickname_response__get_packed_size
+ (const CMsgClientSetPlayerNicknameResponse *message);
+size_t cmsg_client_set_player_nickname_response__pack
+ (const CMsgClientSetPlayerNicknameResponse *message,
+ uint8_t *out);
+size_t cmsg_client_set_player_nickname_response__pack_to_buffer
+ (const CMsgClientSetPlayerNicknameResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientSetPlayerNicknameResponse *
+ cmsg_client_set_player_nickname_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_set_player_nickname_response__free_unpacked
+ (CMsgClientSetPlayerNicknameResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_request_friend_data__get_packed_size
+ (const CMsgClientRequestFriendData *message);
+size_t cmsg_client_request_friend_data__pack
+ (const CMsgClientRequestFriendData *message,
+ uint8_t *out);
+size_t cmsg_client_request_friend_data__pack_to_buffer
+ (const CMsgClientRequestFriendData *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRequestFriendData *
+ cmsg_client_request_friend_data__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_request_friend_data__free_unpacked
+ (CMsgClientRequestFriendData *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_change_status__get_packed_size
+ (const CMsgClientChangeStatus *message);
+size_t cmsg_client_change_status__pack
+ (const CMsgClientChangeStatus *message,
+ uint8_t *out);
+size_t cmsg_client_change_status__pack_to_buffer
+ (const CMsgClientChangeStatus *message,
+ ProtobufCBuffer *buffer);
+CMsgClientChangeStatus *
+ cmsg_client_change_status__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_change_status__free_unpacked
+ (CMsgClientChangeStatus *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_persona_change_response__get_packed_size
+ (const CMsgPersonaChangeResponse *message);
+size_t cmsg_persona_change_response__pack
+ (const CMsgPersonaChangeResponse *message,
+ uint8_t *out);
+size_t cmsg_persona_change_response__pack_to_buffer
+ (const CMsgPersonaChangeResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgPersonaChangeResponse *
+ cmsg_persona_change_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_persona_change_response__free_unpacked
+ (CMsgPersonaChangeResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_persona_state__get_packed_size
+ (const CMsgClientPersonaState *message);
+size_t cmsg_client_persona_state__pack
+ (const CMsgClientPersonaState *message,
+ uint8_t *out);
+size_t cmsg_client_persona_state__pack_to_buffer
+ (const CMsgClientPersonaState *message,
+ ProtobufCBuffer *buffer);
+CMsgClientPersonaState *
+ cmsg_client_persona_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_persona_state__free_unpacked
+ (CMsgClientPersonaState *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_friend_profile_info__get_packed_size
+ (const CMsgClientFriendProfileInfo *message);
+size_t cmsg_client_friend_profile_info__pack
+ (const CMsgClientFriendProfileInfo *message,
+ uint8_t *out);
+size_t cmsg_client_friend_profile_info__pack_to_buffer
+ (const CMsgClientFriendProfileInfo *message,
+ ProtobufCBuffer *buffer);
+CMsgClientFriendProfileInfo *
+ cmsg_client_friend_profile_info__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_friend_profile_info__free_unpacked
+ (CMsgClientFriendProfileInfo *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_friend_profile_info_response__get_packed_size
+ (const CMsgClientFriendProfileInfoResponse *message);
+size_t cmsg_client_friend_profile_info_response__pack
+ (const CMsgClientFriendProfileInfoResponse *message,
+ uint8_t *out);
+size_t cmsg_client_friend_profile_info_response__pack_to_buffer
+ (const CMsgClientFriendProfileInfoResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientFriendProfileInfoResponse *
+ cmsg_client_friend_profile_info_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_friend_profile_info_response__free_unpacked
+ (CMsgClientFriendProfileInfoResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_create_friends_group__get_packed_size
+ (const CMsgClientCreateFriendsGroup *message);
+size_t cmsg_client_create_friends_group__pack
+ (const CMsgClientCreateFriendsGroup *message,
+ uint8_t *out);
+size_t cmsg_client_create_friends_group__pack_to_buffer
+ (const CMsgClientCreateFriendsGroup *message,
+ ProtobufCBuffer *buffer);
+CMsgClientCreateFriendsGroup *
+ cmsg_client_create_friends_group__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_create_friends_group__free_unpacked
+ (CMsgClientCreateFriendsGroup *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_create_friends_group_response__get_packed_size
+ (const CMsgClientCreateFriendsGroupResponse *message);
+size_t cmsg_client_create_friends_group_response__pack
+ (const CMsgClientCreateFriendsGroupResponse *message,
+ uint8_t *out);
+size_t cmsg_client_create_friends_group_response__pack_to_buffer
+ (const CMsgClientCreateFriendsGroupResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientCreateFriendsGroupResponse *
+ cmsg_client_create_friends_group_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_create_friends_group_response__free_unpacked
+ (CMsgClientCreateFriendsGroupResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_delete_friends_group__get_packed_size
+ (const CMsgClientDeleteFriendsGroup *message);
+size_t cmsg_client_delete_friends_group__pack
+ (const CMsgClientDeleteFriendsGroup *message,
+ uint8_t *out);
+size_t cmsg_client_delete_friends_group__pack_to_buffer
+ (const CMsgClientDeleteFriendsGroup *message,
+ ProtobufCBuffer *buffer);
+CMsgClientDeleteFriendsGroup *
+ cmsg_client_delete_friends_group__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_delete_friends_group__free_unpacked
+ (CMsgClientDeleteFriendsGroup *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_delete_friends_group_response__get_packed_size
+ (const CMsgClientDeleteFriendsGroupResponse *message);
+size_t cmsg_client_delete_friends_group_response__pack
+ (const CMsgClientDeleteFriendsGroupResponse *message,
+ uint8_t *out);
+size_t cmsg_client_delete_friends_group_response__pack_to_buffer
+ (const CMsgClientDeleteFriendsGroupResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientDeleteFriendsGroupResponse *
+ cmsg_client_delete_friends_group_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_delete_friends_group_response__free_unpacked
+ (CMsgClientDeleteFriendsGroupResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_manage_friends_group__get_packed_size
+ (const CMsgClientManageFriendsGroup *message);
+size_t cmsg_client_manage_friends_group__pack
+ (const CMsgClientManageFriendsGroup *message,
+ uint8_t *out);
+size_t cmsg_client_manage_friends_group__pack_to_buffer
+ (const CMsgClientManageFriendsGroup *message,
+ ProtobufCBuffer *buffer);
+CMsgClientManageFriendsGroup *
+ cmsg_client_manage_friends_group__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_manage_friends_group__free_unpacked
+ (CMsgClientManageFriendsGroup *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_manage_friends_group_response__get_packed_size
+ (const CMsgClientManageFriendsGroupResponse *message);
+size_t cmsg_client_manage_friends_group_response__pack
+ (const CMsgClientManageFriendsGroupResponse *message,
+ uint8_t *out);
+size_t cmsg_client_manage_friends_group_response__pack_to_buffer
+ (const CMsgClientManageFriendsGroupResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientManageFriendsGroupResponse *
+ cmsg_client_manage_friends_group_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_manage_friends_group_response__free_unpacked
+ (CMsgClientManageFriendsGroupResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_add_friend_to_group__get_packed_size
+ (const CMsgClientAddFriendToGroup *message);
+size_t cmsg_client_add_friend_to_group__pack
+ (const CMsgClientAddFriendToGroup *message,
+ uint8_t *out);
+size_t cmsg_client_add_friend_to_group__pack_to_buffer
+ (const CMsgClientAddFriendToGroup *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAddFriendToGroup *
+ cmsg_client_add_friend_to_group__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_add_friend_to_group__free_unpacked
+ (CMsgClientAddFriendToGroup *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_add_friend_to_group_response__get_packed_size
+ (const CMsgClientAddFriendToGroupResponse *message);
+size_t cmsg_client_add_friend_to_group_response__pack
+ (const CMsgClientAddFriendToGroupResponse *message,
+ uint8_t *out);
+size_t cmsg_client_add_friend_to_group_response__pack_to_buffer
+ (const CMsgClientAddFriendToGroupResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientAddFriendToGroupResponse *
+ cmsg_client_add_friend_to_group_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_add_friend_to_group_response__free_unpacked
+ (CMsgClientAddFriendToGroupResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_remove_friend_from_group__get_packed_size
+ (const CMsgClientRemoveFriendFromGroup *message);
+size_t cmsg_client_remove_friend_from_group__pack
+ (const CMsgClientRemoveFriendFromGroup *message,
+ uint8_t *out);
+size_t cmsg_client_remove_friend_from_group__pack_to_buffer
+ (const CMsgClientRemoveFriendFromGroup *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRemoveFriendFromGroup *
+ cmsg_client_remove_friend_from_group__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_remove_friend_from_group__free_unpacked
+ (CMsgClientRemoveFriendFromGroup *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_remove_friend_from_group_response__get_packed_size
+ (const CMsgClientRemoveFriendFromGroupResponse *message);
+size_t cmsg_client_remove_friend_from_group_response__pack
+ (const CMsgClientRemoveFriendFromGroupResponse *message,
+ uint8_t *out);
+size_t cmsg_client_remove_friend_from_group_response__pack_to_buffer
+ (const CMsgClientRemoveFriendFromGroupResponse *message,
+ ProtobufCBuffer *buffer);
+CMsgClientRemoveFriendFromGroupResponse *
+ cmsg_client_remove_friend_from_group_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_remove_friend_from_group_response__free_unpacked
+ (CMsgClientRemoveFriendFromGroupResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_get_emoticon_list__get_packed_size
+ (const CMsgClientGetEmoticonList *message);
+size_t cmsg_client_get_emoticon_list__pack
+ (const CMsgClientGetEmoticonList *message,
+ uint8_t *out);
+size_t cmsg_client_get_emoticon_list__pack_to_buffer
+ (const CMsgClientGetEmoticonList *message,
+ ProtobufCBuffer *buffer);
+CMsgClientGetEmoticonList *
+ cmsg_client_get_emoticon_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_get_emoticon_list__free_unpacked
+ (CMsgClientGetEmoticonList *message,
+ ProtobufCAllocator *allocator);
+size_t cmsg_client_emoticon_list__get_packed_size
+ (const CMsgClientEmoticonList *message);
+size_t cmsg_client_emoticon_list__pack
+ (const CMsgClientEmoticonList *message,
+ uint8_t *out);
+size_t cmsg_client_emoticon_list__pack_to_buffer
+ (const CMsgClientEmoticonList *message,
+ ProtobufCBuffer *buffer);
+CMsgClientEmoticonList *
+ cmsg_client_emoticon_list__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cmsg_client_emoticon_list__free_unpacked
+ (CMsgClientEmoticonList *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*CMsgClientFriendMsg_Closure)
+ (const CMsgClientFriendMsg *message,
+ void *closure_data);
+typedef void (*CMsgClientFriendMsgIncoming_Closure)
+ (const CMsgClientFriendMsgIncoming *message,
+ void *closure_data);
+typedef void (*CMsgClientAddFriend_Closure)
+ (const CMsgClientAddFriend *message,
+ void *closure_data);
+typedef void (*CMsgClientAddFriendResponse_Closure)
+ (const CMsgClientAddFriendResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientRemoveFriend_Closure)
+ (const CMsgClientRemoveFriend *message,
+ void *closure_data);
+typedef void (*CMsgClientHideFriend_Closure)
+ (const CMsgClientHideFriend *message,
+ void *closure_data);
+typedef void (*CMsgClientFriendsList__Friend_Closure)
+ (const CMsgClientFriendsList__Friend *message,
+ void *closure_data);
+typedef void (*CMsgClientFriendsList_Closure)
+ (const CMsgClientFriendsList *message,
+ void *closure_data);
+typedef void (*CMsgClientFriendsGroupsList__FriendGroup_Closure)
+ (const CMsgClientFriendsGroupsList__FriendGroup *message,
+ void *closure_data);
+typedef void (*CMsgClientFriendsGroupsList__FriendGroupsMembership_Closure)
+ (const CMsgClientFriendsGroupsList__FriendGroupsMembership *message,
+ void *closure_data);
+typedef void (*CMsgClientFriendsGroupsList_Closure)
+ (const CMsgClientFriendsGroupsList *message,
+ void *closure_data);
+typedef void (*CMsgClientPlayerNicknameList__PlayerNickname_Closure)
+ (const CMsgClientPlayerNicknameList__PlayerNickname *message,
+ void *closure_data);
+typedef void (*CMsgClientPlayerNicknameList_Closure)
+ (const CMsgClientPlayerNicknameList *message,
+ void *closure_data);
+typedef void (*CMsgClientSetPlayerNickname_Closure)
+ (const CMsgClientSetPlayerNickname *message,
+ void *closure_data);
+typedef void (*CMsgClientSetPlayerNicknameResponse_Closure)
+ (const CMsgClientSetPlayerNicknameResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientRequestFriendData_Closure)
+ (const CMsgClientRequestFriendData *message,
+ void *closure_data);
+typedef void (*CMsgClientChangeStatus_Closure)
+ (const CMsgClientChangeStatus *message,
+ void *closure_data);
+typedef void (*CMsgPersonaChangeResponse_Closure)
+ (const CMsgPersonaChangeResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientPersonaState__Friend__ClanData_Closure)
+ (const CMsgClientPersonaState__Friend__ClanData *message,
+ void *closure_data);
+typedef void (*CMsgClientPersonaState__Friend__KV_Closure)
+ (const CMsgClientPersonaState__Friend__KV *message,
+ void *closure_data);
+typedef void (*CMsgClientPersonaState__Friend_Closure)
+ (const CMsgClientPersonaState__Friend *message,
+ void *closure_data);
+typedef void (*CMsgClientPersonaState_Closure)
+ (const CMsgClientPersonaState *message,
+ void *closure_data);
+typedef void (*CMsgClientFriendProfileInfo_Closure)
+ (const CMsgClientFriendProfileInfo *message,
+ void *closure_data);
+typedef void (*CMsgClientFriendProfileInfoResponse_Closure)
+ (const CMsgClientFriendProfileInfoResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientCreateFriendsGroup_Closure)
+ (const CMsgClientCreateFriendsGroup *message,
+ void *closure_data);
+typedef void (*CMsgClientCreateFriendsGroupResponse_Closure)
+ (const CMsgClientCreateFriendsGroupResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientDeleteFriendsGroup_Closure)
+ (const CMsgClientDeleteFriendsGroup *message,
+ void *closure_data);
+typedef void (*CMsgClientDeleteFriendsGroupResponse_Closure)
+ (const CMsgClientDeleteFriendsGroupResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientManageFriendsGroup_Closure)
+ (const CMsgClientManageFriendsGroup *message,
+ void *closure_data);
+typedef void (*CMsgClientManageFriendsGroupResponse_Closure)
+ (const CMsgClientManageFriendsGroupResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientAddFriendToGroup_Closure)
+ (const CMsgClientAddFriendToGroup *message,
+ void *closure_data);
+typedef void (*CMsgClientAddFriendToGroupResponse_Closure)
+ (const CMsgClientAddFriendToGroupResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientRemoveFriendFromGroup_Closure)
+ (const CMsgClientRemoveFriendFromGroup *message,
+ void *closure_data);
+typedef void (*CMsgClientRemoveFriendFromGroupResponse_Closure)
+ (const CMsgClientRemoveFriendFromGroupResponse *message,
+ void *closure_data);
+typedef void (*CMsgClientGetEmoticonList_Closure)
+ (const CMsgClientGetEmoticonList *message,
+ void *closure_data);
+typedef void (*CMsgClientEmoticonList__Emoticon_Closure)
+ (const CMsgClientEmoticonList__Emoticon *message,
+ void *closure_data);
+typedef void (*CMsgClientEmoticonList__Sticker_Closure)
+ (const CMsgClientEmoticonList__Sticker *message,
+ void *closure_data);
+typedef void (*CMsgClientEmoticonList__Effect_Closure)
+ (const CMsgClientEmoticonList__Effect *message,
+ void *closure_data);
+typedef void (*CMsgClientEmoticonList_Closure)
+ (const CMsgClientEmoticonList *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_steammessages_5fclientserver_5ffriends_2eproto__INCLUDED */
diff --git a/protocols/Steam/src/protobuf-c/steammessages_clientserver_friends.proto b/protocols/Steam/src/protobuf-c/steammessages_clientserver_friends.proto
new file mode 100644
index 0000000000..62c70e10c3
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_clientserver_friends.proto
@@ -0,0 +1,260 @@
+import "steammessages_base.proto";
+
+option optimize_for = SPEED;
+option cc_generic_services = false;
+
+message CMsgClientFriendMsg {
+ optional fixed64 steamid = 1;
+ optional int32 chat_entry_type = 2;
+ optional bytes message = 3;
+ optional fixed32 rtime32_server_timestamp = 4;
+ optional bool echo_to_sender = 5;
+}
+
+message CMsgClientFriendMsgIncoming {
+ optional fixed64 steamid_from = 1;
+ optional int32 chat_entry_type = 2;
+ optional bool from_limited_account = 3;
+ optional bytes message = 4;
+ optional fixed32 rtime32_server_timestamp = 5;
+}
+
+message CMsgClientAddFriend {
+ optional fixed64 steamid_to_add = 1;
+ optional string accountname_or_email_to_add = 2;
+}
+
+message CMsgClientAddFriendResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional fixed64 steam_id_added = 2;
+ optional string persona_name_added = 3;
+}
+
+message CMsgClientRemoveFriend {
+ optional fixed64 friendid = 1;
+}
+
+message CMsgClientHideFriend {
+ optional fixed64 friendid = 1;
+ optional bool hide = 2;
+}
+
+message CMsgClientFriendsList {
+ message Friend {
+ optional fixed64 ulfriendid = 1;
+ optional uint32 efriendrelationship = 2;
+ }
+
+ optional bool bincremental = 1;
+ repeated .CMsgClientFriendsList.Friend friends = 2;
+ optional uint32 max_friend_count = 3;
+ optional uint32 active_friend_count = 4;
+ optional bool friends_limit_hit = 5;
+}
+
+message CMsgClientFriendsGroupsList {
+ message FriendGroup {
+ optional int32 nGroupID = 1;
+ optional string strGroupName = 2;
+ }
+
+ message FriendGroupsMembership {
+ optional fixed64 ulSteamID = 1;
+ optional int32 nGroupID = 2;
+ }
+
+ optional bool bremoval = 1;
+ optional bool bincremental = 2;
+ repeated .CMsgClientFriendsGroupsList.FriendGroup friendGroups = 3;
+ repeated .CMsgClientFriendsGroupsList.FriendGroupsMembership memberships = 4;
+}
+
+message CMsgClientPlayerNicknameList {
+ message PlayerNickname {
+ optional fixed64 steamid = 1;
+ optional string nickname = 3;
+ }
+
+ optional bool removal = 1;
+ optional bool incremental = 2;
+ repeated .CMsgClientPlayerNicknameList.PlayerNickname nicknames = 3;
+}
+
+message CMsgClientSetPlayerNickname {
+ optional fixed64 steamid = 1;
+ optional string nickname = 2;
+}
+
+message CMsgClientSetPlayerNicknameResponse {
+ optional uint32 eresult = 1;
+}
+
+message CMsgClientRequestFriendData {
+ optional uint32 persona_state_requested = 1;
+ repeated fixed64 friends = 2;
+}
+
+message CMsgClientChangeStatus {
+ optional uint32 persona_state = 1;
+ optional string player_name = 2;
+ optional bool is_auto_generated_name = 3;
+ optional bool high_priority = 4;
+ optional bool persona_set_by_user = 5;
+ optional uint32 persona_state_flags = 6 [default = 0];
+ optional bool need_persona_response = 7;
+ optional bool is_client_idle = 8;
+}
+
+message CMsgPersonaChangeResponse {
+ optional uint32 result = 1;
+ optional string player_name = 2;
+}
+
+message CMsgClientPersonaState {
+ message Friend {
+ message ClanData {
+ optional uint32 ogg_app_id = 1;
+ optional uint64 chat_group_id = 2;
+ }
+
+ message KV {
+ optional string key = 1;
+ optional string value = 2;
+ }
+
+ optional fixed64 friendid = 1;
+ optional uint32 persona_state = 2;
+ optional uint32 game_played_app_id = 3;
+ optional uint32 game_server_ip = 4;
+ optional uint32 game_server_port = 5;
+ optional uint32 persona_state_flags = 6;
+ optional uint32 online_session_instances = 7;
+ optional bool persona_set_by_user = 10;
+ optional string player_name = 15;
+ optional uint32 query_port = 20;
+ optional fixed64 steamid_source = 25;
+ optional bytes avatar_hash = 31;
+ optional uint32 last_logoff = 45;
+ optional uint32 last_logon = 46;
+ optional uint32 last_seen_online = 47;
+ optional uint32 clan_rank = 50;
+ optional string game_name = 55;
+ optional fixed64 gameid = 56;
+ optional bytes game_data_blob = 60;
+ optional .CMsgClientPersonaState.Friend.ClanData clan_data = 64;
+ optional string clan_tag = 65;
+ repeated .CMsgClientPersonaState.Friend.KV rich_presence = 71;
+ optional fixed64 broadcast_id = 72;
+ optional fixed64 game_lobby_id = 73;
+ optional uint32 watching_broadcast_accountid = 74;
+ optional uint32 watching_broadcast_appid = 75;
+ optional uint32 watching_broadcast_viewers = 76;
+ optional string watching_broadcast_title = 77;
+ optional bool is_community_banned = 78;
+ optional bool player_name_pending_review = 79;
+ optional bool avatar_pending_review = 80;
+ }
+
+ optional uint32 status_flags = 1;
+ repeated .CMsgClientPersonaState.Friend friends = 2;
+}
+
+message CMsgClientFriendProfileInfo {
+ optional fixed64 steamid_friend = 1;
+}
+
+message CMsgClientFriendProfileInfoResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional fixed64 steamid_friend = 2;
+ optional uint32 time_created = 3;
+ optional string real_name = 4;
+ optional string city_name = 5;
+ optional string state_name = 6;
+ optional string country_name = 7;
+ optional string headline = 8;
+ optional string summary = 9;
+}
+
+message CMsgClientCreateFriendsGroup {
+ optional fixed64 steamid = 1;
+ optional string groupname = 2;
+ repeated fixed64 steamid_friends = 3;
+}
+
+message CMsgClientCreateFriendsGroupResponse {
+ optional uint32 eresult = 1;
+ optional int32 groupid = 2;
+}
+
+message CMsgClientDeleteFriendsGroup {
+ optional fixed64 steamid = 1;
+ optional int32 groupid = 2;
+}
+
+message CMsgClientDeleteFriendsGroupResponse {
+ optional uint32 eresult = 1;
+}
+
+message CMsgClientManageFriendsGroup {
+ optional int32 groupid = 1;
+ optional string groupname = 2;
+ repeated fixed64 steamid_friends_added = 3;
+ repeated fixed64 steamid_friends_removed = 4;
+}
+
+message CMsgClientManageFriendsGroupResponse {
+ optional uint32 eresult = 1;
+}
+
+message CMsgClientAddFriendToGroup {
+ optional int32 groupid = 1;
+ optional fixed64 steamiduser = 2;
+}
+
+message CMsgClientAddFriendToGroupResponse {
+ optional uint32 eresult = 1;
+}
+
+message CMsgClientRemoveFriendFromGroup {
+ optional int32 groupid = 1;
+ optional fixed64 steamiduser = 2;
+}
+
+message CMsgClientRemoveFriendFromGroupResponse {
+ optional uint32 eresult = 1;
+}
+
+message CMsgClientGetEmoticonList {
+}
+
+message CMsgClientEmoticonList {
+ message Emoticon {
+ optional string name = 1;
+ optional int32 count = 2;
+ optional uint32 time_last_used = 3;
+ optional uint32 use_count = 4;
+ optional uint32 time_received = 5;
+ optional uint32 appid = 6;
+ }
+
+ message Sticker {
+ optional string name = 1;
+ optional int32 count = 2;
+ optional uint32 time_received = 3;
+ optional uint32 appid = 4;
+ optional uint32 time_last_used = 5;
+ optional uint32 use_count = 6;
+ }
+
+ message Effect {
+ optional string name = 1;
+ optional int32 count = 2;
+ optional uint32 time_received = 3;
+ optional bool infinite_use = 4;
+ optional uint32 appid = 5;
+ }
+
+ repeated .CMsgClientEmoticonList.Emoticon emoticons = 1;
+ repeated .CMsgClientEmoticonList.Sticker stickers = 2;
+ repeated .CMsgClientEmoticonList.Effect effects = 3;
+}
diff --git a/protocols/Steam/src/protobuf-c/steammessages_deviceauth.steamclient.pb-c.cpp b/protocols/Steam/src/protobuf-c/steammessages_deviceauth.steamclient.pb-c.cpp
new file mode 100644
index 0000000000..1fbf59c1d6
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_deviceauth.steamclient.pb-c.cpp
@@ -0,0 +1,2522 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_deviceauth.steamclient.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "steammessages_deviceauth.steamclient.pb-c.h"
+size_t cdevice_auth__get_own_authorized_devices__request__get_packed_size
+ (const CDeviceAuthGetOwnAuthorizedDevicesRequest *message)
+{
+ assert(message->descriptor == &cdevice_auth__get_own_authorized_devices__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__get_own_authorized_devices__request__pack
+ (const CDeviceAuthGetOwnAuthorizedDevicesRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__get_own_authorized_devices__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__get_own_authorized_devices__request__pack_to_buffer
+ (const CDeviceAuthGetOwnAuthorizedDevicesRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__get_own_authorized_devices__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthGetOwnAuthorizedDevicesRequest *
+ cdevice_auth__get_own_authorized_devices__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthGetOwnAuthorizedDevicesRequest *)
+ protobuf_c_message_unpack (&cdevice_auth__get_own_authorized_devices__request__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__get_own_authorized_devices__request__free_unpacked
+ (CDeviceAuthGetOwnAuthorizedDevicesRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__get_own_authorized_devices__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__get_own_authorized_devices__response__get_packed_size
+ (const CDeviceAuthGetOwnAuthorizedDevicesResponse *message)
+{
+ assert(message->descriptor == &cdevice_auth__get_own_authorized_devices__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__get_own_authorized_devices__response__pack
+ (const CDeviceAuthGetOwnAuthorizedDevicesResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__get_own_authorized_devices__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__get_own_authorized_devices__response__pack_to_buffer
+ (const CDeviceAuthGetOwnAuthorizedDevicesResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__get_own_authorized_devices__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthGetOwnAuthorizedDevicesResponse *
+ cdevice_auth__get_own_authorized_devices__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthGetOwnAuthorizedDevicesResponse *)
+ protobuf_c_message_unpack (&cdevice_auth__get_own_authorized_devices__response__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__get_own_authorized_devices__response__free_unpacked
+ (CDeviceAuthGetOwnAuthorizedDevicesResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__get_own_authorized_devices__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__accept_authorization_request__request__get_packed_size
+ (const CDeviceAuthAcceptAuthorizationRequestRequest *message)
+{
+ assert(message->descriptor == &cdevice_auth__accept_authorization_request__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__accept_authorization_request__request__pack
+ (const CDeviceAuthAcceptAuthorizationRequestRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__accept_authorization_request__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__accept_authorization_request__request__pack_to_buffer
+ (const CDeviceAuthAcceptAuthorizationRequestRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__accept_authorization_request__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthAcceptAuthorizationRequestRequest *
+ cdevice_auth__accept_authorization_request__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthAcceptAuthorizationRequestRequest *)
+ protobuf_c_message_unpack (&cdevice_auth__accept_authorization_request__request__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__accept_authorization_request__request__free_unpacked
+ (CDeviceAuthAcceptAuthorizationRequestRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__accept_authorization_request__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__accept_authorization_request__response__get_packed_size
+ (const CDeviceAuthAcceptAuthorizationRequestResponse *message)
+{
+ assert(message->descriptor == &cdevice_auth__accept_authorization_request__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__accept_authorization_request__response__pack
+ (const CDeviceAuthAcceptAuthorizationRequestResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__accept_authorization_request__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__accept_authorization_request__response__pack_to_buffer
+ (const CDeviceAuthAcceptAuthorizationRequestResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__accept_authorization_request__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthAcceptAuthorizationRequestResponse *
+ cdevice_auth__accept_authorization_request__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthAcceptAuthorizationRequestResponse *)
+ protobuf_c_message_unpack (&cdevice_auth__accept_authorization_request__response__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__accept_authorization_request__response__free_unpacked
+ (CDeviceAuthAcceptAuthorizationRequestResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__accept_authorization_request__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__authorize_remote_device__request__get_packed_size
+ (const CDeviceAuthAuthorizeRemoteDeviceRequest *message)
+{
+ assert(message->descriptor == &cdevice_auth__authorize_remote_device__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__authorize_remote_device__request__pack
+ (const CDeviceAuthAuthorizeRemoteDeviceRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__authorize_remote_device__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__authorize_remote_device__request__pack_to_buffer
+ (const CDeviceAuthAuthorizeRemoteDeviceRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__authorize_remote_device__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthAuthorizeRemoteDeviceRequest *
+ cdevice_auth__authorize_remote_device__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthAuthorizeRemoteDeviceRequest *)
+ protobuf_c_message_unpack (&cdevice_auth__authorize_remote_device__request__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__authorize_remote_device__request__free_unpacked
+ (CDeviceAuthAuthorizeRemoteDeviceRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__authorize_remote_device__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__authorize_remote_device__response__get_packed_size
+ (const CDeviceAuthAuthorizeRemoteDeviceResponse *message)
+{
+ assert(message->descriptor == &cdevice_auth__authorize_remote_device__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__authorize_remote_device__response__pack
+ (const CDeviceAuthAuthorizeRemoteDeviceResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__authorize_remote_device__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__authorize_remote_device__response__pack_to_buffer
+ (const CDeviceAuthAuthorizeRemoteDeviceResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__authorize_remote_device__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthAuthorizeRemoteDeviceResponse *
+ cdevice_auth__authorize_remote_device__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthAuthorizeRemoteDeviceResponse *)
+ protobuf_c_message_unpack (&cdevice_auth__authorize_remote_device__response__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__authorize_remote_device__response__free_unpacked
+ (CDeviceAuthAuthorizeRemoteDeviceResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__authorize_remote_device__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__deauthorize_remote_device__request__get_packed_size
+ (const CDeviceAuthDeauthorizeRemoteDeviceRequest *message)
+{
+ assert(message->descriptor == &cdevice_auth__deauthorize_remote_device__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__deauthorize_remote_device__request__pack
+ (const CDeviceAuthDeauthorizeRemoteDeviceRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__deauthorize_remote_device__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__deauthorize_remote_device__request__pack_to_buffer
+ (const CDeviceAuthDeauthorizeRemoteDeviceRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__deauthorize_remote_device__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthDeauthorizeRemoteDeviceRequest *
+ cdevice_auth__deauthorize_remote_device__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthDeauthorizeRemoteDeviceRequest *)
+ protobuf_c_message_unpack (&cdevice_auth__deauthorize_remote_device__request__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__deauthorize_remote_device__request__free_unpacked
+ (CDeviceAuthDeauthorizeRemoteDeviceRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__deauthorize_remote_device__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__deauthorize_remote_device__response__get_packed_size
+ (const CDeviceAuthDeauthorizeRemoteDeviceResponse *message)
+{
+ assert(message->descriptor == &cdevice_auth__deauthorize_remote_device__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__deauthorize_remote_device__response__pack
+ (const CDeviceAuthDeauthorizeRemoteDeviceResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__deauthorize_remote_device__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__deauthorize_remote_device__response__pack_to_buffer
+ (const CDeviceAuthDeauthorizeRemoteDeviceResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__deauthorize_remote_device__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthDeauthorizeRemoteDeviceResponse *
+ cdevice_auth__deauthorize_remote_device__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthDeauthorizeRemoteDeviceResponse *)
+ protobuf_c_message_unpack (&cdevice_auth__deauthorize_remote_device__response__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__deauthorize_remote_device__response__free_unpacked
+ (CDeviceAuthDeauthorizeRemoteDeviceResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__deauthorize_remote_device__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__get_used_authorized_devices__request__get_packed_size
+ (const CDeviceAuthGetUsedAuthorizedDevicesRequest *message)
+{
+ assert(message->descriptor == &cdevice_auth__get_used_authorized_devices__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__get_used_authorized_devices__request__pack
+ (const CDeviceAuthGetUsedAuthorizedDevicesRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__get_used_authorized_devices__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__get_used_authorized_devices__request__pack_to_buffer
+ (const CDeviceAuthGetUsedAuthorizedDevicesRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__get_used_authorized_devices__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthGetUsedAuthorizedDevicesRequest *
+ cdevice_auth__get_used_authorized_devices__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthGetUsedAuthorizedDevicesRequest *)
+ protobuf_c_message_unpack (&cdevice_auth__get_used_authorized_devices__request__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__get_used_authorized_devices__request__free_unpacked
+ (CDeviceAuthGetUsedAuthorizedDevicesRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__get_used_authorized_devices__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__get_used_authorized_devices__response__get_packed_size
+ (const CDeviceAuthGetUsedAuthorizedDevicesResponse *message)
+{
+ assert(message->descriptor == &cdevice_auth__get_used_authorized_devices__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__get_used_authorized_devices__response__pack
+ (const CDeviceAuthGetUsedAuthorizedDevicesResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__get_used_authorized_devices__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__get_used_authorized_devices__response__pack_to_buffer
+ (const CDeviceAuthGetUsedAuthorizedDevicesResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__get_used_authorized_devices__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthGetUsedAuthorizedDevicesResponse *
+ cdevice_auth__get_used_authorized_devices__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthGetUsedAuthorizedDevicesResponse *)
+ protobuf_c_message_unpack (&cdevice_auth__get_used_authorized_devices__response__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__get_used_authorized_devices__response__free_unpacked
+ (CDeviceAuthGetUsedAuthorizedDevicesResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__get_used_authorized_devices__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__get_authorized_borrowers__request__get_packed_size
+ (const CDeviceAuthGetAuthorizedBorrowersRequest *message)
+{
+ assert(message->descriptor == &cdevice_auth__get_authorized_borrowers__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__get_authorized_borrowers__request__pack
+ (const CDeviceAuthGetAuthorizedBorrowersRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__get_authorized_borrowers__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__get_authorized_borrowers__request__pack_to_buffer
+ (const CDeviceAuthGetAuthorizedBorrowersRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__get_authorized_borrowers__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthGetAuthorizedBorrowersRequest *
+ cdevice_auth__get_authorized_borrowers__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthGetAuthorizedBorrowersRequest *)
+ protobuf_c_message_unpack (&cdevice_auth__get_authorized_borrowers__request__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__get_authorized_borrowers__request__free_unpacked
+ (CDeviceAuthGetAuthorizedBorrowersRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__get_authorized_borrowers__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__get_authorized_borrowers__response__get_packed_size
+ (const CDeviceAuthGetAuthorizedBorrowersResponse *message)
+{
+ assert(message->descriptor == &cdevice_auth__get_authorized_borrowers__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__get_authorized_borrowers__response__pack
+ (const CDeviceAuthGetAuthorizedBorrowersResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__get_authorized_borrowers__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__get_authorized_borrowers__response__pack_to_buffer
+ (const CDeviceAuthGetAuthorizedBorrowersResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__get_authorized_borrowers__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthGetAuthorizedBorrowersResponse *
+ cdevice_auth__get_authorized_borrowers__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthGetAuthorizedBorrowersResponse *)
+ protobuf_c_message_unpack (&cdevice_auth__get_authorized_borrowers__response__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__get_authorized_borrowers__response__free_unpacked
+ (CDeviceAuthGetAuthorizedBorrowersResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__get_authorized_borrowers__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__add_authorized_borrowers__request__get_packed_size
+ (const CDeviceAuthAddAuthorizedBorrowersRequest *message)
+{
+ assert(message->descriptor == &cdevice_auth__add_authorized_borrowers__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__add_authorized_borrowers__request__pack
+ (const CDeviceAuthAddAuthorizedBorrowersRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__add_authorized_borrowers__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__add_authorized_borrowers__request__pack_to_buffer
+ (const CDeviceAuthAddAuthorizedBorrowersRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__add_authorized_borrowers__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthAddAuthorizedBorrowersRequest *
+ cdevice_auth__add_authorized_borrowers__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthAddAuthorizedBorrowersRequest *)
+ protobuf_c_message_unpack (&cdevice_auth__add_authorized_borrowers__request__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__add_authorized_borrowers__request__free_unpacked
+ (CDeviceAuthAddAuthorizedBorrowersRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__add_authorized_borrowers__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__add_authorized_borrowers__response__get_packed_size
+ (const CDeviceAuthAddAuthorizedBorrowersResponse *message)
+{
+ assert(message->descriptor == &cdevice_auth__add_authorized_borrowers__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__add_authorized_borrowers__response__pack
+ (const CDeviceAuthAddAuthorizedBorrowersResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__add_authorized_borrowers__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__add_authorized_borrowers__response__pack_to_buffer
+ (const CDeviceAuthAddAuthorizedBorrowersResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__add_authorized_borrowers__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthAddAuthorizedBorrowersResponse *
+ cdevice_auth__add_authorized_borrowers__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthAddAuthorizedBorrowersResponse *)
+ protobuf_c_message_unpack (&cdevice_auth__add_authorized_borrowers__response__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__add_authorized_borrowers__response__free_unpacked
+ (CDeviceAuthAddAuthorizedBorrowersResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__add_authorized_borrowers__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__remove_authorized_borrowers__request__get_packed_size
+ (const CDeviceAuthRemoveAuthorizedBorrowersRequest *message)
+{
+ assert(message->descriptor == &cdevice_auth__remove_authorized_borrowers__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__remove_authorized_borrowers__request__pack
+ (const CDeviceAuthRemoveAuthorizedBorrowersRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__remove_authorized_borrowers__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__remove_authorized_borrowers__request__pack_to_buffer
+ (const CDeviceAuthRemoveAuthorizedBorrowersRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__remove_authorized_borrowers__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthRemoveAuthorizedBorrowersRequest *
+ cdevice_auth__remove_authorized_borrowers__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthRemoveAuthorizedBorrowersRequest *)
+ protobuf_c_message_unpack (&cdevice_auth__remove_authorized_borrowers__request__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__remove_authorized_borrowers__request__free_unpacked
+ (CDeviceAuthRemoveAuthorizedBorrowersRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__remove_authorized_borrowers__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__remove_authorized_borrowers__response__get_packed_size
+ (const CDeviceAuthRemoveAuthorizedBorrowersResponse *message)
+{
+ assert(message->descriptor == &cdevice_auth__remove_authorized_borrowers__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__remove_authorized_borrowers__response__pack
+ (const CDeviceAuthRemoveAuthorizedBorrowersResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__remove_authorized_borrowers__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__remove_authorized_borrowers__response__pack_to_buffer
+ (const CDeviceAuthRemoveAuthorizedBorrowersResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__remove_authorized_borrowers__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthRemoveAuthorizedBorrowersResponse *
+ cdevice_auth__remove_authorized_borrowers__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthRemoveAuthorizedBorrowersResponse *)
+ protobuf_c_message_unpack (&cdevice_auth__remove_authorized_borrowers__response__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__remove_authorized_borrowers__response__free_unpacked
+ (CDeviceAuthRemoveAuthorizedBorrowersResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__remove_authorized_borrowers__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__get_authorized_as_borrower__request__get_packed_size
+ (const CDeviceAuthGetAuthorizedAsBorrowerRequest *message)
+{
+ assert(message->descriptor == &cdevice_auth__get_authorized_as_borrower__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__get_authorized_as_borrower__request__pack
+ (const CDeviceAuthGetAuthorizedAsBorrowerRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__get_authorized_as_borrower__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__get_authorized_as_borrower__request__pack_to_buffer
+ (const CDeviceAuthGetAuthorizedAsBorrowerRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__get_authorized_as_borrower__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthGetAuthorizedAsBorrowerRequest *
+ cdevice_auth__get_authorized_as_borrower__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthGetAuthorizedAsBorrowerRequest *)
+ protobuf_c_message_unpack (&cdevice_auth__get_authorized_as_borrower__request__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__get_authorized_as_borrower__request__free_unpacked
+ (CDeviceAuthGetAuthorizedAsBorrowerRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__get_authorized_as_borrower__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__get_authorized_as_borrower__response__get_packed_size
+ (const CDeviceAuthGetAuthorizedAsBorrowerResponse *message)
+{
+ assert(message->descriptor == &cdevice_auth__get_authorized_as_borrower__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__get_authorized_as_borrower__response__pack
+ (const CDeviceAuthGetAuthorizedAsBorrowerResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__get_authorized_as_borrower__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__get_authorized_as_borrower__response__pack_to_buffer
+ (const CDeviceAuthGetAuthorizedAsBorrowerResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__get_authorized_as_borrower__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthGetAuthorizedAsBorrowerResponse *
+ cdevice_auth__get_authorized_as_borrower__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthGetAuthorizedAsBorrowerResponse *)
+ protobuf_c_message_unpack (&cdevice_auth__get_authorized_as_borrower__response__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__get_authorized_as_borrower__response__free_unpacked
+ (CDeviceAuthGetAuthorizedAsBorrowerResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__get_authorized_as_borrower__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__get_excluded_games_in_library__request__get_packed_size
+ (const CDeviceAuthGetExcludedGamesInLibraryRequest *message)
+{
+ assert(message->descriptor == &cdevice_auth__get_excluded_games_in_library__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__get_excluded_games_in_library__request__pack
+ (const CDeviceAuthGetExcludedGamesInLibraryRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__get_excluded_games_in_library__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__get_excluded_games_in_library__request__pack_to_buffer
+ (const CDeviceAuthGetExcludedGamesInLibraryRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__get_excluded_games_in_library__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthGetExcludedGamesInLibraryRequest *
+ cdevice_auth__get_excluded_games_in_library__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthGetExcludedGamesInLibraryRequest *)
+ protobuf_c_message_unpack (&cdevice_auth__get_excluded_games_in_library__request__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__get_excluded_games_in_library__request__free_unpacked
+ (CDeviceAuthGetExcludedGamesInLibraryRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__get_excluded_games_in_library__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__get_excluded_games_in_library__response__get_packed_size
+ (const CDeviceAuthGetExcludedGamesInLibraryResponse *message)
+{
+ assert(message->descriptor == &cdevice_auth__get_excluded_games_in_library__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__get_excluded_games_in_library__response__pack
+ (const CDeviceAuthGetExcludedGamesInLibraryResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__get_excluded_games_in_library__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__get_excluded_games_in_library__response__pack_to_buffer
+ (const CDeviceAuthGetExcludedGamesInLibraryResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__get_excluded_games_in_library__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthGetExcludedGamesInLibraryResponse *
+ cdevice_auth__get_excluded_games_in_library__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthGetExcludedGamesInLibraryResponse *)
+ protobuf_c_message_unpack (&cdevice_auth__get_excluded_games_in_library__response__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__get_excluded_games_in_library__response__free_unpacked
+ (CDeviceAuthGetExcludedGamesInLibraryResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__get_excluded_games_in_library__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__get_borrower_play_history__request__get_packed_size
+ (const CDeviceAuthGetBorrowerPlayHistoryRequest *message)
+{
+ assert(message->descriptor == &cdevice_auth__get_borrower_play_history__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__get_borrower_play_history__request__pack
+ (const CDeviceAuthGetBorrowerPlayHistoryRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__get_borrower_play_history__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__get_borrower_play_history__request__pack_to_buffer
+ (const CDeviceAuthGetBorrowerPlayHistoryRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__get_borrower_play_history__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthGetBorrowerPlayHistoryRequest *
+ cdevice_auth__get_borrower_play_history__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthGetBorrowerPlayHistoryRequest *)
+ protobuf_c_message_unpack (&cdevice_auth__get_borrower_play_history__request__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__get_borrower_play_history__request__free_unpacked
+ (CDeviceAuthGetBorrowerPlayHistoryRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__get_borrower_play_history__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cdevice_auth__get_borrower_play_history__response__get_packed_size
+ (const CDeviceAuthGetBorrowerPlayHistoryResponse *message)
+{
+ assert(message->descriptor == &cdevice_auth__get_borrower_play_history__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cdevice_auth__get_borrower_play_history__response__pack
+ (const CDeviceAuthGetBorrowerPlayHistoryResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cdevice_auth__get_borrower_play_history__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cdevice_auth__get_borrower_play_history__response__pack_to_buffer
+ (const CDeviceAuthGetBorrowerPlayHistoryResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cdevice_auth__get_borrower_play_history__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CDeviceAuthGetBorrowerPlayHistoryResponse *
+ cdevice_auth__get_borrower_play_history__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CDeviceAuthGetBorrowerPlayHistoryResponse *)
+ protobuf_c_message_unpack (&cdevice_auth__get_borrower_play_history__response__descriptor,
+ allocator, len, data);
+}
+void cdevice_auth__get_borrower_play_history__response__free_unpacked
+ (CDeviceAuthGetBorrowerPlayHistoryResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cdevice_auth__get_borrower_play_history__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+static const ProtobufCFieldDescriptor cdevice_auth__get_own_authorized_devices__request__field_descriptors[2] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesRequest, has_steamid),
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "include_canceled",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesRequest, has_include_canceled),
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesRequest, include_canceled),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_own_authorized_devices__request__field_indices_by_name[] = {
+ 1, /* field[1] = include_canceled */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cdevice_auth__get_own_authorized_devices__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_own_authorized_devices__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetOwnAuthorizedDevices_Request",
+ "CDeviceAuthGetOwnAuthorizedDevicesRequest",
+ "CDeviceAuthGetOwnAuthorizedDevicesRequest",
+ "",
+ sizeof(CDeviceAuthGetOwnAuthorizedDevicesRequest),
+ 2,
+ cdevice_auth__get_own_authorized_devices__request__field_descriptors,
+ cdevice_auth__get_own_authorized_devices__request__field_indices_by_name,
+ 1, cdevice_auth__get_own_authorized_devices__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_own_authorized_devices__response__device__field_descriptors[8] =
+{
+ {
+ "auth_device_token",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, has_auth_device_token),
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, auth_device_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "device_name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, device_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_pending",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, has_is_pending),
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, is_pending),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_canceled",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, has_is_canceled),
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, is_canceled),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_time_used",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, has_last_time_used),
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, last_time_used),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_borrower_id",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, has_last_borrower_id),
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, last_borrower_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_app_played",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, has_last_app_played),
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, last_app_played),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_limited",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, has_is_limited),
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device, is_limited),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_own_authorized_devices__response__device__field_indices_by_name[] = {
+ 0, /* field[0] = auth_device_token */
+ 1, /* field[1] = device_name */
+ 3, /* field[3] = is_canceled */
+ 7, /* field[7] = is_limited */
+ 2, /* field[2] = is_pending */
+ 6, /* field[6] = last_app_played */
+ 5, /* field[5] = last_borrower_id */
+ 4, /* field[4] = last_time_used */
+};
+static const ProtobufCIntRange cdevice_auth__get_own_authorized_devices__response__device__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_own_authorized_devices__response__device__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetOwnAuthorizedDevices_Response.Device",
+ "Device",
+ "CDeviceAuthGetOwnAuthorizedDevicesResponse__Device",
+ "",
+ sizeof(CDeviceAuthGetOwnAuthorizedDevicesResponse__Device),
+ 8,
+ cdevice_auth__get_own_authorized_devices__response__device__field_descriptors,
+ cdevice_auth__get_own_authorized_devices__response__device__field_indices_by_name,
+ 1, cdevice_auth__get_own_authorized_devices__response__device__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_own_authorized_devices__response__field_descriptors[1] =
+{
+ {
+ "devices",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse, n_devices),
+ offsetof(CDeviceAuthGetOwnAuthorizedDevicesResponse, devices),
+ &cdevice_auth__get_own_authorized_devices__response__device__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_own_authorized_devices__response__field_indices_by_name[] = {
+ 0, /* field[0] = devices */
+};
+static const ProtobufCIntRange cdevice_auth__get_own_authorized_devices__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_own_authorized_devices__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetOwnAuthorizedDevices_Response",
+ "CDeviceAuthGetOwnAuthorizedDevicesResponse",
+ "CDeviceAuthGetOwnAuthorizedDevicesResponse",
+ "",
+ sizeof(CDeviceAuthGetOwnAuthorizedDevicesResponse),
+ 1,
+ cdevice_auth__get_own_authorized_devices__response__field_descriptors,
+ cdevice_auth__get_own_authorized_devices__response__field_indices_by_name,
+ 1, cdevice_auth__get_own_authorized_devices__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__accept_authorization_request__request__field_descriptors[4] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthAcceptAuthorizationRequestRequest, has_steamid),
+ offsetof(CDeviceAuthAcceptAuthorizationRequestRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "auth_device_token",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthAcceptAuthorizationRequestRequest, has_auth_device_token),
+ offsetof(CDeviceAuthAcceptAuthorizationRequestRequest, auth_device_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "auth_code",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthAcceptAuthorizationRequestRequest, has_auth_code),
+ offsetof(CDeviceAuthAcceptAuthorizationRequestRequest, auth_code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "from_steamid",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthAcceptAuthorizationRequestRequest, has_from_steamid),
+ offsetof(CDeviceAuthAcceptAuthorizationRequestRequest, from_steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__accept_authorization_request__request__field_indices_by_name[] = {
+ 2, /* field[2] = auth_code */
+ 1, /* field[1] = auth_device_token */
+ 3, /* field[3] = from_steamid */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cdevice_auth__accept_authorization_request__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__accept_authorization_request__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_AcceptAuthorizationRequest_Request",
+ "CDeviceAuthAcceptAuthorizationRequestRequest",
+ "CDeviceAuthAcceptAuthorizationRequestRequest",
+ "",
+ sizeof(CDeviceAuthAcceptAuthorizationRequestRequest),
+ 4,
+ cdevice_auth__accept_authorization_request__request__field_descriptors,
+ cdevice_auth__accept_authorization_request__request__field_indices_by_name,
+ 1, cdevice_auth__accept_authorization_request__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cdevice_auth__accept_authorization_request__response__field_descriptors NULL
+#define cdevice_auth__accept_authorization_request__response__field_indices_by_name NULL
+#define cdevice_auth__accept_authorization_request__response__number_ranges NULL
+const ProtobufCMessageDescriptor cdevice_auth__accept_authorization_request__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_AcceptAuthorizationRequest_Response",
+ "CDeviceAuthAcceptAuthorizationRequestResponse",
+ "CDeviceAuthAcceptAuthorizationRequestResponse",
+ "",
+ sizeof(CDeviceAuthAcceptAuthorizationRequestResponse),
+ 0,
+ cdevice_auth__accept_authorization_request__response__field_descriptors,
+ cdevice_auth__accept_authorization_request__response__field_indices_by_name,
+ 0, cdevice_auth__accept_authorization_request__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__authorize_remote_device__request__field_descriptors[2] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthAuthorizeRemoteDeviceRequest, has_steamid),
+ offsetof(CDeviceAuthAuthorizeRemoteDeviceRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "auth_device_token",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthAuthorizeRemoteDeviceRequest, has_auth_device_token),
+ offsetof(CDeviceAuthAuthorizeRemoteDeviceRequest, auth_device_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__authorize_remote_device__request__field_indices_by_name[] = {
+ 1, /* field[1] = auth_device_token */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cdevice_auth__authorize_remote_device__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__authorize_remote_device__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_AuthorizeRemoteDevice_Request",
+ "CDeviceAuthAuthorizeRemoteDeviceRequest",
+ "CDeviceAuthAuthorizeRemoteDeviceRequest",
+ "",
+ sizeof(CDeviceAuthAuthorizeRemoteDeviceRequest),
+ 2,
+ cdevice_auth__authorize_remote_device__request__field_descriptors,
+ cdevice_auth__authorize_remote_device__request__field_indices_by_name,
+ 1, cdevice_auth__authorize_remote_device__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cdevice_auth__authorize_remote_device__response__field_descriptors NULL
+#define cdevice_auth__authorize_remote_device__response__field_indices_by_name NULL
+#define cdevice_auth__authorize_remote_device__response__number_ranges NULL
+const ProtobufCMessageDescriptor cdevice_auth__authorize_remote_device__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_AuthorizeRemoteDevice_Response",
+ "CDeviceAuthAuthorizeRemoteDeviceResponse",
+ "CDeviceAuthAuthorizeRemoteDeviceResponse",
+ "",
+ sizeof(CDeviceAuthAuthorizeRemoteDeviceResponse),
+ 0,
+ cdevice_auth__authorize_remote_device__response__field_descriptors,
+ cdevice_auth__authorize_remote_device__response__field_indices_by_name,
+ 0, cdevice_auth__authorize_remote_device__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__deauthorize_remote_device__request__field_descriptors[2] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthDeauthorizeRemoteDeviceRequest, has_steamid),
+ offsetof(CDeviceAuthDeauthorizeRemoteDeviceRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "auth_device_token",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthDeauthorizeRemoteDeviceRequest, has_auth_device_token),
+ offsetof(CDeviceAuthDeauthorizeRemoteDeviceRequest, auth_device_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__deauthorize_remote_device__request__field_indices_by_name[] = {
+ 1, /* field[1] = auth_device_token */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cdevice_auth__deauthorize_remote_device__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__deauthorize_remote_device__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_DeauthorizeRemoteDevice_Request",
+ "CDeviceAuthDeauthorizeRemoteDeviceRequest",
+ "CDeviceAuthDeauthorizeRemoteDeviceRequest",
+ "",
+ sizeof(CDeviceAuthDeauthorizeRemoteDeviceRequest),
+ 2,
+ cdevice_auth__deauthorize_remote_device__request__field_descriptors,
+ cdevice_auth__deauthorize_remote_device__request__field_indices_by_name,
+ 1, cdevice_auth__deauthorize_remote_device__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cdevice_auth__deauthorize_remote_device__response__field_descriptors NULL
+#define cdevice_auth__deauthorize_remote_device__response__field_indices_by_name NULL
+#define cdevice_auth__deauthorize_remote_device__response__number_ranges NULL
+const ProtobufCMessageDescriptor cdevice_auth__deauthorize_remote_device__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_DeauthorizeRemoteDevice_Response",
+ "CDeviceAuthDeauthorizeRemoteDeviceResponse",
+ "CDeviceAuthDeauthorizeRemoteDeviceResponse",
+ "",
+ sizeof(CDeviceAuthDeauthorizeRemoteDeviceResponse),
+ 0,
+ cdevice_auth__deauthorize_remote_device__response__field_descriptors,
+ cdevice_auth__deauthorize_remote_device__response__field_indices_by_name,
+ 0, cdevice_auth__deauthorize_remote_device__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_used_authorized_devices__request__field_descriptors[1] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthGetUsedAuthorizedDevicesRequest, has_steamid),
+ offsetof(CDeviceAuthGetUsedAuthorizedDevicesRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_used_authorized_devices__request__field_indices_by_name[] = {
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cdevice_auth__get_used_authorized_devices__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_used_authorized_devices__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetUsedAuthorizedDevices_Request",
+ "CDeviceAuthGetUsedAuthorizedDevicesRequest",
+ "CDeviceAuthGetUsedAuthorizedDevicesRequest",
+ "",
+ sizeof(CDeviceAuthGetUsedAuthorizedDevicesRequest),
+ 1,
+ cdevice_auth__get_used_authorized_devices__request__field_descriptors,
+ cdevice_auth__get_used_authorized_devices__request__field_indices_by_name,
+ 1, cdevice_auth__get_used_authorized_devices__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_used_authorized_devices__response__device__field_descriptors[5] =
+{
+ {
+ "auth_device_token",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthGetUsedAuthorizedDevicesResponse__Device, has_auth_device_token),
+ offsetof(CDeviceAuthGetUsedAuthorizedDevicesResponse__Device, auth_device_token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "device_name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CDeviceAuthGetUsedAuthorizedDevicesResponse__Device, device_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "owner_steamid",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthGetUsedAuthorizedDevicesResponse__Device, has_owner_steamid),
+ offsetof(CDeviceAuthGetUsedAuthorizedDevicesResponse__Device, owner_steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_time_used",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CDeviceAuthGetUsedAuthorizedDevicesResponse__Device, has_last_time_used),
+ offsetof(CDeviceAuthGetUsedAuthorizedDevicesResponse__Device, last_time_used),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_app_played",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CDeviceAuthGetUsedAuthorizedDevicesResponse__Device, has_last_app_played),
+ offsetof(CDeviceAuthGetUsedAuthorizedDevicesResponse__Device, last_app_played),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_used_authorized_devices__response__device__field_indices_by_name[] = {
+ 0, /* field[0] = auth_device_token */
+ 1, /* field[1] = device_name */
+ 4, /* field[4] = last_app_played */
+ 3, /* field[3] = last_time_used */
+ 2, /* field[2] = owner_steamid */
+};
+static const ProtobufCIntRange cdevice_auth__get_used_authorized_devices__response__device__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_used_authorized_devices__response__device__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetUsedAuthorizedDevices_Response.Device",
+ "Device",
+ "CDeviceAuthGetUsedAuthorizedDevicesResponse__Device",
+ "",
+ sizeof(CDeviceAuthGetUsedAuthorizedDevicesResponse__Device),
+ 5,
+ cdevice_auth__get_used_authorized_devices__response__device__field_descriptors,
+ cdevice_auth__get_used_authorized_devices__response__device__field_indices_by_name,
+ 1, cdevice_auth__get_used_authorized_devices__response__device__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_used_authorized_devices__response__field_descriptors[1] =
+{
+ {
+ "devices",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CDeviceAuthGetUsedAuthorizedDevicesResponse, n_devices),
+ offsetof(CDeviceAuthGetUsedAuthorizedDevicesResponse, devices),
+ &cdevice_auth__get_used_authorized_devices__response__device__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_used_authorized_devices__response__field_indices_by_name[] = {
+ 0, /* field[0] = devices */
+};
+static const ProtobufCIntRange cdevice_auth__get_used_authorized_devices__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_used_authorized_devices__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetUsedAuthorizedDevices_Response",
+ "CDeviceAuthGetUsedAuthorizedDevicesResponse",
+ "CDeviceAuthGetUsedAuthorizedDevicesResponse",
+ "",
+ sizeof(CDeviceAuthGetUsedAuthorizedDevicesResponse),
+ 1,
+ cdevice_auth__get_used_authorized_devices__response__field_descriptors,
+ cdevice_auth__get_used_authorized_devices__response__field_indices_by_name,
+ 1, cdevice_auth__get_used_authorized_devices__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_authorized_borrowers__request__field_descriptors[3] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthGetAuthorizedBorrowersRequest, has_steamid),
+ offsetof(CDeviceAuthGetAuthorizedBorrowersRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "include_canceled",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetAuthorizedBorrowersRequest, has_include_canceled),
+ offsetof(CDeviceAuthGetAuthorizedBorrowersRequest, include_canceled),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "include_pending",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetAuthorizedBorrowersRequest, has_include_pending),
+ offsetof(CDeviceAuthGetAuthorizedBorrowersRequest, include_pending),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_authorized_borrowers__request__field_indices_by_name[] = {
+ 1, /* field[1] = include_canceled */
+ 2, /* field[2] = include_pending */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cdevice_auth__get_authorized_borrowers__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_authorized_borrowers__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetAuthorizedBorrowers_Request",
+ "CDeviceAuthGetAuthorizedBorrowersRequest",
+ "CDeviceAuthGetAuthorizedBorrowersRequest",
+ "",
+ sizeof(CDeviceAuthGetAuthorizedBorrowersRequest),
+ 3,
+ cdevice_auth__get_authorized_borrowers__request__field_descriptors,
+ cdevice_auth__get_authorized_borrowers__request__field_indices_by_name,
+ 1, cdevice_auth__get_authorized_borrowers__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_authorized_borrowers__response__borrower__field_descriptors[4] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthGetAuthorizedBorrowersResponse__Borrower, has_steamid),
+ offsetof(CDeviceAuthGetAuthorizedBorrowersResponse__Borrower, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_pending",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetAuthorizedBorrowersResponse__Borrower, has_is_pending),
+ offsetof(CDeviceAuthGetAuthorizedBorrowersResponse__Borrower, is_pending),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_canceled",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetAuthorizedBorrowersResponse__Borrower, has_is_canceled),
+ offsetof(CDeviceAuthGetAuthorizedBorrowersResponse__Borrower, is_canceled),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_created",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CDeviceAuthGetAuthorizedBorrowersResponse__Borrower, has_time_created),
+ offsetof(CDeviceAuthGetAuthorizedBorrowersResponse__Borrower, time_created),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_authorized_borrowers__response__borrower__field_indices_by_name[] = {
+ 2, /* field[2] = is_canceled */
+ 1, /* field[1] = is_pending */
+ 0, /* field[0] = steamid */
+ 3, /* field[3] = time_created */
+};
+static const ProtobufCIntRange cdevice_auth__get_authorized_borrowers__response__borrower__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_authorized_borrowers__response__borrower__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetAuthorizedBorrowers_Response.Borrower",
+ "Borrower",
+ "CDeviceAuthGetAuthorizedBorrowersResponse__Borrower",
+ "",
+ sizeof(CDeviceAuthGetAuthorizedBorrowersResponse__Borrower),
+ 4,
+ cdevice_auth__get_authorized_borrowers__response__borrower__field_descriptors,
+ cdevice_auth__get_authorized_borrowers__response__borrower__field_indices_by_name,
+ 1, cdevice_auth__get_authorized_borrowers__response__borrower__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_authorized_borrowers__response__field_descriptors[1] =
+{
+ {
+ "borrowers",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CDeviceAuthGetAuthorizedBorrowersResponse, n_borrowers),
+ offsetof(CDeviceAuthGetAuthorizedBorrowersResponse, borrowers),
+ &cdevice_auth__get_authorized_borrowers__response__borrower__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_authorized_borrowers__response__field_indices_by_name[] = {
+ 0, /* field[0] = borrowers */
+};
+static const ProtobufCIntRange cdevice_auth__get_authorized_borrowers__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_authorized_borrowers__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetAuthorizedBorrowers_Response",
+ "CDeviceAuthGetAuthorizedBorrowersResponse",
+ "CDeviceAuthGetAuthorizedBorrowersResponse",
+ "",
+ sizeof(CDeviceAuthGetAuthorizedBorrowersResponse),
+ 1,
+ cdevice_auth__get_authorized_borrowers__response__field_descriptors,
+ cdevice_auth__get_authorized_borrowers__response__field_indices_by_name,
+ 1, cdevice_auth__get_authorized_borrowers__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__add_authorized_borrowers__request__field_descriptors[2] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthAddAuthorizedBorrowersRequest, has_steamid),
+ offsetof(CDeviceAuthAddAuthorizedBorrowersRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid_borrower",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthAddAuthorizedBorrowersRequest, n_steamid_borrower),
+ offsetof(CDeviceAuthAddAuthorizedBorrowersRequest, steamid_borrower),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__add_authorized_borrowers__request__field_indices_by_name[] = {
+ 0, /* field[0] = steamid */
+ 1, /* field[1] = steamid_borrower */
+};
+static const ProtobufCIntRange cdevice_auth__add_authorized_borrowers__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__add_authorized_borrowers__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_AddAuthorizedBorrowers_Request",
+ "CDeviceAuthAddAuthorizedBorrowersRequest",
+ "CDeviceAuthAddAuthorizedBorrowersRequest",
+ "",
+ sizeof(CDeviceAuthAddAuthorizedBorrowersRequest),
+ 2,
+ cdevice_auth__add_authorized_borrowers__request__field_descriptors,
+ cdevice_auth__add_authorized_borrowers__request__field_indices_by_name,
+ 1, cdevice_auth__add_authorized_borrowers__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__add_authorized_borrowers__response__field_descriptors[1] =
+{
+ {
+ "seconds_to_wait",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CDeviceAuthAddAuthorizedBorrowersResponse, has_seconds_to_wait),
+ offsetof(CDeviceAuthAddAuthorizedBorrowersResponse, seconds_to_wait),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__add_authorized_borrowers__response__field_indices_by_name[] = {
+ 0, /* field[0] = seconds_to_wait */
+};
+static const ProtobufCIntRange cdevice_auth__add_authorized_borrowers__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__add_authorized_borrowers__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_AddAuthorizedBorrowers_Response",
+ "CDeviceAuthAddAuthorizedBorrowersResponse",
+ "CDeviceAuthAddAuthorizedBorrowersResponse",
+ "",
+ sizeof(CDeviceAuthAddAuthorizedBorrowersResponse),
+ 1,
+ cdevice_auth__add_authorized_borrowers__response__field_descriptors,
+ cdevice_auth__add_authorized_borrowers__response__field_indices_by_name,
+ 1, cdevice_auth__add_authorized_borrowers__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__remove_authorized_borrowers__request__field_descriptors[2] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthRemoveAuthorizedBorrowersRequest, has_steamid),
+ offsetof(CDeviceAuthRemoveAuthorizedBorrowersRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid_borrower",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthRemoveAuthorizedBorrowersRequest, n_steamid_borrower),
+ offsetof(CDeviceAuthRemoveAuthorizedBorrowersRequest, steamid_borrower),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__remove_authorized_borrowers__request__field_indices_by_name[] = {
+ 0, /* field[0] = steamid */
+ 1, /* field[1] = steamid_borrower */
+};
+static const ProtobufCIntRange cdevice_auth__remove_authorized_borrowers__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__remove_authorized_borrowers__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_RemoveAuthorizedBorrowers_Request",
+ "CDeviceAuthRemoveAuthorizedBorrowersRequest",
+ "CDeviceAuthRemoveAuthorizedBorrowersRequest",
+ "",
+ sizeof(CDeviceAuthRemoveAuthorizedBorrowersRequest),
+ 2,
+ cdevice_auth__remove_authorized_borrowers__request__field_descriptors,
+ cdevice_auth__remove_authorized_borrowers__request__field_indices_by_name,
+ 1, cdevice_auth__remove_authorized_borrowers__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+#define cdevice_auth__remove_authorized_borrowers__response__field_descriptors NULL
+#define cdevice_auth__remove_authorized_borrowers__response__field_indices_by_name NULL
+#define cdevice_auth__remove_authorized_borrowers__response__number_ranges NULL
+const ProtobufCMessageDescriptor cdevice_auth__remove_authorized_borrowers__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_RemoveAuthorizedBorrowers_Response",
+ "CDeviceAuthRemoveAuthorizedBorrowersResponse",
+ "CDeviceAuthRemoveAuthorizedBorrowersResponse",
+ "",
+ sizeof(CDeviceAuthRemoveAuthorizedBorrowersResponse),
+ 0,
+ cdevice_auth__remove_authorized_borrowers__response__field_descriptors,
+ cdevice_auth__remove_authorized_borrowers__response__field_indices_by_name,
+ 0, cdevice_auth__remove_authorized_borrowers__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_authorized_as_borrower__request__field_descriptors[3] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerRequest, has_steamid),
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "include_canceled",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerRequest, has_include_canceled),
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerRequest, include_canceled),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "include_pending",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerRequest, has_include_pending),
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerRequest, include_pending),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_authorized_as_borrower__request__field_indices_by_name[] = {
+ 1, /* field[1] = include_canceled */
+ 2, /* field[2] = include_pending */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cdevice_auth__get_authorized_as_borrower__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_authorized_as_borrower__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetAuthorizedAsBorrower_Request",
+ "CDeviceAuthGetAuthorizedAsBorrowerRequest",
+ "CDeviceAuthGetAuthorizedAsBorrowerRequest",
+ "",
+ sizeof(CDeviceAuthGetAuthorizedAsBorrowerRequest),
+ 3,
+ cdevice_auth__get_authorized_as_borrower__request__field_descriptors,
+ cdevice_auth__get_authorized_as_borrower__request__field_indices_by_name,
+ 1, cdevice_auth__get_authorized_as_borrower__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_authorized_as_borrower__response__lender__field_descriptors[7] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender, has_steamid),
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_created",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender, has_time_created),
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender, time_created),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_pending",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender, has_is_pending),
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender, is_pending),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_canceled",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender, has_is_canceled),
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender, is_canceled),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_used",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender, has_is_used),
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender, is_used),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_removed",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender, has_time_removed),
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender, time_removed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_first",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender, has_time_first),
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender, time_first),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_authorized_as_borrower__response__lender__field_indices_by_name[] = {
+ 3, /* field[3] = is_canceled */
+ 2, /* field[2] = is_pending */
+ 4, /* field[4] = is_used */
+ 0, /* field[0] = steamid */
+ 1, /* field[1] = time_created */
+ 6, /* field[6] = time_first */
+ 5, /* field[5] = time_removed */
+};
+static const ProtobufCIntRange cdevice_auth__get_authorized_as_borrower__response__lender__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_authorized_as_borrower__response__lender__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetAuthorizedAsBorrower_Response.Lender",
+ "Lender",
+ "CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender",
+ "",
+ sizeof(CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender),
+ 7,
+ cdevice_auth__get_authorized_as_borrower__response__lender__field_descriptors,
+ cdevice_auth__get_authorized_as_borrower__response__lender__field_indices_by_name,
+ 1, cdevice_auth__get_authorized_as_borrower__response__lender__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_authorized_as_borrower__response__field_descriptors[1] =
+{
+ {
+ "lenders",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse, n_lenders),
+ offsetof(CDeviceAuthGetAuthorizedAsBorrowerResponse, lenders),
+ &cdevice_auth__get_authorized_as_borrower__response__lender__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_authorized_as_borrower__response__field_indices_by_name[] = {
+ 0, /* field[0] = lenders */
+};
+static const ProtobufCIntRange cdevice_auth__get_authorized_as_borrower__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_authorized_as_borrower__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetAuthorizedAsBorrower_Response",
+ "CDeviceAuthGetAuthorizedAsBorrowerResponse",
+ "CDeviceAuthGetAuthorizedAsBorrowerResponse",
+ "",
+ sizeof(CDeviceAuthGetAuthorizedAsBorrowerResponse),
+ 1,
+ cdevice_auth__get_authorized_as_borrower__response__field_descriptors,
+ cdevice_auth__get_authorized_as_borrower__response__field_indices_by_name,
+ 1, cdevice_auth__get_authorized_as_borrower__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_excluded_games_in_library__request__field_descriptors[1] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthGetExcludedGamesInLibraryRequest, has_steamid),
+ offsetof(CDeviceAuthGetExcludedGamesInLibraryRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_excluded_games_in_library__request__field_indices_by_name[] = {
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cdevice_auth__get_excluded_games_in_library__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_excluded_games_in_library__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetExcludedGamesInLibrary_Request",
+ "CDeviceAuthGetExcludedGamesInLibraryRequest",
+ "CDeviceAuthGetExcludedGamesInLibraryRequest",
+ "",
+ sizeof(CDeviceAuthGetExcludedGamesInLibraryRequest),
+ 1,
+ cdevice_auth__get_excluded_games_in_library__request__field_descriptors,
+ cdevice_auth__get_excluded_games_in_library__request__field_indices_by_name,
+ 1, cdevice_auth__get_excluded_games_in_library__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_excluded_games_in_library__response__excluded_game__field_descriptors[4] =
+{
+ {
+ "appid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame, has_appid),
+ offsetof(CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_name",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame, game_name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "vac_banned",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame, has_vac_banned),
+ offsetof(CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame, vac_banned),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "package_excluded",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame, has_package_excluded),
+ offsetof(CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame, package_excluded),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_excluded_games_in_library__response__excluded_game__field_indices_by_name[] = {
+ 0, /* field[0] = appid */
+ 1, /* field[1] = game_name */
+ 3, /* field[3] = package_excluded */
+ 2, /* field[2] = vac_banned */
+};
+static const ProtobufCIntRange cdevice_auth__get_excluded_games_in_library__response__excluded_game__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_excluded_games_in_library__response__excluded_game__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetExcludedGamesInLibrary_Response.ExcludedGame",
+ "ExcludedGame",
+ "CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame",
+ "",
+ sizeof(CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame),
+ 4,
+ cdevice_auth__get_excluded_games_in_library__response__excluded_game__field_descriptors,
+ cdevice_auth__get_excluded_games_in_library__response__excluded_game__field_indices_by_name,
+ 1, cdevice_auth__get_excluded_games_in_library__response__excluded_game__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_excluded_games_in_library__response__field_descriptors[1] =
+{
+ {
+ "excluded_games",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CDeviceAuthGetExcludedGamesInLibraryResponse, n_excluded_games),
+ offsetof(CDeviceAuthGetExcludedGamesInLibraryResponse, excluded_games),
+ &cdevice_auth__get_excluded_games_in_library__response__excluded_game__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_excluded_games_in_library__response__field_indices_by_name[] = {
+ 0, /* field[0] = excluded_games */
+};
+static const ProtobufCIntRange cdevice_auth__get_excluded_games_in_library__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_excluded_games_in_library__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetExcludedGamesInLibrary_Response",
+ "CDeviceAuthGetExcludedGamesInLibraryResponse",
+ "CDeviceAuthGetExcludedGamesInLibraryResponse",
+ "",
+ sizeof(CDeviceAuthGetExcludedGamesInLibraryResponse),
+ 1,
+ cdevice_auth__get_excluded_games_in_library__response__field_descriptors,
+ cdevice_auth__get_excluded_games_in_library__response__field_indices_by_name,
+ 1, cdevice_auth__get_excluded_games_in_library__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_borrower_play_history__request__field_descriptors[2] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryRequest, has_steamid),
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "appid",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryRequest, has_appid),
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryRequest, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_borrower_play_history__request__field_indices_by_name[] = {
+ 1, /* field[1] = appid */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cdevice_auth__get_borrower_play_history__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_borrower_play_history__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetBorrowerPlayHistory_Request",
+ "CDeviceAuthGetBorrowerPlayHistoryRequest",
+ "CDeviceAuthGetBorrowerPlayHistoryRequest",
+ "",
+ sizeof(CDeviceAuthGetBorrowerPlayHistoryRequest),
+ 2,
+ cdevice_auth__get_borrower_play_history__request__field_descriptors,
+ cdevice_auth__get_borrower_play_history__request__field_indices_by_name,
+ 1, cdevice_auth__get_borrower_play_history__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_borrower_play_history__response__game_history__field_descriptors[3] =
+{
+ {
+ "appid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryResponse__GameHistory, has_appid),
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryResponse__GameHistory, appid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_last",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryResponse__GameHistory, has_time_last),
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryResponse__GameHistory, time_last),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_total",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryResponse__GameHistory, has_time_total),
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryResponse__GameHistory, time_total),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_borrower_play_history__response__game_history__field_indices_by_name[] = {
+ 0, /* field[0] = appid */
+ 1, /* field[1] = time_last */
+ 2, /* field[2] = time_total */
+};
+static const ProtobufCIntRange cdevice_auth__get_borrower_play_history__response__game_history__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_borrower_play_history__response__game_history__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetBorrowerPlayHistory_Response.GameHistory",
+ "GameHistory",
+ "CDeviceAuthGetBorrowerPlayHistoryResponse__GameHistory",
+ "",
+ sizeof(CDeviceAuthGetBorrowerPlayHistoryResponse__GameHistory),
+ 3,
+ cdevice_auth__get_borrower_play_history__response__game_history__field_descriptors,
+ cdevice_auth__get_borrower_play_history__response__game_history__field_indices_by_name,
+ 1, cdevice_auth__get_borrower_play_history__response__game_history__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_borrower_play_history__response__lender_history__field_descriptors[2] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryResponse__LenderHistory, has_steamid),
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryResponse__LenderHistory, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "game_history",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryResponse__LenderHistory, n_game_history),
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryResponse__LenderHistory, game_history),
+ &cdevice_auth__get_borrower_play_history__response__game_history__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_borrower_play_history__response__lender_history__field_indices_by_name[] = {
+ 1, /* field[1] = game_history */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cdevice_auth__get_borrower_play_history__response__lender_history__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_borrower_play_history__response__lender_history__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetBorrowerPlayHistory_Response.LenderHistory",
+ "LenderHistory",
+ "CDeviceAuthGetBorrowerPlayHistoryResponse__LenderHistory",
+ "",
+ sizeof(CDeviceAuthGetBorrowerPlayHistoryResponse__LenderHistory),
+ 2,
+ cdevice_auth__get_borrower_play_history__response__lender_history__field_descriptors,
+ cdevice_auth__get_borrower_play_history__response__lender_history__field_indices_by_name,
+ 1, cdevice_auth__get_borrower_play_history__response__lender_history__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cdevice_auth__get_borrower_play_history__response__field_descriptors[1] =
+{
+ {
+ "lender_history",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryResponse, n_lender_history),
+ offsetof(CDeviceAuthGetBorrowerPlayHistoryResponse, lender_history),
+ &cdevice_auth__get_borrower_play_history__response__lender_history__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cdevice_auth__get_borrower_play_history__response__field_indices_by_name[] = {
+ 0, /* field[0] = lender_history */
+};
+static const ProtobufCIntRange cdevice_auth__get_borrower_play_history__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cdevice_auth__get_borrower_play_history__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CDeviceAuth_GetBorrowerPlayHistory_Response",
+ "CDeviceAuthGetBorrowerPlayHistoryResponse",
+ "CDeviceAuthGetBorrowerPlayHistoryResponse",
+ "",
+ sizeof(CDeviceAuthGetBorrowerPlayHistoryResponse),
+ 1,
+ cdevice_auth__get_borrower_play_history__response__field_descriptors,
+ cdevice_auth__get_borrower_play_history__response__field_indices_by_name,
+ 1, cdevice_auth__get_borrower_play_history__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCMethodDescriptor device_auth__method_descriptors[11] =
+{
+ { "GetOwnAuthorizedDevices", &cdevice_auth__get_own_authorized_devices__request__descriptor, &cdevice_auth__get_own_authorized_devices__response__descriptor },
+ { "AcceptAuthorizationRequest", &cdevice_auth__accept_authorization_request__request__descriptor, &cdevice_auth__accept_authorization_request__response__descriptor },
+ { "AuthorizeRemoteDevice", &cdevice_auth__authorize_remote_device__request__descriptor, &cdevice_auth__authorize_remote_device__response__descriptor },
+ { "DeauthorizeRemoteDevice", &cdevice_auth__deauthorize_remote_device__request__descriptor, &cdevice_auth__deauthorize_remote_device__response__descriptor },
+ { "GetUsedAuthorizedDevices", &cdevice_auth__get_used_authorized_devices__request__descriptor, &cdevice_auth__get_used_authorized_devices__response__descriptor },
+ { "GetAuthorizedBorrowers", &cdevice_auth__get_authorized_borrowers__request__descriptor, &cdevice_auth__get_authorized_borrowers__response__descriptor },
+ { "AddAuthorizedBorrowers", &cdevice_auth__add_authorized_borrowers__request__descriptor, &cdevice_auth__add_authorized_borrowers__response__descriptor },
+ { "RemoveAuthorizedBorrowers", &cdevice_auth__remove_authorized_borrowers__request__descriptor, &cdevice_auth__remove_authorized_borrowers__response__descriptor },
+ { "GetAuthorizedAsBorrower", &cdevice_auth__get_authorized_as_borrower__request__descriptor, &cdevice_auth__get_authorized_as_borrower__response__descriptor },
+ { "GetExcludedGamesInLibrary", &cdevice_auth__get_excluded_games_in_library__request__descriptor, &cdevice_auth__get_excluded_games_in_library__response__descriptor },
+ { "GetBorrowerPlayHistory", &cdevice_auth__get_borrower_play_history__request__descriptor, &cdevice_auth__get_borrower_play_history__response__descriptor },
+};
+const unsigned device_auth__method_indices_by_name[] = {
+ 1, /* AcceptAuthorizationRequest */
+ 6, /* AddAuthorizedBorrowers */
+ 2, /* AuthorizeRemoteDevice */
+ 3, /* DeauthorizeRemoteDevice */
+ 8, /* GetAuthorizedAsBorrower */
+ 5, /* GetAuthorizedBorrowers */
+ 10, /* GetBorrowerPlayHistory */
+ 9, /* GetExcludedGamesInLibrary */
+ 0, /* GetOwnAuthorizedDevices */
+ 4, /* GetUsedAuthorizedDevices */
+ 7 /* RemoveAuthorizedBorrowers */
+};
+const ProtobufCServiceDescriptor device_auth__descriptor =
+{
+ PROTOBUF_C__SERVICE_DESCRIPTOR_MAGIC,
+ "DeviceAuth",
+ "DeviceAuth",
+ "DeviceAuth",
+ "",
+ 11,
+ device_auth__method_descriptors,
+ device_auth__method_indices_by_name
+};
+void device_auth__get_own_authorized_devices(ProtobufCService *service,
+ const CDeviceAuthGetOwnAuthorizedDevicesRequest *input,
+ CDeviceAuthGetOwnAuthorizedDevicesResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &device_auth__descriptor);
+ service->invoke(service, 0, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void device_auth__accept_authorization_request(ProtobufCService *service,
+ const CDeviceAuthAcceptAuthorizationRequestRequest *input,
+ CDeviceAuthAcceptAuthorizationRequestResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &device_auth__descriptor);
+ service->invoke(service, 1, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void device_auth__authorize_remote_device(ProtobufCService *service,
+ const CDeviceAuthAuthorizeRemoteDeviceRequest *input,
+ CDeviceAuthAuthorizeRemoteDeviceResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &device_auth__descriptor);
+ service->invoke(service, 2, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void device_auth__deauthorize_remote_device(ProtobufCService *service,
+ const CDeviceAuthDeauthorizeRemoteDeviceRequest *input,
+ CDeviceAuthDeauthorizeRemoteDeviceResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &device_auth__descriptor);
+ service->invoke(service, 3, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void device_auth__get_used_authorized_devices(ProtobufCService *service,
+ const CDeviceAuthGetUsedAuthorizedDevicesRequest *input,
+ CDeviceAuthGetUsedAuthorizedDevicesResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &device_auth__descriptor);
+ service->invoke(service, 4, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void device_auth__get_authorized_borrowers(ProtobufCService *service,
+ const CDeviceAuthGetAuthorizedBorrowersRequest *input,
+ CDeviceAuthGetAuthorizedBorrowersResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &device_auth__descriptor);
+ service->invoke(service, 5, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void device_auth__add_authorized_borrowers(ProtobufCService *service,
+ const CDeviceAuthAddAuthorizedBorrowersRequest *input,
+ CDeviceAuthAddAuthorizedBorrowersResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &device_auth__descriptor);
+ service->invoke(service, 6, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void device_auth__remove_authorized_borrowers(ProtobufCService *service,
+ const CDeviceAuthRemoveAuthorizedBorrowersRequest *input,
+ CDeviceAuthRemoveAuthorizedBorrowersResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &device_auth__descriptor);
+ service->invoke(service, 7, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void device_auth__get_authorized_as_borrower(ProtobufCService *service,
+ const CDeviceAuthGetAuthorizedAsBorrowerRequest *input,
+ CDeviceAuthGetAuthorizedAsBorrowerResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &device_auth__descriptor);
+ service->invoke(service, 8, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void device_auth__get_excluded_games_in_library(ProtobufCService *service,
+ const CDeviceAuthGetExcludedGamesInLibraryRequest *input,
+ CDeviceAuthGetExcludedGamesInLibraryResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &device_auth__descriptor);
+ service->invoke(service, 9, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void device_auth__get_borrower_play_history(ProtobufCService *service,
+ const CDeviceAuthGetBorrowerPlayHistoryRequest *input,
+ CDeviceAuthGetBorrowerPlayHistoryResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &device_auth__descriptor);
+ service->invoke(service, 10, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void device_auth__init (DeviceAuth_Service *service,
+ DeviceAuth_ServiceDestroy destroy)
+{
+ protobuf_c_service_generated_init (&service->base,
+ &device_auth__descriptor,
+ (ProtobufCServiceDestroy) destroy);
+}
diff --git a/protocols/Steam/src/protobuf-c/steammessages_deviceauth.steamclient.pb-c.h b/protocols/Steam/src/protobuf-c/steammessages_deviceauth.steamclient.pb-c.h
new file mode 100644
index 0000000000..84db1e95da
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_deviceauth.steamclient.pb-c.h
@@ -0,0 +1,1007 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_deviceauth.steamclient.proto */
+
+#ifndef PROTOBUF_C_steammessages_5fdeviceauth_2esteamclient_2eproto__INCLUDED
+#define PROTOBUF_C_steammessages_5fdeviceauth_2esteamclient_2eproto__INCLUDED
+
+#include "protobuf-c.h"
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1000000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1004001 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "steammessages_base.pb-c.h"
+#include "steammessages_unified_base.steamclient.pb-c.h"
+
+struct CDeviceAuthGetOwnAuthorizedDevicesRequest;
+struct CDeviceAuthGetOwnAuthorizedDevicesResponse;
+struct CDeviceAuthGetOwnAuthorizedDevicesResponse__Device;
+struct CDeviceAuthAcceptAuthorizationRequestRequest;
+struct CDeviceAuthAcceptAuthorizationRequestResponse;
+struct CDeviceAuthAuthorizeRemoteDeviceRequest;
+struct CDeviceAuthAuthorizeRemoteDeviceResponse;
+struct CDeviceAuthDeauthorizeRemoteDeviceRequest;
+struct CDeviceAuthDeauthorizeRemoteDeviceResponse;
+struct CDeviceAuthGetUsedAuthorizedDevicesRequest;
+struct CDeviceAuthGetUsedAuthorizedDevicesResponse;
+struct CDeviceAuthGetUsedAuthorizedDevicesResponse__Device;
+struct CDeviceAuthGetAuthorizedBorrowersRequest;
+struct CDeviceAuthGetAuthorizedBorrowersResponse;
+struct CDeviceAuthGetAuthorizedBorrowersResponse__Borrower;
+struct CDeviceAuthAddAuthorizedBorrowersRequest;
+struct CDeviceAuthAddAuthorizedBorrowersResponse;
+struct CDeviceAuthRemoveAuthorizedBorrowersRequest;
+struct CDeviceAuthRemoveAuthorizedBorrowersResponse;
+struct CDeviceAuthGetAuthorizedAsBorrowerRequest;
+struct CDeviceAuthGetAuthorizedAsBorrowerResponse;
+struct CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender;
+struct CDeviceAuthGetExcludedGamesInLibraryRequest;
+struct CDeviceAuthGetExcludedGamesInLibraryResponse;
+struct CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame;
+struct CDeviceAuthGetBorrowerPlayHistoryRequest;
+struct CDeviceAuthGetBorrowerPlayHistoryResponse;
+struct CDeviceAuthGetBorrowerPlayHistoryResponse__GameHistory;
+struct CDeviceAuthGetBorrowerPlayHistoryResponse__LenderHistory;
+
+
+/* --- enums --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor cdevice_auth__get_own_authorized_devices__request__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_own_authorized_devices__response__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_own_authorized_devices__response__device__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__accept_authorization_request__request__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__accept_authorization_request__response__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__authorize_remote_device__request__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__authorize_remote_device__response__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__deauthorize_remote_device__request__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__deauthorize_remote_device__response__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_used_authorized_devices__request__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_used_authorized_devices__response__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_used_authorized_devices__response__device__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_authorized_borrowers__request__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_authorized_borrowers__response__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_authorized_borrowers__response__borrower__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__add_authorized_borrowers__request__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__add_authorized_borrowers__response__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__remove_authorized_borrowers__request__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__remove_authorized_borrowers__response__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_authorized_as_borrower__request__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_authorized_as_borrower__response__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_authorized_as_borrower__response__lender__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_excluded_games_in_library__request__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_excluded_games_in_library__response__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_excluded_games_in_library__response__excluded_game__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_borrower_play_history__request__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_borrower_play_history__response__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_borrower_play_history__response__game_history__descriptor;
+extern const ProtobufCMessageDescriptor cdevice_auth__get_borrower_play_history__response__lender_history__descriptor;
+extern const ProtobufCServiceDescriptor device_auth__descriptor;
+
+/* --- messages --- */
+
+extern "C" void message_init_generic(const ProtobufCMessageDescriptor * desc, ProtobufCMessage * message);
+
+struct CDeviceAuthGetOwnAuthorizedDevicesRequest : public ProtobufCppMessage
+{
+ CDeviceAuthGetOwnAuthorizedDevicesRequest() :
+ ProtobufCppMessage(cdevice_auth__get_own_authorized_devices__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_include_canceled;
+ protobuf_c_boolean include_canceled;
+};
+
+struct CDeviceAuthGetOwnAuthorizedDevicesResponse__Device : public ProtobufCppMessage
+{
+ CDeviceAuthGetOwnAuthorizedDevicesResponse__Device() :
+ ProtobufCppMessage(cdevice_auth__get_own_authorized_devices__response__device__descriptor)
+ {}
+
+ protobuf_c_boolean has_auth_device_token;
+ uint64_t auth_device_token;
+ char *device_name;
+ protobuf_c_boolean has_is_pending;
+ protobuf_c_boolean is_pending;
+ protobuf_c_boolean has_is_canceled;
+ protobuf_c_boolean is_canceled;
+ protobuf_c_boolean has_last_time_used;
+ uint32_t last_time_used;
+ protobuf_c_boolean has_last_borrower_id;
+ uint64_t last_borrower_id;
+ protobuf_c_boolean has_last_app_played;
+ uint32_t last_app_played;
+ protobuf_c_boolean has_is_limited;
+ protobuf_c_boolean is_limited;
+};
+
+struct CDeviceAuthGetOwnAuthorizedDevicesResponse : public ProtobufCppMessage
+{
+ CDeviceAuthGetOwnAuthorizedDevicesResponse() :
+ ProtobufCppMessage(cdevice_auth__get_own_authorized_devices__response__descriptor)
+ {}
+
+ size_t n_devices;
+ CDeviceAuthGetOwnAuthorizedDevicesResponse__Device **devices;
+};
+
+struct CDeviceAuthAcceptAuthorizationRequestRequest : public ProtobufCppMessage
+{
+ CDeviceAuthAcceptAuthorizationRequestRequest() :
+ ProtobufCppMessage(cdevice_auth__accept_authorization_request__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_auth_device_token;
+ uint64_t auth_device_token;
+ protobuf_c_boolean has_auth_code;
+ uint64_t auth_code;
+ protobuf_c_boolean has_from_steamid;
+ uint64_t from_steamid;
+};
+
+struct CDeviceAuthAcceptAuthorizationRequestResponse : public ProtobufCppMessage
+{
+ CDeviceAuthAcceptAuthorizationRequestResponse() :
+ ProtobufCppMessage(cdevice_auth__accept_authorization_request__response__descriptor)
+ {}
+
+};
+
+struct CDeviceAuthAuthorizeRemoteDeviceRequest : public ProtobufCppMessage
+{
+ CDeviceAuthAuthorizeRemoteDeviceRequest() :
+ ProtobufCppMessage(cdevice_auth__authorize_remote_device__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_auth_device_token;
+ uint64_t auth_device_token;
+};
+
+struct CDeviceAuthAuthorizeRemoteDeviceResponse : public ProtobufCppMessage
+{
+ CDeviceAuthAuthorizeRemoteDeviceResponse() :
+ ProtobufCppMessage(cdevice_auth__authorize_remote_device__response__descriptor)
+ {}
+
+};
+
+struct CDeviceAuthDeauthorizeRemoteDeviceRequest : public ProtobufCppMessage
+{
+ CDeviceAuthDeauthorizeRemoteDeviceRequest() :
+ ProtobufCppMessage(cdevice_auth__deauthorize_remote_device__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_auth_device_token;
+ uint64_t auth_device_token;
+};
+
+struct CDeviceAuthDeauthorizeRemoteDeviceResponse : public ProtobufCppMessage
+{
+ CDeviceAuthDeauthorizeRemoteDeviceResponse() :
+ ProtobufCppMessage(cdevice_auth__deauthorize_remote_device__response__descriptor)
+ {}
+
+};
+
+struct CDeviceAuthGetUsedAuthorizedDevicesRequest : public ProtobufCppMessage
+{
+ CDeviceAuthGetUsedAuthorizedDevicesRequest() :
+ ProtobufCppMessage(cdevice_auth__get_used_authorized_devices__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+};
+
+struct CDeviceAuthGetUsedAuthorizedDevicesResponse__Device : public ProtobufCppMessage
+{
+ CDeviceAuthGetUsedAuthorizedDevicesResponse__Device() :
+ ProtobufCppMessage(cdevice_auth__get_used_authorized_devices__response__device__descriptor)
+ {}
+
+ protobuf_c_boolean has_auth_device_token;
+ uint64_t auth_device_token;
+ char *device_name;
+ protobuf_c_boolean has_owner_steamid;
+ uint64_t owner_steamid;
+ protobuf_c_boolean has_last_time_used;
+ uint32_t last_time_used;
+ protobuf_c_boolean has_last_app_played;
+ uint32_t last_app_played;
+};
+
+struct CDeviceAuthGetUsedAuthorizedDevicesResponse : public ProtobufCppMessage
+{
+ CDeviceAuthGetUsedAuthorizedDevicesResponse() :
+ ProtobufCppMessage(cdevice_auth__get_used_authorized_devices__response__descriptor)
+ {}
+
+ size_t n_devices;
+ CDeviceAuthGetUsedAuthorizedDevicesResponse__Device **devices;
+};
+
+struct CDeviceAuthGetAuthorizedBorrowersRequest : public ProtobufCppMessage
+{
+ CDeviceAuthGetAuthorizedBorrowersRequest() :
+ ProtobufCppMessage(cdevice_auth__get_authorized_borrowers__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_include_canceled;
+ protobuf_c_boolean include_canceled;
+ protobuf_c_boolean has_include_pending;
+ protobuf_c_boolean include_pending;
+};
+
+struct CDeviceAuthGetAuthorizedBorrowersResponse__Borrower : public ProtobufCppMessage
+{
+ CDeviceAuthGetAuthorizedBorrowersResponse__Borrower() :
+ ProtobufCppMessage(cdevice_auth__get_authorized_borrowers__response__borrower__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_is_pending;
+ protobuf_c_boolean is_pending;
+ protobuf_c_boolean has_is_canceled;
+ protobuf_c_boolean is_canceled;
+ protobuf_c_boolean has_time_created;
+ uint32_t time_created;
+};
+
+struct CDeviceAuthGetAuthorizedBorrowersResponse : public ProtobufCppMessage
+{
+ CDeviceAuthGetAuthorizedBorrowersResponse() :
+ ProtobufCppMessage(cdevice_auth__get_authorized_borrowers__response__descriptor)
+ {}
+
+ size_t n_borrowers;
+ CDeviceAuthGetAuthorizedBorrowersResponse__Borrower **borrowers;
+};
+
+struct CDeviceAuthAddAuthorizedBorrowersRequest : public ProtobufCppMessage
+{
+ CDeviceAuthAddAuthorizedBorrowersRequest() :
+ ProtobufCppMessage(cdevice_auth__add_authorized_borrowers__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ size_t n_steamid_borrower;
+ uint64_t *steamid_borrower;
+};
+
+struct CDeviceAuthAddAuthorizedBorrowersResponse : public ProtobufCppMessage
+{
+ CDeviceAuthAddAuthorizedBorrowersResponse() :
+ ProtobufCppMessage(cdevice_auth__add_authorized_borrowers__response__descriptor)
+ {}
+
+ protobuf_c_boolean has_seconds_to_wait;
+ int32_t seconds_to_wait;
+};
+
+struct CDeviceAuthRemoveAuthorizedBorrowersRequest : public ProtobufCppMessage
+{
+ CDeviceAuthRemoveAuthorizedBorrowersRequest() :
+ ProtobufCppMessage(cdevice_auth__remove_authorized_borrowers__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ size_t n_steamid_borrower;
+ uint64_t *steamid_borrower;
+};
+
+struct CDeviceAuthRemoveAuthorizedBorrowersResponse : public ProtobufCppMessage
+{
+ CDeviceAuthRemoveAuthorizedBorrowersResponse() :
+ ProtobufCppMessage(cdevice_auth__remove_authorized_borrowers__response__descriptor)
+ {}
+
+};
+
+struct CDeviceAuthGetAuthorizedAsBorrowerRequest : public ProtobufCppMessage
+{
+ CDeviceAuthGetAuthorizedAsBorrowerRequest() :
+ ProtobufCppMessage(cdevice_auth__get_authorized_as_borrower__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_include_canceled;
+ protobuf_c_boolean include_canceled;
+ protobuf_c_boolean has_include_pending;
+ protobuf_c_boolean include_pending;
+};
+
+struct CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender : public ProtobufCppMessage
+{
+ CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender() :
+ ProtobufCppMessage(cdevice_auth__get_authorized_as_borrower__response__lender__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_time_created;
+ uint32_t time_created;
+ protobuf_c_boolean has_is_pending;
+ protobuf_c_boolean is_pending;
+ protobuf_c_boolean has_is_canceled;
+ protobuf_c_boolean is_canceled;
+ protobuf_c_boolean has_is_used;
+ protobuf_c_boolean is_used;
+ protobuf_c_boolean has_time_removed;
+ uint32_t time_removed;
+ protobuf_c_boolean has_time_first;
+ uint32_t time_first;
+};
+
+struct CDeviceAuthGetAuthorizedAsBorrowerResponse : public ProtobufCppMessage
+{
+ CDeviceAuthGetAuthorizedAsBorrowerResponse() :
+ ProtobufCppMessage(cdevice_auth__get_authorized_as_borrower__response__descriptor)
+ {}
+
+ size_t n_lenders;
+ CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender **lenders;
+};
+
+struct CDeviceAuthGetExcludedGamesInLibraryRequest : public ProtobufCppMessage
+{
+ CDeviceAuthGetExcludedGamesInLibraryRequest() :
+ ProtobufCppMessage(cdevice_auth__get_excluded_games_in_library__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+};
+
+struct CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame : public ProtobufCppMessage
+{
+ CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame() :
+ ProtobufCppMessage(cdevice_auth__get_excluded_games_in_library__response__excluded_game__descriptor)
+ {}
+
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+ char *game_name;
+ protobuf_c_boolean has_vac_banned;
+ protobuf_c_boolean vac_banned;
+ protobuf_c_boolean has_package_excluded;
+ protobuf_c_boolean package_excluded;
+};
+
+struct CDeviceAuthGetExcludedGamesInLibraryResponse : public ProtobufCppMessage
+{
+ CDeviceAuthGetExcludedGamesInLibraryResponse() :
+ ProtobufCppMessage(cdevice_auth__get_excluded_games_in_library__response__descriptor)
+ {}
+
+ size_t n_excluded_games;
+ CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame **excluded_games;
+};
+
+struct CDeviceAuthGetBorrowerPlayHistoryRequest : public ProtobufCppMessage
+{
+ CDeviceAuthGetBorrowerPlayHistoryRequest() :
+ ProtobufCppMessage(cdevice_auth__get_borrower_play_history__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+};
+
+struct CDeviceAuthGetBorrowerPlayHistoryResponse__GameHistory : public ProtobufCppMessage
+{
+ CDeviceAuthGetBorrowerPlayHistoryResponse__GameHistory() :
+ ProtobufCppMessage(cdevice_auth__get_borrower_play_history__response__game_history__descriptor)
+ {}
+
+ protobuf_c_boolean has_appid;
+ uint32_t appid;
+ protobuf_c_boolean has_time_last;
+ uint32_t time_last;
+ protobuf_c_boolean has_time_total;
+ uint32_t time_total;
+};
+
+struct CDeviceAuthGetBorrowerPlayHistoryResponse__LenderHistory : public ProtobufCppMessage
+{
+ CDeviceAuthGetBorrowerPlayHistoryResponse__LenderHistory() :
+ ProtobufCppMessage(cdevice_auth__get_borrower_play_history__response__lender_history__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ size_t n_game_history;
+ CDeviceAuthGetBorrowerPlayHistoryResponse__GameHistory **game_history;
+};
+
+struct CDeviceAuthGetBorrowerPlayHistoryResponse : public ProtobufCppMessage
+{
+ CDeviceAuthGetBorrowerPlayHistoryResponse() :
+ ProtobufCppMessage(cdevice_auth__get_borrower_play_history__response__descriptor)
+ {}
+
+ size_t n_lender_history;
+ CDeviceAuthGetBorrowerPlayHistoryResponse__LenderHistory **lender_history;
+};
+
+size_t cdevice_auth__get_own_authorized_devices__request__get_packed_size
+ (const CDeviceAuthGetOwnAuthorizedDevicesRequest *message);
+size_t cdevice_auth__get_own_authorized_devices__request__pack
+ (const CDeviceAuthGetOwnAuthorizedDevicesRequest *message,
+ uint8_t *out);
+size_t cdevice_auth__get_own_authorized_devices__request__pack_to_buffer
+ (const CDeviceAuthGetOwnAuthorizedDevicesRequest *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthGetOwnAuthorizedDevicesRequest *
+ cdevice_auth__get_own_authorized_devices__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__get_own_authorized_devices__request__free_unpacked
+ (CDeviceAuthGetOwnAuthorizedDevicesRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__get_own_authorized_devices__response__get_packed_size
+ (const CDeviceAuthGetOwnAuthorizedDevicesResponse *message);
+size_t cdevice_auth__get_own_authorized_devices__response__pack
+ (const CDeviceAuthGetOwnAuthorizedDevicesResponse *message,
+ uint8_t *out);
+size_t cdevice_auth__get_own_authorized_devices__response__pack_to_buffer
+ (const CDeviceAuthGetOwnAuthorizedDevicesResponse *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthGetOwnAuthorizedDevicesResponse *
+ cdevice_auth__get_own_authorized_devices__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__get_own_authorized_devices__response__free_unpacked
+ (CDeviceAuthGetOwnAuthorizedDevicesResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__accept_authorization_request__request__get_packed_size
+ (const CDeviceAuthAcceptAuthorizationRequestRequest *message);
+size_t cdevice_auth__accept_authorization_request__request__pack
+ (const CDeviceAuthAcceptAuthorizationRequestRequest *message,
+ uint8_t *out);
+size_t cdevice_auth__accept_authorization_request__request__pack_to_buffer
+ (const CDeviceAuthAcceptAuthorizationRequestRequest *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthAcceptAuthorizationRequestRequest *
+ cdevice_auth__accept_authorization_request__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__accept_authorization_request__request__free_unpacked
+ (CDeviceAuthAcceptAuthorizationRequestRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__accept_authorization_request__response__get_packed_size
+ (const CDeviceAuthAcceptAuthorizationRequestResponse *message);
+size_t cdevice_auth__accept_authorization_request__response__pack
+ (const CDeviceAuthAcceptAuthorizationRequestResponse *message,
+ uint8_t *out);
+size_t cdevice_auth__accept_authorization_request__response__pack_to_buffer
+ (const CDeviceAuthAcceptAuthorizationRequestResponse *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthAcceptAuthorizationRequestResponse *
+ cdevice_auth__accept_authorization_request__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__accept_authorization_request__response__free_unpacked
+ (CDeviceAuthAcceptAuthorizationRequestResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__authorize_remote_device__request__get_packed_size
+ (const CDeviceAuthAuthorizeRemoteDeviceRequest *message);
+size_t cdevice_auth__authorize_remote_device__request__pack
+ (const CDeviceAuthAuthorizeRemoteDeviceRequest *message,
+ uint8_t *out);
+size_t cdevice_auth__authorize_remote_device__request__pack_to_buffer
+ (const CDeviceAuthAuthorizeRemoteDeviceRequest *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthAuthorizeRemoteDeviceRequest *
+ cdevice_auth__authorize_remote_device__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__authorize_remote_device__request__free_unpacked
+ (CDeviceAuthAuthorizeRemoteDeviceRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__authorize_remote_device__response__get_packed_size
+ (const CDeviceAuthAuthorizeRemoteDeviceResponse *message);
+size_t cdevice_auth__authorize_remote_device__response__pack
+ (const CDeviceAuthAuthorizeRemoteDeviceResponse *message,
+ uint8_t *out);
+size_t cdevice_auth__authorize_remote_device__response__pack_to_buffer
+ (const CDeviceAuthAuthorizeRemoteDeviceResponse *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthAuthorizeRemoteDeviceResponse *
+ cdevice_auth__authorize_remote_device__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__authorize_remote_device__response__free_unpacked
+ (CDeviceAuthAuthorizeRemoteDeviceResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__deauthorize_remote_device__request__get_packed_size
+ (const CDeviceAuthDeauthorizeRemoteDeviceRequest *message);
+size_t cdevice_auth__deauthorize_remote_device__request__pack
+ (const CDeviceAuthDeauthorizeRemoteDeviceRequest *message,
+ uint8_t *out);
+size_t cdevice_auth__deauthorize_remote_device__request__pack_to_buffer
+ (const CDeviceAuthDeauthorizeRemoteDeviceRequest *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthDeauthorizeRemoteDeviceRequest *
+ cdevice_auth__deauthorize_remote_device__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__deauthorize_remote_device__request__free_unpacked
+ (CDeviceAuthDeauthorizeRemoteDeviceRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__deauthorize_remote_device__response__get_packed_size
+ (const CDeviceAuthDeauthorizeRemoteDeviceResponse *message);
+size_t cdevice_auth__deauthorize_remote_device__response__pack
+ (const CDeviceAuthDeauthorizeRemoteDeviceResponse *message,
+ uint8_t *out);
+size_t cdevice_auth__deauthorize_remote_device__response__pack_to_buffer
+ (const CDeviceAuthDeauthorizeRemoteDeviceResponse *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthDeauthorizeRemoteDeviceResponse *
+ cdevice_auth__deauthorize_remote_device__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__deauthorize_remote_device__response__free_unpacked
+ (CDeviceAuthDeauthorizeRemoteDeviceResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__get_used_authorized_devices__request__get_packed_size
+ (const CDeviceAuthGetUsedAuthorizedDevicesRequest *message);
+size_t cdevice_auth__get_used_authorized_devices__request__pack
+ (const CDeviceAuthGetUsedAuthorizedDevicesRequest *message,
+ uint8_t *out);
+size_t cdevice_auth__get_used_authorized_devices__request__pack_to_buffer
+ (const CDeviceAuthGetUsedAuthorizedDevicesRequest *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthGetUsedAuthorizedDevicesRequest *
+ cdevice_auth__get_used_authorized_devices__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__get_used_authorized_devices__request__free_unpacked
+ (CDeviceAuthGetUsedAuthorizedDevicesRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__get_used_authorized_devices__response__get_packed_size
+ (const CDeviceAuthGetUsedAuthorizedDevicesResponse *message);
+size_t cdevice_auth__get_used_authorized_devices__response__pack
+ (const CDeviceAuthGetUsedAuthorizedDevicesResponse *message,
+ uint8_t *out);
+size_t cdevice_auth__get_used_authorized_devices__response__pack_to_buffer
+ (const CDeviceAuthGetUsedAuthorizedDevicesResponse *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthGetUsedAuthorizedDevicesResponse *
+ cdevice_auth__get_used_authorized_devices__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__get_used_authorized_devices__response__free_unpacked
+ (CDeviceAuthGetUsedAuthorizedDevicesResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__get_authorized_borrowers__request__get_packed_size
+ (const CDeviceAuthGetAuthorizedBorrowersRequest *message);
+size_t cdevice_auth__get_authorized_borrowers__request__pack
+ (const CDeviceAuthGetAuthorizedBorrowersRequest *message,
+ uint8_t *out);
+size_t cdevice_auth__get_authorized_borrowers__request__pack_to_buffer
+ (const CDeviceAuthGetAuthorizedBorrowersRequest *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthGetAuthorizedBorrowersRequest *
+ cdevice_auth__get_authorized_borrowers__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__get_authorized_borrowers__request__free_unpacked
+ (CDeviceAuthGetAuthorizedBorrowersRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__get_authorized_borrowers__response__get_packed_size
+ (const CDeviceAuthGetAuthorizedBorrowersResponse *message);
+size_t cdevice_auth__get_authorized_borrowers__response__pack
+ (const CDeviceAuthGetAuthorizedBorrowersResponse *message,
+ uint8_t *out);
+size_t cdevice_auth__get_authorized_borrowers__response__pack_to_buffer
+ (const CDeviceAuthGetAuthorizedBorrowersResponse *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthGetAuthorizedBorrowersResponse *
+ cdevice_auth__get_authorized_borrowers__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__get_authorized_borrowers__response__free_unpacked
+ (CDeviceAuthGetAuthorizedBorrowersResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__add_authorized_borrowers__request__get_packed_size
+ (const CDeviceAuthAddAuthorizedBorrowersRequest *message);
+size_t cdevice_auth__add_authorized_borrowers__request__pack
+ (const CDeviceAuthAddAuthorizedBorrowersRequest *message,
+ uint8_t *out);
+size_t cdevice_auth__add_authorized_borrowers__request__pack_to_buffer
+ (const CDeviceAuthAddAuthorizedBorrowersRequest *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthAddAuthorizedBorrowersRequest *
+ cdevice_auth__add_authorized_borrowers__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__add_authorized_borrowers__request__free_unpacked
+ (CDeviceAuthAddAuthorizedBorrowersRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__add_authorized_borrowers__response__get_packed_size
+ (const CDeviceAuthAddAuthorizedBorrowersResponse *message);
+size_t cdevice_auth__add_authorized_borrowers__response__pack
+ (const CDeviceAuthAddAuthorizedBorrowersResponse *message,
+ uint8_t *out);
+size_t cdevice_auth__add_authorized_borrowers__response__pack_to_buffer
+ (const CDeviceAuthAddAuthorizedBorrowersResponse *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthAddAuthorizedBorrowersResponse *
+ cdevice_auth__add_authorized_borrowers__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__add_authorized_borrowers__response__free_unpacked
+ (CDeviceAuthAddAuthorizedBorrowersResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__remove_authorized_borrowers__request__get_packed_size
+ (const CDeviceAuthRemoveAuthorizedBorrowersRequest *message);
+size_t cdevice_auth__remove_authorized_borrowers__request__pack
+ (const CDeviceAuthRemoveAuthorizedBorrowersRequest *message,
+ uint8_t *out);
+size_t cdevice_auth__remove_authorized_borrowers__request__pack_to_buffer
+ (const CDeviceAuthRemoveAuthorizedBorrowersRequest *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthRemoveAuthorizedBorrowersRequest *
+ cdevice_auth__remove_authorized_borrowers__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__remove_authorized_borrowers__request__free_unpacked
+ (CDeviceAuthRemoveAuthorizedBorrowersRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__remove_authorized_borrowers__response__get_packed_size
+ (const CDeviceAuthRemoveAuthorizedBorrowersResponse *message);
+size_t cdevice_auth__remove_authorized_borrowers__response__pack
+ (const CDeviceAuthRemoveAuthorizedBorrowersResponse *message,
+ uint8_t *out);
+size_t cdevice_auth__remove_authorized_borrowers__response__pack_to_buffer
+ (const CDeviceAuthRemoveAuthorizedBorrowersResponse *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthRemoveAuthorizedBorrowersResponse *
+ cdevice_auth__remove_authorized_borrowers__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__remove_authorized_borrowers__response__free_unpacked
+ (CDeviceAuthRemoveAuthorizedBorrowersResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__get_authorized_as_borrower__request__get_packed_size
+ (const CDeviceAuthGetAuthorizedAsBorrowerRequest *message);
+size_t cdevice_auth__get_authorized_as_borrower__request__pack
+ (const CDeviceAuthGetAuthorizedAsBorrowerRequest *message,
+ uint8_t *out);
+size_t cdevice_auth__get_authorized_as_borrower__request__pack_to_buffer
+ (const CDeviceAuthGetAuthorizedAsBorrowerRequest *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthGetAuthorizedAsBorrowerRequest *
+ cdevice_auth__get_authorized_as_borrower__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__get_authorized_as_borrower__request__free_unpacked
+ (CDeviceAuthGetAuthorizedAsBorrowerRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__get_authorized_as_borrower__response__get_packed_size
+ (const CDeviceAuthGetAuthorizedAsBorrowerResponse *message);
+size_t cdevice_auth__get_authorized_as_borrower__response__pack
+ (const CDeviceAuthGetAuthorizedAsBorrowerResponse *message,
+ uint8_t *out);
+size_t cdevice_auth__get_authorized_as_borrower__response__pack_to_buffer
+ (const CDeviceAuthGetAuthorizedAsBorrowerResponse *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthGetAuthorizedAsBorrowerResponse *
+ cdevice_auth__get_authorized_as_borrower__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__get_authorized_as_borrower__response__free_unpacked
+ (CDeviceAuthGetAuthorizedAsBorrowerResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__get_excluded_games_in_library__request__get_packed_size
+ (const CDeviceAuthGetExcludedGamesInLibraryRequest *message);
+size_t cdevice_auth__get_excluded_games_in_library__request__pack
+ (const CDeviceAuthGetExcludedGamesInLibraryRequest *message,
+ uint8_t *out);
+size_t cdevice_auth__get_excluded_games_in_library__request__pack_to_buffer
+ (const CDeviceAuthGetExcludedGamesInLibraryRequest *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthGetExcludedGamesInLibraryRequest *
+ cdevice_auth__get_excluded_games_in_library__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__get_excluded_games_in_library__request__free_unpacked
+ (CDeviceAuthGetExcludedGamesInLibraryRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__get_excluded_games_in_library__response__get_packed_size
+ (const CDeviceAuthGetExcludedGamesInLibraryResponse *message);
+size_t cdevice_auth__get_excluded_games_in_library__response__pack
+ (const CDeviceAuthGetExcludedGamesInLibraryResponse *message,
+ uint8_t *out);
+size_t cdevice_auth__get_excluded_games_in_library__response__pack_to_buffer
+ (const CDeviceAuthGetExcludedGamesInLibraryResponse *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthGetExcludedGamesInLibraryResponse *
+ cdevice_auth__get_excluded_games_in_library__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__get_excluded_games_in_library__response__free_unpacked
+ (CDeviceAuthGetExcludedGamesInLibraryResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__get_borrower_play_history__request__get_packed_size
+ (const CDeviceAuthGetBorrowerPlayHistoryRequest *message);
+size_t cdevice_auth__get_borrower_play_history__request__pack
+ (const CDeviceAuthGetBorrowerPlayHistoryRequest *message,
+ uint8_t *out);
+size_t cdevice_auth__get_borrower_play_history__request__pack_to_buffer
+ (const CDeviceAuthGetBorrowerPlayHistoryRequest *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthGetBorrowerPlayHistoryRequest *
+ cdevice_auth__get_borrower_play_history__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__get_borrower_play_history__request__free_unpacked
+ (CDeviceAuthGetBorrowerPlayHistoryRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cdevice_auth__get_borrower_play_history__response__get_packed_size
+ (const CDeviceAuthGetBorrowerPlayHistoryResponse *message);
+size_t cdevice_auth__get_borrower_play_history__response__pack
+ (const CDeviceAuthGetBorrowerPlayHistoryResponse *message,
+ uint8_t *out);
+size_t cdevice_auth__get_borrower_play_history__response__pack_to_buffer
+ (const CDeviceAuthGetBorrowerPlayHistoryResponse *message,
+ ProtobufCBuffer *buffer);
+CDeviceAuthGetBorrowerPlayHistoryResponse *
+ cdevice_auth__get_borrower_play_history__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cdevice_auth__get_borrower_play_history__response__free_unpacked
+ (CDeviceAuthGetBorrowerPlayHistoryResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*CDeviceAuthGetOwnAuthorizedDevicesRequest_Closure)
+ (const CDeviceAuthGetOwnAuthorizedDevicesRequest *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetOwnAuthorizedDevicesResponse__Device_Closure)
+ (const CDeviceAuthGetOwnAuthorizedDevicesResponse__Device *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetOwnAuthorizedDevicesResponse_Closure)
+ (const CDeviceAuthGetOwnAuthorizedDevicesResponse *message,
+ void *closure_data);
+typedef void (*CDeviceAuthAcceptAuthorizationRequestRequest_Closure)
+ (const CDeviceAuthAcceptAuthorizationRequestRequest *message,
+ void *closure_data);
+typedef void (*CDeviceAuthAcceptAuthorizationRequestResponse_Closure)
+ (const CDeviceAuthAcceptAuthorizationRequestResponse *message,
+ void *closure_data);
+typedef void (*CDeviceAuthAuthorizeRemoteDeviceRequest_Closure)
+ (const CDeviceAuthAuthorizeRemoteDeviceRequest *message,
+ void *closure_data);
+typedef void (*CDeviceAuthAuthorizeRemoteDeviceResponse_Closure)
+ (const CDeviceAuthAuthorizeRemoteDeviceResponse *message,
+ void *closure_data);
+typedef void (*CDeviceAuthDeauthorizeRemoteDeviceRequest_Closure)
+ (const CDeviceAuthDeauthorizeRemoteDeviceRequest *message,
+ void *closure_data);
+typedef void (*CDeviceAuthDeauthorizeRemoteDeviceResponse_Closure)
+ (const CDeviceAuthDeauthorizeRemoteDeviceResponse *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetUsedAuthorizedDevicesRequest_Closure)
+ (const CDeviceAuthGetUsedAuthorizedDevicesRequest *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetUsedAuthorizedDevicesResponse__Device_Closure)
+ (const CDeviceAuthGetUsedAuthorizedDevicesResponse__Device *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetUsedAuthorizedDevicesResponse_Closure)
+ (const CDeviceAuthGetUsedAuthorizedDevicesResponse *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetAuthorizedBorrowersRequest_Closure)
+ (const CDeviceAuthGetAuthorizedBorrowersRequest *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetAuthorizedBorrowersResponse__Borrower_Closure)
+ (const CDeviceAuthGetAuthorizedBorrowersResponse__Borrower *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetAuthorizedBorrowersResponse_Closure)
+ (const CDeviceAuthGetAuthorizedBorrowersResponse *message,
+ void *closure_data);
+typedef void (*CDeviceAuthAddAuthorizedBorrowersRequest_Closure)
+ (const CDeviceAuthAddAuthorizedBorrowersRequest *message,
+ void *closure_data);
+typedef void (*CDeviceAuthAddAuthorizedBorrowersResponse_Closure)
+ (const CDeviceAuthAddAuthorizedBorrowersResponse *message,
+ void *closure_data);
+typedef void (*CDeviceAuthRemoveAuthorizedBorrowersRequest_Closure)
+ (const CDeviceAuthRemoveAuthorizedBorrowersRequest *message,
+ void *closure_data);
+typedef void (*CDeviceAuthRemoveAuthorizedBorrowersResponse_Closure)
+ (const CDeviceAuthRemoveAuthorizedBorrowersResponse *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetAuthorizedAsBorrowerRequest_Closure)
+ (const CDeviceAuthGetAuthorizedAsBorrowerRequest *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender_Closure)
+ (const CDeviceAuthGetAuthorizedAsBorrowerResponse__Lender *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetAuthorizedAsBorrowerResponse_Closure)
+ (const CDeviceAuthGetAuthorizedAsBorrowerResponse *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetExcludedGamesInLibraryRequest_Closure)
+ (const CDeviceAuthGetExcludedGamesInLibraryRequest *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame_Closure)
+ (const CDeviceAuthGetExcludedGamesInLibraryResponse__ExcludedGame *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetExcludedGamesInLibraryResponse_Closure)
+ (const CDeviceAuthGetExcludedGamesInLibraryResponse *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetBorrowerPlayHistoryRequest_Closure)
+ (const CDeviceAuthGetBorrowerPlayHistoryRequest *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetBorrowerPlayHistoryResponse__GameHistory_Closure)
+ (const CDeviceAuthGetBorrowerPlayHistoryResponse__GameHistory *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetBorrowerPlayHistoryResponse__LenderHistory_Closure)
+ (const CDeviceAuthGetBorrowerPlayHistoryResponse__LenderHistory *message,
+ void *closure_data);
+typedef void (*CDeviceAuthGetBorrowerPlayHistoryResponse_Closure)
+ (const CDeviceAuthGetBorrowerPlayHistoryResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+typedef struct DeviceAuth_Service DeviceAuth_Service;
+struct DeviceAuth_Service
+{
+ ProtobufCService base;
+ void (*get_own_authorized_devices)(DeviceAuth_Service *service,
+ const CDeviceAuthGetOwnAuthorizedDevicesRequest *input,
+ CDeviceAuthGetOwnAuthorizedDevicesResponse_Closure closure,
+ void *closure_data);
+ void (*accept_authorization_request)(DeviceAuth_Service *service,
+ const CDeviceAuthAcceptAuthorizationRequestRequest *input,
+ CDeviceAuthAcceptAuthorizationRequestResponse_Closure closure,
+ void *closure_data);
+ void (*authorize_remote_device)(DeviceAuth_Service *service,
+ const CDeviceAuthAuthorizeRemoteDeviceRequest *input,
+ CDeviceAuthAuthorizeRemoteDeviceResponse_Closure closure,
+ void *closure_data);
+ void (*deauthorize_remote_device)(DeviceAuth_Service *service,
+ const CDeviceAuthDeauthorizeRemoteDeviceRequest *input,
+ CDeviceAuthDeauthorizeRemoteDeviceResponse_Closure closure,
+ void *closure_data);
+ void (*get_used_authorized_devices)(DeviceAuth_Service *service,
+ const CDeviceAuthGetUsedAuthorizedDevicesRequest *input,
+ CDeviceAuthGetUsedAuthorizedDevicesResponse_Closure closure,
+ void *closure_data);
+ void (*get_authorized_borrowers)(DeviceAuth_Service *service,
+ const CDeviceAuthGetAuthorizedBorrowersRequest *input,
+ CDeviceAuthGetAuthorizedBorrowersResponse_Closure closure,
+ void *closure_data);
+ void (*add_authorized_borrowers)(DeviceAuth_Service *service,
+ const CDeviceAuthAddAuthorizedBorrowersRequest *input,
+ CDeviceAuthAddAuthorizedBorrowersResponse_Closure closure,
+ void *closure_data);
+ void (*remove_authorized_borrowers)(DeviceAuth_Service *service,
+ const CDeviceAuthRemoveAuthorizedBorrowersRequest *input,
+ CDeviceAuthRemoveAuthorizedBorrowersResponse_Closure closure,
+ void *closure_data);
+ void (*get_authorized_as_borrower)(DeviceAuth_Service *service,
+ const CDeviceAuthGetAuthorizedAsBorrowerRequest *input,
+ CDeviceAuthGetAuthorizedAsBorrowerResponse_Closure closure,
+ void *closure_data);
+ void (*get_excluded_games_in_library)(DeviceAuth_Service *service,
+ const CDeviceAuthGetExcludedGamesInLibraryRequest *input,
+ CDeviceAuthGetExcludedGamesInLibraryResponse_Closure closure,
+ void *closure_data);
+ void (*get_borrower_play_history)(DeviceAuth_Service *service,
+ const CDeviceAuthGetBorrowerPlayHistoryRequest *input,
+ CDeviceAuthGetBorrowerPlayHistoryResponse_Closure closure,
+ void *closure_data);
+};
+typedef void (*DeviceAuth_ServiceDestroy)(DeviceAuth_Service *);
+void device_auth__init (DeviceAuth_Service *service,
+ DeviceAuth_ServiceDestroy destroy);
+#define DEVICE_AUTH__BASE_INIT \
+ { &device_auth__descriptor, protobuf_c_service_invoke_internal, NULL }
+#define DEVICE_AUTH__INIT(function_prefix__) \
+ { DEVICE_AUTH__BASE_INIT,\
+ function_prefix__ ## get_own_authorized_devices,\
+ function_prefix__ ## accept_authorization_request,\
+ function_prefix__ ## authorize_remote_device,\
+ function_prefix__ ## deauthorize_remote_device,\
+ function_prefix__ ## get_used_authorized_devices,\
+ function_prefix__ ## get_authorized_borrowers,\
+ function_prefix__ ## add_authorized_borrowers,\
+ function_prefix__ ## remove_authorized_borrowers,\
+ function_prefix__ ## get_authorized_as_borrower,\
+ function_prefix__ ## get_excluded_games_in_library,\
+ function_prefix__ ## get_borrower_play_history }
+void device_auth__get_own_authorized_devices(ProtobufCService *service,
+ const CDeviceAuthGetOwnAuthorizedDevicesRequest *input,
+ CDeviceAuthGetOwnAuthorizedDevicesResponse_Closure closure,
+ void *closure_data);
+void device_auth__accept_authorization_request(ProtobufCService *service,
+ const CDeviceAuthAcceptAuthorizationRequestRequest *input,
+ CDeviceAuthAcceptAuthorizationRequestResponse_Closure closure,
+ void *closure_data);
+void device_auth__authorize_remote_device(ProtobufCService *service,
+ const CDeviceAuthAuthorizeRemoteDeviceRequest *input,
+ CDeviceAuthAuthorizeRemoteDeviceResponse_Closure closure,
+ void *closure_data);
+void device_auth__deauthorize_remote_device(ProtobufCService *service,
+ const CDeviceAuthDeauthorizeRemoteDeviceRequest *input,
+ CDeviceAuthDeauthorizeRemoteDeviceResponse_Closure closure,
+ void *closure_data);
+void device_auth__get_used_authorized_devices(ProtobufCService *service,
+ const CDeviceAuthGetUsedAuthorizedDevicesRequest *input,
+ CDeviceAuthGetUsedAuthorizedDevicesResponse_Closure closure,
+ void *closure_data);
+void device_auth__get_authorized_borrowers(ProtobufCService *service,
+ const CDeviceAuthGetAuthorizedBorrowersRequest *input,
+ CDeviceAuthGetAuthorizedBorrowersResponse_Closure closure,
+ void *closure_data);
+void device_auth__add_authorized_borrowers(ProtobufCService *service,
+ const CDeviceAuthAddAuthorizedBorrowersRequest *input,
+ CDeviceAuthAddAuthorizedBorrowersResponse_Closure closure,
+ void *closure_data);
+void device_auth__remove_authorized_borrowers(ProtobufCService *service,
+ const CDeviceAuthRemoveAuthorizedBorrowersRequest *input,
+ CDeviceAuthRemoveAuthorizedBorrowersResponse_Closure closure,
+ void *closure_data);
+void device_auth__get_authorized_as_borrower(ProtobufCService *service,
+ const CDeviceAuthGetAuthorizedAsBorrowerRequest *input,
+ CDeviceAuthGetAuthorizedAsBorrowerResponse_Closure closure,
+ void *closure_data);
+void device_auth__get_excluded_games_in_library(ProtobufCService *service,
+ const CDeviceAuthGetExcludedGamesInLibraryRequest *input,
+ CDeviceAuthGetExcludedGamesInLibraryResponse_Closure closure,
+ void *closure_data);
+void device_auth__get_borrower_play_history(ProtobufCService *service,
+ const CDeviceAuthGetBorrowerPlayHistoryRequest *input,
+ CDeviceAuthGetBorrowerPlayHistoryResponse_Closure closure,
+ void *closure_data);
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_steammessages_5fdeviceauth_2esteamclient_2eproto__INCLUDED */
diff --git a/protocols/Steam/src/protobuf-c/steammessages_deviceauth.steamclient.proto b/protocols/Steam/src/protobuf-c/steammessages_deviceauth.steamclient.proto
new file mode 100644
index 0000000000..8ac46d0171
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_deviceauth.steamclient.proto
@@ -0,0 +1,203 @@
+import "steammessages_base.proto";
+import "steammessages_unified_base.steamclient.proto";
+
+option cc_generic_services = true;
+
+message CDeviceAuth_GetOwnAuthorizedDevices_Request {
+ optional fixed64 steamid = 1;
+ optional bool include_canceled = 2;
+}
+
+message CDeviceAuth_GetOwnAuthorizedDevices_Response {
+ message Device {
+ optional fixed64 auth_device_token = 1;
+ optional string device_name = 2;
+ optional bool is_pending = 3;
+ optional bool is_canceled = 4;
+ optional uint32 last_time_used = 5;
+ optional fixed64 last_borrower_id = 6;
+ optional uint32 last_app_played = 7;
+ optional bool is_limited = 8;
+ }
+
+ repeated .CDeviceAuth_GetOwnAuthorizedDevices_Response.Device devices = 1;
+}
+
+message CDeviceAuth_AcceptAuthorizationRequest_Request {
+ optional fixed64 steamid = 1;
+ optional fixed64 auth_device_token = 2;
+ optional fixed64 auth_code = 3;
+ optional fixed64 from_steamid = 4;
+}
+
+message CDeviceAuth_AcceptAuthorizationRequest_Response {
+}
+
+message CDeviceAuth_AuthorizeRemoteDevice_Request {
+ optional fixed64 steamid = 1;
+ optional fixed64 auth_device_token = 2;
+}
+
+message CDeviceAuth_AuthorizeRemoteDevice_Response {
+}
+
+message CDeviceAuth_DeauthorizeRemoteDevice_Request {
+ optional fixed64 steamid = 1;
+ optional fixed64 auth_device_token = 2;
+}
+
+message CDeviceAuth_DeauthorizeRemoteDevice_Response {
+}
+
+message CDeviceAuth_GetUsedAuthorizedDevices_Request {
+ optional fixed64 steamid = 1;
+}
+
+message CDeviceAuth_GetUsedAuthorizedDevices_Response {
+ message Device {
+ optional fixed64 auth_device_token = 1;
+ optional string device_name = 2;
+ optional fixed64 owner_steamid = 3;
+ optional uint32 last_time_used = 4;
+ optional uint32 last_app_played = 5;
+ }
+
+ repeated .CDeviceAuth_GetUsedAuthorizedDevices_Response.Device devices = 1;
+}
+
+message CDeviceAuth_GetAuthorizedBorrowers_Request {
+ optional fixed64 steamid = 1;
+ optional bool include_canceled = 2;
+ optional bool include_pending = 3;
+}
+
+message CDeviceAuth_GetAuthorizedBorrowers_Response {
+ message Borrower {
+ optional fixed64 steamid = 1;
+ optional bool is_pending = 2;
+ optional bool is_canceled = 3;
+ optional uint32 time_created = 4;
+ }
+
+ repeated .CDeviceAuth_GetAuthorizedBorrowers_Response.Borrower borrowers = 1;
+}
+
+message CDeviceAuth_AddAuthorizedBorrowers_Request {
+ optional fixed64 steamid = 1;
+ repeated fixed64 steamid_borrower = 2;
+}
+
+message CDeviceAuth_AddAuthorizedBorrowers_Response {
+ optional int32 seconds_to_wait = 1;
+}
+
+message CDeviceAuth_RemoveAuthorizedBorrowers_Request {
+ optional fixed64 steamid = 1;
+ repeated fixed64 steamid_borrower = 2;
+}
+
+message CDeviceAuth_RemoveAuthorizedBorrowers_Response {
+}
+
+message CDeviceAuth_GetAuthorizedAsBorrower_Request {
+ optional fixed64 steamid = 1;
+ optional bool include_canceled = 2;
+ optional bool include_pending = 3;
+}
+
+message CDeviceAuth_GetAuthorizedAsBorrower_Response {
+ message Lender {
+ optional fixed64 steamid = 1;
+ optional uint32 time_created = 2;
+ optional bool is_pending = 3;
+ optional bool is_canceled = 4;
+ optional bool is_used = 5;
+ optional uint32 time_removed = 6;
+ optional uint32 time_first = 7;
+ }
+
+ repeated .CDeviceAuth_GetAuthorizedAsBorrower_Response.Lender lenders = 1;
+}
+
+message CDeviceAuth_GetExcludedGamesInLibrary_Request {
+ optional fixed64 steamid = 1;
+}
+
+message CDeviceAuth_GetExcludedGamesInLibrary_Response {
+ message ExcludedGame {
+ optional uint32 appid = 1;
+ optional string game_name = 2;
+ optional bool vac_banned = 3;
+ optional bool package_excluded = 4;
+ }
+
+ repeated .CDeviceAuth_GetExcludedGamesInLibrary_Response.ExcludedGame excluded_games = 1;
+}
+
+message CDeviceAuth_GetBorrowerPlayHistory_Request {
+ optional fixed64 steamid = 1;
+ optional uint32 appid = 2;
+}
+
+message CDeviceAuth_GetBorrowerPlayHistory_Response {
+ message GameHistory {
+ optional uint32 appid = 1;
+ optional uint32 time_last = 2;
+ optional uint32 time_total = 3;
+ }
+
+ message LenderHistory {
+ optional fixed64 steamid = 1;
+ repeated .CDeviceAuth_GetBorrowerPlayHistory_Response.GameHistory game_history = 2;
+ }
+
+ repeated .CDeviceAuth_GetBorrowerPlayHistory_Response.LenderHistory lender_history = 1;
+}
+
+service DeviceAuth {
+ option (service_description) = "Library Sharing settings service";
+
+ rpc GetOwnAuthorizedDevices (.CDeviceAuth_GetOwnAuthorizedDevices_Request) returns (.CDeviceAuth_GetOwnAuthorizedDevices_Response) {
+ option (method_description) = "Get list of authorized devices";
+ }
+
+ rpc AcceptAuthorizationRequest (.CDeviceAuth_AcceptAuthorizationRequest_Request) returns (.CDeviceAuth_AcceptAuthorizationRequest_Response) {
+ option (method_description) = "Accept an authorization request by another users";
+ }
+
+ rpc AuthorizeRemoteDevice (.CDeviceAuth_AuthorizeRemoteDevice_Request) returns (.CDeviceAuth_AuthorizeRemoteDevice_Response) {
+ option (method_description) = "Authorize own remote device that has pending request";
+ }
+
+ rpc DeauthorizeRemoteDevice (.CDeviceAuth_DeauthorizeRemoteDevice_Request) returns (.CDeviceAuth_DeauthorizeRemoteDevice_Response) {
+ option (method_description) = "Revoke own device authorization";
+ }
+
+ rpc GetUsedAuthorizedDevices (.CDeviceAuth_GetUsedAuthorizedDevices_Request) returns (.CDeviceAuth_GetUsedAuthorizedDevices_Response) {
+ option (method_description) = "Get list of authorized devices user played borrowed games on";
+ }
+
+ rpc GetAuthorizedBorrowers (.CDeviceAuth_GetAuthorizedBorrowers_Request) returns (.CDeviceAuth_GetAuthorizedBorrowers_Response) {
+ option (method_description) = "Get list of users that can borrow on an authorized device";
+ }
+
+ rpc AddAuthorizedBorrowers (.CDeviceAuth_AddAuthorizedBorrowers_Request) returns (.CDeviceAuth_AddAuthorizedBorrowers_Response) {
+ option (method_description) = "Add users that can borrow on limited authorized devices";
+ }
+
+ rpc RemoveAuthorizedBorrowers (.CDeviceAuth_RemoveAuthorizedBorrowers_Request) returns (.CDeviceAuth_RemoveAuthorizedBorrowers_Response) {
+ option (method_description) = "Remove users that can borrow on limited authorized devices";
+ }
+
+ rpc GetAuthorizedAsBorrower (.CDeviceAuth_GetAuthorizedAsBorrower_Request) returns (.CDeviceAuth_GetAuthorizedAsBorrower_Response) {
+ option (method_description) = "Get list of lenders that authorized given account as borrower";
+ }
+
+ rpc GetExcludedGamesInLibrary (.CDeviceAuth_GetExcludedGamesInLibrary_Request) returns (.CDeviceAuth_GetExcludedGamesInLibrary_Response) {
+ option (method_description) = "Get list of excluded games in lenders library";
+ }
+
+ rpc GetBorrowerPlayHistory (.CDeviceAuth_GetBorrowerPlayHistory_Request) returns (.CDeviceAuth_GetBorrowerPlayHistory_Response) {
+ option (method_description) = "Get list played games as borrower";
+ }
+}
diff --git a/protocols/Steam/src/protobuf-c/steammessages_friendmessages.steamclient.pb-c.cpp b/protocols/Steam/src/protobuf-c/steammessages_friendmessages.steamclient.pb-c.cpp
new file mode 100644
index 0000000000..e06b9cd276
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_friendmessages.steamclient.pb-c.cpp
@@ -0,0 +1,1942 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_friendmessages.steamclient.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "steammessages_friendmessages.steamclient.pb-c.h"
+size_t cfriend_messages__get_recent_messages__request__get_packed_size
+ (const CFriendMessagesGetRecentMessagesRequest *message)
+{
+ assert(message->descriptor == &cfriend_messages__get_recent_messages__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cfriend_messages__get_recent_messages__request__pack
+ (const CFriendMessagesGetRecentMessagesRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cfriend_messages__get_recent_messages__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cfriend_messages__get_recent_messages__request__pack_to_buffer
+ (const CFriendMessagesGetRecentMessagesRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cfriend_messages__get_recent_messages__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CFriendMessagesGetRecentMessagesRequest *
+ cfriend_messages__get_recent_messages__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CFriendMessagesGetRecentMessagesRequest *)
+ protobuf_c_message_unpack (&cfriend_messages__get_recent_messages__request__descriptor,
+ allocator, len, data);
+}
+void cfriend_messages__get_recent_messages__request__free_unpacked
+ (CFriendMessagesGetRecentMessagesRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cfriend_messages__get_recent_messages__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cfriend_messages__get_recent_messages__response__get_packed_size
+ (const CFriendMessagesGetRecentMessagesResponse *message)
+{
+ assert(message->descriptor == &cfriend_messages__get_recent_messages__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cfriend_messages__get_recent_messages__response__pack
+ (const CFriendMessagesGetRecentMessagesResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cfriend_messages__get_recent_messages__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cfriend_messages__get_recent_messages__response__pack_to_buffer
+ (const CFriendMessagesGetRecentMessagesResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cfriend_messages__get_recent_messages__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CFriendMessagesGetRecentMessagesResponse *
+ cfriend_messages__get_recent_messages__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CFriendMessagesGetRecentMessagesResponse *)
+ protobuf_c_message_unpack (&cfriend_messages__get_recent_messages__response__descriptor,
+ allocator, len, data);
+}
+void cfriend_messages__get_recent_messages__response__free_unpacked
+ (CFriendMessagesGetRecentMessagesResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cfriend_messages__get_recent_messages__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cfriends_messages__get_active_message_sessions__request__get_packed_size
+ (const CFriendsMessagesGetActiveMessageSessionsRequest *message)
+{
+ assert(message->descriptor == &cfriends_messages__get_active_message_sessions__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cfriends_messages__get_active_message_sessions__request__pack
+ (const CFriendsMessagesGetActiveMessageSessionsRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cfriends_messages__get_active_message_sessions__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cfriends_messages__get_active_message_sessions__request__pack_to_buffer
+ (const CFriendsMessagesGetActiveMessageSessionsRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cfriends_messages__get_active_message_sessions__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CFriendsMessagesGetActiveMessageSessionsRequest *
+ cfriends_messages__get_active_message_sessions__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CFriendsMessagesGetActiveMessageSessionsRequest *)
+ protobuf_c_message_unpack (&cfriends_messages__get_active_message_sessions__request__descriptor,
+ allocator, len, data);
+}
+void cfriends_messages__get_active_message_sessions__request__free_unpacked
+ (CFriendsMessagesGetActiveMessageSessionsRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cfriends_messages__get_active_message_sessions__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cfriends_messages__get_active_message_sessions__response__get_packed_size
+ (const CFriendsMessagesGetActiveMessageSessionsResponse *message)
+{
+ assert(message->descriptor == &cfriends_messages__get_active_message_sessions__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cfriends_messages__get_active_message_sessions__response__pack
+ (const CFriendsMessagesGetActiveMessageSessionsResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cfriends_messages__get_active_message_sessions__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cfriends_messages__get_active_message_sessions__response__pack_to_buffer
+ (const CFriendsMessagesGetActiveMessageSessionsResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cfriends_messages__get_active_message_sessions__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CFriendsMessagesGetActiveMessageSessionsResponse *
+ cfriends_messages__get_active_message_sessions__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CFriendsMessagesGetActiveMessageSessionsResponse *)
+ protobuf_c_message_unpack (&cfriends_messages__get_active_message_sessions__response__descriptor,
+ allocator, len, data);
+}
+void cfriends_messages__get_active_message_sessions__response__free_unpacked
+ (CFriendsMessagesGetActiveMessageSessionsResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cfriends_messages__get_active_message_sessions__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cfriend_messages__send_message__request__get_packed_size
+ (const CFriendMessagesSendMessageRequest *message)
+{
+ assert(message->descriptor == &cfriend_messages__send_message__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cfriend_messages__send_message__request__pack
+ (const CFriendMessagesSendMessageRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cfriend_messages__send_message__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cfriend_messages__send_message__request__pack_to_buffer
+ (const CFriendMessagesSendMessageRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cfriend_messages__send_message__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CFriendMessagesSendMessageRequest *
+ cfriend_messages__send_message__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CFriendMessagesSendMessageRequest *)
+ protobuf_c_message_unpack (&cfriend_messages__send_message__request__descriptor,
+ allocator, len, data);
+}
+void cfriend_messages__send_message__request__free_unpacked
+ (CFriendMessagesSendMessageRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cfriend_messages__send_message__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cfriend_messages__send_message__response__get_packed_size
+ (const CFriendMessagesSendMessageResponse *message)
+{
+ assert(message->descriptor == &cfriend_messages__send_message__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cfriend_messages__send_message__response__pack
+ (const CFriendMessagesSendMessageResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cfriend_messages__send_message__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cfriend_messages__send_message__response__pack_to_buffer
+ (const CFriendMessagesSendMessageResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cfriend_messages__send_message__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CFriendMessagesSendMessageResponse *
+ cfriend_messages__send_message__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CFriendMessagesSendMessageResponse *)
+ protobuf_c_message_unpack (&cfriend_messages__send_message__response__descriptor,
+ allocator, len, data);
+}
+void cfriend_messages__send_message__response__free_unpacked
+ (CFriendMessagesSendMessageResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cfriend_messages__send_message__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cfriend_messages__ack_message__notification__get_packed_size
+ (const CFriendMessagesAckMessageNotification *message)
+{
+ assert(message->descriptor == &cfriend_messages__ack_message__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cfriend_messages__ack_message__notification__pack
+ (const CFriendMessagesAckMessageNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cfriend_messages__ack_message__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cfriend_messages__ack_message__notification__pack_to_buffer
+ (const CFriendMessagesAckMessageNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cfriend_messages__ack_message__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CFriendMessagesAckMessageNotification *
+ cfriend_messages__ack_message__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CFriendMessagesAckMessageNotification *)
+ protobuf_c_message_unpack (&cfriend_messages__ack_message__notification__descriptor,
+ allocator, len, data);
+}
+void cfriend_messages__ack_message__notification__free_unpacked
+ (CFriendMessagesAckMessageNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cfriend_messages__ack_message__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cfriend_messages__is_in_friends_uibeta__request__get_packed_size
+ (const CFriendMessagesIsInFriendsUIBetaRequest *message)
+{
+ assert(message->descriptor == &cfriend_messages__is_in_friends_uibeta__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cfriend_messages__is_in_friends_uibeta__request__pack
+ (const CFriendMessagesIsInFriendsUIBetaRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cfriend_messages__is_in_friends_uibeta__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cfriend_messages__is_in_friends_uibeta__request__pack_to_buffer
+ (const CFriendMessagesIsInFriendsUIBetaRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cfriend_messages__is_in_friends_uibeta__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CFriendMessagesIsInFriendsUIBetaRequest *
+ cfriend_messages__is_in_friends_uibeta__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CFriendMessagesIsInFriendsUIBetaRequest *)
+ protobuf_c_message_unpack (&cfriend_messages__is_in_friends_uibeta__request__descriptor,
+ allocator, len, data);
+}
+void cfriend_messages__is_in_friends_uibeta__request__free_unpacked
+ (CFriendMessagesIsInFriendsUIBetaRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cfriend_messages__is_in_friends_uibeta__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cfriend_messages__is_in_friends_uibeta__response__get_packed_size
+ (const CFriendMessagesIsInFriendsUIBetaResponse *message)
+{
+ assert(message->descriptor == &cfriend_messages__is_in_friends_uibeta__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cfriend_messages__is_in_friends_uibeta__response__pack
+ (const CFriendMessagesIsInFriendsUIBetaResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cfriend_messages__is_in_friends_uibeta__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cfriend_messages__is_in_friends_uibeta__response__pack_to_buffer
+ (const CFriendMessagesIsInFriendsUIBetaResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cfriend_messages__is_in_friends_uibeta__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CFriendMessagesIsInFriendsUIBetaResponse *
+ cfriend_messages__is_in_friends_uibeta__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CFriendMessagesIsInFriendsUIBetaResponse *)
+ protobuf_c_message_unpack (&cfriend_messages__is_in_friends_uibeta__response__descriptor,
+ allocator, len, data);
+}
+void cfriend_messages__is_in_friends_uibeta__response__free_unpacked
+ (CFriendMessagesIsInFriendsUIBetaResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cfriend_messages__is_in_friends_uibeta__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cfriend_messages__update_message_reaction__request__get_packed_size
+ (const CFriendMessagesUpdateMessageReactionRequest *message)
+{
+ assert(message->descriptor == &cfriend_messages__update_message_reaction__request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cfriend_messages__update_message_reaction__request__pack
+ (const CFriendMessagesUpdateMessageReactionRequest *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cfriend_messages__update_message_reaction__request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cfriend_messages__update_message_reaction__request__pack_to_buffer
+ (const CFriendMessagesUpdateMessageReactionRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cfriend_messages__update_message_reaction__request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CFriendMessagesUpdateMessageReactionRequest *
+ cfriend_messages__update_message_reaction__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CFriendMessagesUpdateMessageReactionRequest *)
+ protobuf_c_message_unpack (&cfriend_messages__update_message_reaction__request__descriptor,
+ allocator, len, data);
+}
+void cfriend_messages__update_message_reaction__request__free_unpacked
+ (CFriendMessagesUpdateMessageReactionRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cfriend_messages__update_message_reaction__request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cfriend_messages__update_message_reaction__response__get_packed_size
+ (const CFriendMessagesUpdateMessageReactionResponse *message)
+{
+ assert(message->descriptor == &cfriend_messages__update_message_reaction__response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cfriend_messages__update_message_reaction__response__pack
+ (const CFriendMessagesUpdateMessageReactionResponse *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cfriend_messages__update_message_reaction__response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cfriend_messages__update_message_reaction__response__pack_to_buffer
+ (const CFriendMessagesUpdateMessageReactionResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cfriend_messages__update_message_reaction__response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CFriendMessagesUpdateMessageReactionResponse *
+ cfriend_messages__update_message_reaction__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CFriendMessagesUpdateMessageReactionResponse *)
+ protobuf_c_message_unpack (&cfriend_messages__update_message_reaction__response__descriptor,
+ allocator, len, data);
+}
+void cfriend_messages__update_message_reaction__response__free_unpacked
+ (CFriendMessagesUpdateMessageReactionResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cfriend_messages__update_message_reaction__response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cfriend_messages__incoming_message__notification__get_packed_size
+ (const CFriendMessagesIncomingMessageNotification *message)
+{
+ assert(message->descriptor == &cfriend_messages__incoming_message__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cfriend_messages__incoming_message__notification__pack
+ (const CFriendMessagesIncomingMessageNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cfriend_messages__incoming_message__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cfriend_messages__incoming_message__notification__pack_to_buffer
+ (const CFriendMessagesIncomingMessageNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cfriend_messages__incoming_message__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CFriendMessagesIncomingMessageNotification *
+ cfriend_messages__incoming_message__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CFriendMessagesIncomingMessageNotification *)
+ protobuf_c_message_unpack (&cfriend_messages__incoming_message__notification__descriptor,
+ allocator, len, data);
+}
+void cfriend_messages__incoming_message__notification__free_unpacked
+ (CFriendMessagesIncomingMessageNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cfriend_messages__incoming_message__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t cfriend_messages__message_reaction__notification__get_packed_size
+ (const CFriendMessagesMessageReactionNotification *message)
+{
+ assert(message->descriptor == &cfriend_messages__message_reaction__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t cfriend_messages__message_reaction__notification__pack
+ (const CFriendMessagesMessageReactionNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &cfriend_messages__message_reaction__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t cfriend_messages__message_reaction__notification__pack_to_buffer
+ (const CFriendMessagesMessageReactionNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &cfriend_messages__message_reaction__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CFriendMessagesMessageReactionNotification *
+ cfriend_messages__message_reaction__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CFriendMessagesMessageReactionNotification *)
+ protobuf_c_message_unpack (&cfriend_messages__message_reaction__notification__descriptor,
+ allocator, len, data);
+}
+void cfriend_messages__message_reaction__notification__free_unpacked
+ (CFriendMessagesMessageReactionNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &cfriend_messages__message_reaction__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+static const ProtobufCFieldDescriptor cfriend_messages__get_recent_messages__request__field_descriptors[9] =
+{
+ {
+ "steamid1",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CFriendMessagesGetRecentMessagesRequest, has_steamid1),
+ offsetof(CFriendMessagesGetRecentMessagesRequest, steamid1),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "steamid2",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CFriendMessagesGetRecentMessagesRequest, has_steamid2),
+ offsetof(CFriendMessagesGetRecentMessagesRequest, steamid2),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "count",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesGetRecentMessagesRequest, has_count),
+ offsetof(CFriendMessagesGetRecentMessagesRequest, count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "most_recent_conversation",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CFriendMessagesGetRecentMessagesRequest, has_most_recent_conversation),
+ offsetof(CFriendMessagesGetRecentMessagesRequest, most_recent_conversation),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "rtime32_start_time",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED32,
+ offsetof(CFriendMessagesGetRecentMessagesRequest, has_rtime32_start_time),
+ offsetof(CFriendMessagesGetRecentMessagesRequest, rtime32_start_time),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "bbcode_format",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CFriendMessagesGetRecentMessagesRequest, has_bbcode_format),
+ offsetof(CFriendMessagesGetRecentMessagesRequest, bbcode_format),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "start_ordinal",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesGetRecentMessagesRequest, has_start_ordinal),
+ offsetof(CFriendMessagesGetRecentMessagesRequest, start_ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "time_last",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesGetRecentMessagesRequest, has_time_last),
+ offsetof(CFriendMessagesGetRecentMessagesRequest, time_last),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal_last",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesGetRecentMessagesRequest, has_ordinal_last),
+ offsetof(CFriendMessagesGetRecentMessagesRequest, ordinal_last),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriend_messages__get_recent_messages__request__field_indices_by_name[] = {
+ 5, /* field[5] = bbcode_format */
+ 2, /* field[2] = count */
+ 3, /* field[3] = most_recent_conversation */
+ 8, /* field[8] = ordinal_last */
+ 4, /* field[4] = rtime32_start_time */
+ 6, /* field[6] = start_ordinal */
+ 0, /* field[0] = steamid1 */
+ 1, /* field[1] = steamid2 */
+ 7, /* field[7] = time_last */
+};
+static const ProtobufCIntRange cfriend_messages__get_recent_messages__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 9 }
+};
+const ProtobufCMessageDescriptor cfriend_messages__get_recent_messages__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendMessages_GetRecentMessages_Request",
+ "CFriendMessagesGetRecentMessagesRequest",
+ "CFriendMessagesGetRecentMessagesRequest",
+ "",
+ sizeof(CFriendMessagesGetRecentMessagesRequest),
+ 9,
+ cfriend_messages__get_recent_messages__request__field_descriptors,
+ cfriend_messages__get_recent_messages__request__field_indices_by_name,
+ 1, cfriend_messages__get_recent_messages__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EMessageReactionType cfriend_messages__get_recent_messages__response__friend_message__message_reaction__reaction_type__default_value = EMESSAGE_REACTION_TYPE__k_EMessageReactionType_Invalid;
+static const ProtobufCFieldDescriptor cfriend_messages__get_recent_messages__response__friend_message__message_reaction__field_descriptors[3] =
+{
+ {
+ "reaction_type",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CFriendMessagesGetRecentMessagesResponse__FriendMessage__MessageReaction, has_reaction_type),
+ offsetof(CFriendMessagesGetRecentMessagesResponse__FriendMessage__MessageReaction, reaction_type),
+ &emessage_reaction_type__descriptor,
+ &cfriend_messages__get_recent_messages__response__friend_message__message_reaction__reaction_type__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reaction",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CFriendMessagesGetRecentMessagesResponse__FriendMessage__MessageReaction, reaction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reactors",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesGetRecentMessagesResponse__FriendMessage__MessageReaction, n_reactors),
+ offsetof(CFriendMessagesGetRecentMessagesResponse__FriendMessage__MessageReaction, reactors),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriend_messages__get_recent_messages__response__friend_message__message_reaction__field_indices_by_name[] = {
+ 1, /* field[1] = reaction */
+ 0, /* field[0] = reaction_type */
+ 2, /* field[2] = reactors */
+};
+static const ProtobufCIntRange cfriend_messages__get_recent_messages__response__friend_message__message_reaction__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor cfriend_messages__get_recent_messages__response__friend_message__message_reaction__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendMessages_GetRecentMessages_Response.FriendMessage.MessageReaction",
+ "MessageReaction",
+ "CFriendMessagesGetRecentMessagesResponse__FriendMessage__MessageReaction",
+ "",
+ sizeof(CFriendMessagesGetRecentMessagesResponse__FriendMessage__MessageReaction),
+ 3,
+ cfriend_messages__get_recent_messages__response__friend_message__message_reaction__field_descriptors,
+ cfriend_messages__get_recent_messages__response__friend_message__message_reaction__field_indices_by_name,
+ 1, cfriend_messages__get_recent_messages__response__friend_message__message_reaction__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cfriend_messages__get_recent_messages__response__friend_message__field_descriptors[5] =
+{
+ {
+ "accountid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesGetRecentMessagesResponse__FriendMessage, has_accountid),
+ offsetof(CFriendMessagesGetRecentMessagesResponse__FriendMessage, accountid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "timestamp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesGetRecentMessagesResponse__FriendMessage, has_timestamp),
+ offsetof(CFriendMessagesGetRecentMessagesResponse__FriendMessage, timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CFriendMessagesGetRecentMessagesResponse__FriendMessage, message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesGetRecentMessagesResponse__FriendMessage, has_ordinal),
+ offsetof(CFriendMessagesGetRecentMessagesResponse__FriendMessage, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reactions",
+ 5,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CFriendMessagesGetRecentMessagesResponse__FriendMessage, n_reactions),
+ offsetof(CFriendMessagesGetRecentMessagesResponse__FriendMessage, reactions),
+ &cfriend_messages__get_recent_messages__response__friend_message__message_reaction__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriend_messages__get_recent_messages__response__friend_message__field_indices_by_name[] = {
+ 0, /* field[0] = accountid */
+ 2, /* field[2] = message */
+ 3, /* field[3] = ordinal */
+ 4, /* field[4] = reactions */
+ 1, /* field[1] = timestamp */
+};
+static const ProtobufCIntRange cfriend_messages__get_recent_messages__response__friend_message__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor cfriend_messages__get_recent_messages__response__friend_message__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendMessages_GetRecentMessages_Response.FriendMessage",
+ "FriendMessage",
+ "CFriendMessagesGetRecentMessagesResponse__FriendMessage",
+ "",
+ sizeof(CFriendMessagesGetRecentMessagesResponse__FriendMessage),
+ 5,
+ cfriend_messages__get_recent_messages__response__friend_message__field_descriptors,
+ cfriend_messages__get_recent_messages__response__friend_message__field_indices_by_name,
+ 1, cfriend_messages__get_recent_messages__response__friend_message__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cfriend_messages__get_recent_messages__response__field_descriptors[2] =
+{
+ {
+ "messages",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CFriendMessagesGetRecentMessagesResponse, n_messages),
+ offsetof(CFriendMessagesGetRecentMessagesResponse, messages),
+ &cfriend_messages__get_recent_messages__response__friend_message__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "more_available",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CFriendMessagesGetRecentMessagesResponse, has_more_available),
+ offsetof(CFriendMessagesGetRecentMessagesResponse, more_available),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriend_messages__get_recent_messages__response__field_indices_by_name[] = {
+ 0, /* field[0] = messages */
+ 1, /* field[1] = more_available */
+};
+static const ProtobufCIntRange cfriend_messages__get_recent_messages__response__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 4, 1 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cfriend_messages__get_recent_messages__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendMessages_GetRecentMessages_Response",
+ "CFriendMessagesGetRecentMessagesResponse",
+ "CFriendMessagesGetRecentMessagesResponse",
+ "",
+ sizeof(CFriendMessagesGetRecentMessagesResponse),
+ 2,
+ cfriend_messages__get_recent_messages__response__field_descriptors,
+ cfriend_messages__get_recent_messages__response__field_indices_by_name,
+ 2, cfriend_messages__get_recent_messages__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cfriends_messages__get_active_message_sessions__request__field_descriptors[2] =
+{
+ {
+ "lastmessage_since",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendsMessagesGetActiveMessageSessionsRequest, has_lastmessage_since),
+ offsetof(CFriendsMessagesGetActiveMessageSessionsRequest, lastmessage_since),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "only_sessions_with_messages",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CFriendsMessagesGetActiveMessageSessionsRequest, has_only_sessions_with_messages),
+ offsetof(CFriendsMessagesGetActiveMessageSessionsRequest, only_sessions_with_messages),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriends_messages__get_active_message_sessions__request__field_indices_by_name[] = {
+ 0, /* field[0] = lastmessage_since */
+ 1, /* field[1] = only_sessions_with_messages */
+};
+static const ProtobufCIntRange cfriends_messages__get_active_message_sessions__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cfriends_messages__get_active_message_sessions__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendsMessages_GetActiveMessageSessions_Request",
+ "CFriendsMessagesGetActiveMessageSessionsRequest",
+ "CFriendsMessagesGetActiveMessageSessionsRequest",
+ "",
+ sizeof(CFriendsMessagesGetActiveMessageSessionsRequest),
+ 2,
+ cfriends_messages__get_active_message_sessions__request__field_descriptors,
+ cfriends_messages__get_active_message_sessions__request__field_indices_by_name,
+ 1, cfriends_messages__get_active_message_sessions__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cfriends_messages__get_active_message_sessions__response__friend_message_session__field_descriptors[4] =
+{
+ {
+ "accountid_friend",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession, has_accountid_friend),
+ offsetof(CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession, accountid_friend),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_message",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession, has_last_message),
+ offsetof(CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession, last_message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "last_view",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession, has_last_view),
+ offsetof(CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession, last_view),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "unread_message_count",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession, has_unread_message_count),
+ offsetof(CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession, unread_message_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriends_messages__get_active_message_sessions__response__friend_message_session__field_indices_by_name[] = {
+ 0, /* field[0] = accountid_friend */
+ 1, /* field[1] = last_message */
+ 2, /* field[2] = last_view */
+ 3, /* field[3] = unread_message_count */
+};
+static const ProtobufCIntRange cfriends_messages__get_active_message_sessions__response__friend_message_session__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cfriends_messages__get_active_message_sessions__response__friend_message_session__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendsMessages_GetActiveMessageSessions_Response.FriendMessageSession",
+ "FriendMessageSession",
+ "CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession",
+ "",
+ sizeof(CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession),
+ 4,
+ cfriends_messages__get_active_message_sessions__response__friend_message_session__field_descriptors,
+ cfriends_messages__get_active_message_sessions__response__friend_message_session__field_indices_by_name,
+ 1, cfriends_messages__get_active_message_sessions__response__friend_message_session__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cfriends_messages__get_active_message_sessions__response__field_descriptors[2] =
+{
+ {
+ "message_sessions",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CFriendsMessagesGetActiveMessageSessionsResponse, n_message_sessions),
+ offsetof(CFriendsMessagesGetActiveMessageSessionsResponse, message_sessions),
+ &cfriends_messages__get_active_message_sessions__response__friend_message_session__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "timestamp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendsMessagesGetActiveMessageSessionsResponse, has_timestamp),
+ offsetof(CFriendsMessagesGetActiveMessageSessionsResponse, timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriends_messages__get_active_message_sessions__response__field_indices_by_name[] = {
+ 0, /* field[0] = message_sessions */
+ 1, /* field[1] = timestamp */
+};
+static const ProtobufCIntRange cfriends_messages__get_active_message_sessions__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cfriends_messages__get_active_message_sessions__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendsMessages_GetActiveMessageSessions_Response",
+ "CFriendsMessagesGetActiveMessageSessionsResponse",
+ "CFriendsMessagesGetActiveMessageSessionsResponse",
+ "",
+ sizeof(CFriendsMessagesGetActiveMessageSessionsResponse),
+ 2,
+ cfriends_messages__get_active_message_sessions__response__field_descriptors,
+ cfriends_messages__get_active_message_sessions__response__field_indices_by_name,
+ 1, cfriends_messages__get_active_message_sessions__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cfriend_messages__send_message__request__field_descriptors[7] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CFriendMessagesSendMessageRequest, has_steamid),
+ offsetof(CFriendMessagesSendMessageRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_entry_type",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CFriendMessagesSendMessageRequest, has_chat_entry_type),
+ offsetof(CFriendMessagesSendMessageRequest, chat_entry_type),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CFriendMessagesSendMessageRequest, message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "contains_bbcode",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CFriendMessagesSendMessageRequest, has_contains_bbcode),
+ offsetof(CFriendMessagesSendMessageRequest, contains_bbcode),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "echo_to_sender",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CFriendMessagesSendMessageRequest, has_echo_to_sender),
+ offsetof(CFriendMessagesSendMessageRequest, echo_to_sender),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "low_priority",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CFriendMessagesSendMessageRequest, has_low_priority),
+ offsetof(CFriendMessagesSendMessageRequest, low_priority),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "client_message_id",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CFriendMessagesSendMessageRequest, client_message_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriend_messages__send_message__request__field_indices_by_name[] = {
+ 1, /* field[1] = chat_entry_type */
+ 6, /* field[6] = client_message_id */
+ 3, /* field[3] = contains_bbcode */
+ 4, /* field[4] = echo_to_sender */
+ 5, /* field[5] = low_priority */
+ 2, /* field[2] = message */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cfriend_messages__send_message__request__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 8, 6 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cfriend_messages__send_message__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendMessages_SendMessage_Request",
+ "CFriendMessagesSendMessageRequest",
+ "CFriendMessagesSendMessageRequest",
+ "",
+ sizeof(CFriendMessagesSendMessageRequest),
+ 7,
+ cfriend_messages__send_message__request__field_descriptors,
+ cfriend_messages__send_message__request__field_indices_by_name,
+ 2, cfriend_messages__send_message__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cfriend_messages__send_message__response__field_descriptors[4] =
+{
+ {
+ "modified_message",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CFriendMessagesSendMessageResponse, modified_message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "server_timestamp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesSendMessageResponse, has_server_timestamp),
+ offsetof(CFriendMessagesSendMessageResponse, server_timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesSendMessageResponse, has_ordinal),
+ offsetof(CFriendMessagesSendMessageResponse, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message_without_bb_code",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CFriendMessagesSendMessageResponse, message_without_bb_code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriend_messages__send_message__response__field_indices_by_name[] = {
+ 3, /* field[3] = message_without_bb_code */
+ 0, /* field[0] = modified_message */
+ 2, /* field[2] = ordinal */
+ 1, /* field[1] = server_timestamp */
+};
+static const ProtobufCIntRange cfriend_messages__send_message__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor cfriend_messages__send_message__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendMessages_SendMessage_Response",
+ "CFriendMessagesSendMessageResponse",
+ "CFriendMessagesSendMessageResponse",
+ "",
+ sizeof(CFriendMessagesSendMessageResponse),
+ 4,
+ cfriend_messages__send_message__response__field_descriptors,
+ cfriend_messages__send_message__response__field_indices_by_name,
+ 1, cfriend_messages__send_message__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cfriend_messages__ack_message__notification__field_descriptors[2] =
+{
+ {
+ "steamid_partner",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CFriendMessagesAckMessageNotification, has_steamid_partner),
+ offsetof(CFriendMessagesAckMessageNotification, steamid_partner),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "timestamp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesAckMessageNotification, has_timestamp),
+ offsetof(CFriendMessagesAckMessageNotification, timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriend_messages__ack_message__notification__field_indices_by_name[] = {
+ 0, /* field[0] = steamid_partner */
+ 1, /* field[1] = timestamp */
+};
+static const ProtobufCIntRange cfriend_messages__ack_message__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cfriend_messages__ack_message__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendMessages_AckMessage_Notification",
+ "CFriendMessagesAckMessageNotification",
+ "CFriendMessagesAckMessageNotification",
+ "",
+ sizeof(CFriendMessagesAckMessageNotification),
+ 2,
+ cfriend_messages__ack_message__notification__field_descriptors,
+ cfriend_messages__ack_message__notification__field_indices_by_name,
+ 1, cfriend_messages__ack_message__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cfriend_messages__is_in_friends_uibeta__request__field_descriptors[1] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CFriendMessagesIsInFriendsUIBetaRequest, has_steamid),
+ offsetof(CFriendMessagesIsInFriendsUIBetaRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriend_messages__is_in_friends_uibeta__request__field_indices_by_name[] = {
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cfriend_messages__is_in_friends_uibeta__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cfriend_messages__is_in_friends_uibeta__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendMessages_IsInFriendsUIBeta_Request",
+ "CFriendMessagesIsInFriendsUIBetaRequest",
+ "CFriendMessagesIsInFriendsUIBetaRequest",
+ "",
+ sizeof(CFriendMessagesIsInFriendsUIBetaRequest),
+ 1,
+ cfriend_messages__is_in_friends_uibeta__request__field_descriptors,
+ cfriend_messages__is_in_friends_uibeta__request__field_indices_by_name,
+ 1, cfriend_messages__is_in_friends_uibeta__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cfriend_messages__is_in_friends_uibeta__response__field_descriptors[2] =
+{
+ {
+ "online_in_friendsui",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CFriendMessagesIsInFriendsUIBetaResponse, has_online_in_friendsui),
+ offsetof(CFriendMessagesIsInFriendsUIBetaResponse, online_in_friendsui),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "has_used_friendsui",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CFriendMessagesIsInFriendsUIBetaResponse, has_has_used_friendsui),
+ offsetof(CFriendMessagesIsInFriendsUIBetaResponse, has_used_friendsui),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriend_messages__is_in_friends_uibeta__response__field_indices_by_name[] = {
+ 1, /* field[1] = has_used_friendsui */
+ 0, /* field[0] = online_in_friendsui */
+};
+static const ProtobufCIntRange cfriend_messages__is_in_friends_uibeta__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor cfriend_messages__is_in_friends_uibeta__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendMessages_IsInFriendsUIBeta_Response",
+ "CFriendMessagesIsInFriendsUIBetaResponse",
+ "CFriendMessagesIsInFriendsUIBetaResponse",
+ "",
+ sizeof(CFriendMessagesIsInFriendsUIBetaResponse),
+ 2,
+ cfriend_messages__is_in_friends_uibeta__response__field_descriptors,
+ cfriend_messages__is_in_friends_uibeta__response__field_indices_by_name,
+ 1, cfriend_messages__is_in_friends_uibeta__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EMessageReactionType cfriend_messages__update_message_reaction__request__reaction_type__default_value = EMESSAGE_REACTION_TYPE__k_EMessageReactionType_Invalid;
+static const ProtobufCFieldDescriptor cfriend_messages__update_message_reaction__request__field_descriptors[6] =
+{
+ {
+ "steamid",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CFriendMessagesUpdateMessageReactionRequest, has_steamid),
+ offsetof(CFriendMessagesUpdateMessageReactionRequest, steamid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "server_timestamp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesUpdateMessageReactionRequest, has_server_timestamp),
+ offsetof(CFriendMessagesUpdateMessageReactionRequest, server_timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesUpdateMessageReactionRequest, has_ordinal),
+ offsetof(CFriendMessagesUpdateMessageReactionRequest, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reaction_type",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CFriendMessagesUpdateMessageReactionRequest, has_reaction_type),
+ offsetof(CFriendMessagesUpdateMessageReactionRequest, reaction_type),
+ &emessage_reaction_type__descriptor,
+ &cfriend_messages__update_message_reaction__request__reaction_type__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reaction",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CFriendMessagesUpdateMessageReactionRequest, reaction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_add",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CFriendMessagesUpdateMessageReactionRequest, has_is_add),
+ offsetof(CFriendMessagesUpdateMessageReactionRequest, is_add),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriend_messages__update_message_reaction__request__field_indices_by_name[] = {
+ 5, /* field[5] = is_add */
+ 2, /* field[2] = ordinal */
+ 4, /* field[4] = reaction */
+ 3, /* field[3] = reaction_type */
+ 1, /* field[1] = server_timestamp */
+ 0, /* field[0] = steamid */
+};
+static const ProtobufCIntRange cfriend_messages__update_message_reaction__request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor cfriend_messages__update_message_reaction__request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendMessages_UpdateMessageReaction_Request",
+ "CFriendMessagesUpdateMessageReactionRequest",
+ "CFriendMessagesUpdateMessageReactionRequest",
+ "",
+ sizeof(CFriendMessagesUpdateMessageReactionRequest),
+ 6,
+ cfriend_messages__update_message_reaction__request__field_descriptors,
+ cfriend_messages__update_message_reaction__request__field_indices_by_name,
+ 1, cfriend_messages__update_message_reaction__request__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cfriend_messages__update_message_reaction__response__field_descriptors[1] =
+{
+ {
+ "reactors",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesUpdateMessageReactionResponse, n_reactors),
+ offsetof(CFriendMessagesUpdateMessageReactionResponse, reactors),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriend_messages__update_message_reaction__response__field_indices_by_name[] = {
+ 0, /* field[0] = reactors */
+};
+static const ProtobufCIntRange cfriend_messages__update_message_reaction__response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor cfriend_messages__update_message_reaction__response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendMessages_UpdateMessageReaction_Response",
+ "CFriendMessagesUpdateMessageReactionResponse",
+ "CFriendMessagesUpdateMessageReactionResponse",
+ "",
+ sizeof(CFriendMessagesUpdateMessageReactionResponse),
+ 1,
+ cfriend_messages__update_message_reaction__response__field_descriptors,
+ cfriend_messages__update_message_reaction__response__field_indices_by_name,
+ 1, cfriend_messages__update_message_reaction__response__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor cfriend_messages__incoming_message__notification__field_descriptors[9] =
+{
+ {
+ "steamid_friend",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CFriendMessagesIncomingMessageNotification, has_steamid_friend),
+ offsetof(CFriendMessagesIncomingMessageNotification, steamid_friend),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "chat_entry_type",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(CFriendMessagesIncomingMessageNotification, has_chat_entry_type),
+ offsetof(CFriendMessagesIncomingMessageNotification, chat_entry_type),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "from_limited_account",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CFriendMessagesIncomingMessageNotification, has_from_limited_account),
+ offsetof(CFriendMessagesIncomingMessageNotification, from_limited_account),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CFriendMessagesIncomingMessageNotification, message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "rtime32_server_timestamp",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED32,
+ offsetof(CFriendMessagesIncomingMessageNotification, has_rtime32_server_timestamp),
+ offsetof(CFriendMessagesIncomingMessageNotification, rtime32_server_timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesIncomingMessageNotification, has_ordinal),
+ offsetof(CFriendMessagesIncomingMessageNotification, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "local_echo",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CFriendMessagesIncomingMessageNotification, has_local_echo),
+ offsetof(CFriendMessagesIncomingMessageNotification, local_echo),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "message_no_bbcode",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CFriendMessagesIncomingMessageNotification, message_no_bbcode),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "low_priority",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CFriendMessagesIncomingMessageNotification, has_low_priority),
+ offsetof(CFriendMessagesIncomingMessageNotification, low_priority),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriend_messages__incoming_message__notification__field_indices_by_name[] = {
+ 1, /* field[1] = chat_entry_type */
+ 2, /* field[2] = from_limited_account */
+ 6, /* field[6] = local_echo */
+ 8, /* field[8] = low_priority */
+ 3, /* field[3] = message */
+ 7, /* field[7] = message_no_bbcode */
+ 5, /* field[5] = ordinal */
+ 4, /* field[4] = rtime32_server_timestamp */
+ 0, /* field[0] = steamid_friend */
+};
+static const ProtobufCIntRange cfriend_messages__incoming_message__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 9 }
+};
+const ProtobufCMessageDescriptor cfriend_messages__incoming_message__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendMessages_IncomingMessage_Notification",
+ "CFriendMessagesIncomingMessageNotification",
+ "CFriendMessagesIncomingMessageNotification",
+ "",
+ sizeof(CFriendMessagesIncomingMessageNotification),
+ 9,
+ cfriend_messages__incoming_message__notification__field_descriptors,
+ cfriend_messages__incoming_message__notification__field_indices_by_name,
+ 1, cfriend_messages__incoming_message__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const EMessageReactionType cfriend_messages__message_reaction__notification__reaction_type__default_value = EMESSAGE_REACTION_TYPE__k_EMessageReactionType_Invalid;
+static const ProtobufCFieldDescriptor cfriend_messages__message_reaction__notification__field_descriptors[7] =
+{
+ {
+ "steamid_friend",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CFriendMessagesMessageReactionNotification, has_steamid_friend),
+ offsetof(CFriendMessagesMessageReactionNotification, steamid_friend),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "server_timestamp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesMessageReactionNotification, has_server_timestamp),
+ offsetof(CFriendMessagesMessageReactionNotification, server_timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ordinal",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CFriendMessagesMessageReactionNotification, has_ordinal),
+ offsetof(CFriendMessagesMessageReactionNotification, ordinal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reactor",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_FIXED64,
+ offsetof(CFriendMessagesMessageReactionNotification, has_reactor),
+ offsetof(CFriendMessagesMessageReactionNotification, reactor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reaction_type",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CFriendMessagesMessageReactionNotification, has_reaction_type),
+ offsetof(CFriendMessagesMessageReactionNotification, reaction_type),
+ &emessage_reaction_type__descriptor,
+ &cfriend_messages__message_reaction__notification__reaction_type__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "reaction",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(CFriendMessagesMessageReactionNotification, reaction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "is_add",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(CFriendMessagesMessageReactionNotification, has_is_add),
+ offsetof(CFriendMessagesMessageReactionNotification, is_add),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned cfriend_messages__message_reaction__notification__field_indices_by_name[] = {
+ 6, /* field[6] = is_add */
+ 2, /* field[2] = ordinal */
+ 5, /* field[5] = reaction */
+ 4, /* field[4] = reaction_type */
+ 3, /* field[3] = reactor */
+ 1, /* field[1] = server_timestamp */
+ 0, /* field[0] = steamid_friend */
+};
+static const ProtobufCIntRange cfriend_messages__message_reaction__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor cfriend_messages__message_reaction__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CFriendMessages_MessageReaction_Notification",
+ "CFriendMessagesMessageReactionNotification",
+ "CFriendMessagesMessageReactionNotification",
+ "",
+ sizeof(CFriendMessagesMessageReactionNotification),
+ 7,
+ cfriend_messages__message_reaction__notification__field_descriptors,
+ cfriend_messages__message_reaction__notification__field_indices_by_name,
+ 1, cfriend_messages__message_reaction__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCEnumValue emessage_reaction_type__enum_values_by_number[3] =
+{
+ { "k_EMessageReactionType_Invalid", "EMESSAGE_REACTION_TYPE__k_EMessageReactionType_Invalid", 0 },
+ { "k_EMessageReactionType_Emoticon", "EMESSAGE_REACTION_TYPE__k_EMessageReactionType_Emoticon", 1 },
+ { "k_EMessageReactionType_Sticker", "EMESSAGE_REACTION_TYPE__k_EMessageReactionType_Sticker", 2 },
+};
+static const ProtobufCIntRange emessage_reaction_type__value_ranges[] = {
+{0, 0},{0, 3}
+};
+static const ProtobufCEnumValueIndex emessage_reaction_type__enum_values_by_name[3] =
+{
+ { "k_EMessageReactionType_Emoticon", 1 },
+ { "k_EMessageReactionType_Invalid", 0 },
+ { "k_EMessageReactionType_Sticker", 2 },
+};
+const ProtobufCEnumDescriptor emessage_reaction_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "EMessageReactionType",
+ "EMessageReactionType",
+ "EMessageReactionType",
+ "",
+ 3,
+ emessage_reaction_type__enum_values_by_number,
+ 3,
+ emessage_reaction_type__enum_values_by_name,
+ 1,
+ emessage_reaction_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
+static const ProtobufCMethodDescriptor friend_messages__method_descriptors[6] =
+{
+ { "GetRecentMessages", &cfriend_messages__get_recent_messages__request__descriptor, &cfriend_messages__get_recent_messages__response__descriptor },
+ { "GetActiveMessageSessions", &cfriends_messages__get_active_message_sessions__request__descriptor, &cfriends_messages__get_active_message_sessions__response__descriptor },
+ { "SendMessage", &cfriend_messages__send_message__request__descriptor, &cfriend_messages__send_message__response__descriptor },
+ { "AckMessage", &cfriend_messages__ack_message__notification__descriptor, &no_response__descriptor },
+ { "IsInFriendsUIBeta", &cfriend_messages__is_in_friends_uibeta__request__descriptor, &cfriend_messages__is_in_friends_uibeta__response__descriptor },
+ { "UpdateMessageReaction", &cfriend_messages__update_message_reaction__request__descriptor, &cfriend_messages__update_message_reaction__response__descriptor },
+};
+const unsigned friend_messages__method_indices_by_name[] = {
+ 3, /* AckMessage */
+ 1, /* GetActiveMessageSessions */
+ 0, /* GetRecentMessages */
+ 4, /* IsInFriendsUIBeta */
+ 2, /* SendMessage */
+ 5 /* UpdateMessageReaction */
+};
+const ProtobufCServiceDescriptor friend_messages__descriptor =
+{
+ PROTOBUF_C__SERVICE_DESCRIPTOR_MAGIC,
+ "FriendMessages",
+ "FriendMessages",
+ "FriendMessages",
+ "",
+ 6,
+ friend_messages__method_descriptors,
+ friend_messages__method_indices_by_name
+};
+void friend_messages__get_recent_messages(ProtobufCService *service,
+ const CFriendMessagesGetRecentMessagesRequest *input,
+ CFriendMessagesGetRecentMessagesResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &friend_messages__descriptor);
+ service->invoke(service, 0, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void friend_messages__get_active_message_sessions(ProtobufCService *service,
+ const CFriendsMessagesGetActiveMessageSessionsRequest *input,
+ CFriendsMessagesGetActiveMessageSessionsResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &friend_messages__descriptor);
+ service->invoke(service, 1, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void friend_messages__send_message(ProtobufCService *service,
+ const CFriendMessagesSendMessageRequest *input,
+ CFriendMessagesSendMessageResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &friend_messages__descriptor);
+ service->invoke(service, 2, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void friend_messages__ack_message(ProtobufCService *service,
+ const CFriendMessagesAckMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &friend_messages__descriptor);
+ service->invoke(service, 3, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void friend_messages__is_in_friends_uibeta(ProtobufCService *service,
+ const CFriendMessagesIsInFriendsUIBetaRequest *input,
+ CFriendMessagesIsInFriendsUIBetaResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &friend_messages__descriptor);
+ service->invoke(service, 4, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void friend_messages__update_message_reaction(ProtobufCService *service,
+ const CFriendMessagesUpdateMessageReactionRequest *input,
+ CFriendMessagesUpdateMessageReactionResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &friend_messages__descriptor);
+ service->invoke(service, 5, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void friend_messages__init (FriendMessages_Service *service,
+ FriendMessages_ServiceDestroy destroy)
+{
+ protobuf_c_service_generated_init (&service->base,
+ &friend_messages__descriptor,
+ (ProtobufCServiceDestroy) destroy);
+}
+static const ProtobufCMethodDescriptor friend_messages_client__method_descriptors[3] =
+{
+ { "IncomingMessage", &cfriend_messages__incoming_message__notification__descriptor, &no_response__descriptor },
+ { "NotifyAckMessageEcho", &cfriend_messages__ack_message__notification__descriptor, &no_response__descriptor },
+ { "MessageReaction", &cfriend_messages__message_reaction__notification__descriptor, &no_response__descriptor },
+};
+const unsigned friend_messages_client__method_indices_by_name[] = {
+ 0, /* IncomingMessage */
+ 2, /* MessageReaction */
+ 1 /* NotifyAckMessageEcho */
+};
+const ProtobufCServiceDescriptor friend_messages_client__descriptor =
+{
+ PROTOBUF_C__SERVICE_DESCRIPTOR_MAGIC,
+ "FriendMessagesClient",
+ "FriendMessagesClient",
+ "FriendMessagesClient",
+ "",
+ 3,
+ friend_messages_client__method_descriptors,
+ friend_messages_client__method_indices_by_name
+};
+void friend_messages_client__incoming_message(ProtobufCService *service,
+ const CFriendMessagesIncomingMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &friend_messages_client__descriptor);
+ service->invoke(service, 0, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void friend_messages_client__notify_ack_message_echo(ProtobufCService *service,
+ const CFriendMessagesAckMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &friend_messages_client__descriptor);
+ service->invoke(service, 1, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void friend_messages_client__message_reaction(ProtobufCService *service,
+ const CFriendMessagesMessageReactionNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &friend_messages_client__descriptor);
+ service->invoke(service, 2, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void friend_messages_client__init (FriendMessagesClient_Service *service,
+ FriendMessagesClient_ServiceDestroy destroy)
+{
+ protobuf_c_service_generated_init (&service->base,
+ &friend_messages_client__descriptor,
+ (ProtobufCServiceDestroy) destroy);
+}
diff --git a/protocols/Steam/src/protobuf-c/steammessages_friendmessages.steamclient.pb-c.h b/protocols/Steam/src/protobuf-c/steammessages_friendmessages.steamclient.pb-c.h
new file mode 100644
index 0000000000..9a747e890b
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_friendmessages.steamclient.pb-c.h
@@ -0,0 +1,693 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_friendmessages.steamclient.proto */
+
+#ifndef PROTOBUF_C_steammessages_5ffriendmessages_2esteamclient_2eproto__INCLUDED
+#define PROTOBUF_C_steammessages_5ffriendmessages_2esteamclient_2eproto__INCLUDED
+
+#include "protobuf-c.h"
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1000000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1004001 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "steammessages_base.pb-c.h"
+#include "steammessages_unified_base.steamclient.pb-c.h"
+
+struct CFriendMessagesGetRecentMessagesRequest;
+struct CFriendMessagesGetRecentMessagesResponse;
+struct CFriendMessagesGetRecentMessagesResponse__FriendMessage;
+struct CFriendMessagesGetRecentMessagesResponse__FriendMessage__MessageReaction;
+struct CFriendsMessagesGetActiveMessageSessionsRequest;
+struct CFriendsMessagesGetActiveMessageSessionsResponse;
+struct CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession;
+struct CFriendMessagesSendMessageRequest;
+struct CFriendMessagesSendMessageResponse;
+struct CFriendMessagesAckMessageNotification;
+struct CFriendMessagesIsInFriendsUIBetaRequest;
+struct CFriendMessagesIsInFriendsUIBetaResponse;
+struct CFriendMessagesUpdateMessageReactionRequest;
+struct CFriendMessagesUpdateMessageReactionResponse;
+struct CFriendMessagesIncomingMessageNotification;
+struct CFriendMessagesMessageReactionNotification;
+
+
+/* --- enums --- */
+
+typedef enum _EMessageReactionType {
+ EMESSAGE_REACTION_TYPE__k_EMessageReactionType_Invalid = 0,
+ EMESSAGE_REACTION_TYPE__k_EMessageReactionType_Emoticon = 1,
+ EMESSAGE_REACTION_TYPE__k_EMessageReactionType_Sticker = 2
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(EMESSAGE_REACTION_TYPE)
+} EMessageReactionType;
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor emessage_reaction_type__descriptor;
+extern const ProtobufCMessageDescriptor cfriend_messages__get_recent_messages__request__descriptor;
+extern const ProtobufCMessageDescriptor cfriend_messages__get_recent_messages__response__descriptor;
+extern const ProtobufCMessageDescriptor cfriend_messages__get_recent_messages__response__friend_message__descriptor;
+extern const ProtobufCMessageDescriptor cfriend_messages__get_recent_messages__response__friend_message__message_reaction__descriptor;
+extern const ProtobufCMessageDescriptor cfriends_messages__get_active_message_sessions__request__descriptor;
+extern const ProtobufCMessageDescriptor cfriends_messages__get_active_message_sessions__response__descriptor;
+extern const ProtobufCMessageDescriptor cfriends_messages__get_active_message_sessions__response__friend_message_session__descriptor;
+extern const ProtobufCMessageDescriptor cfriend_messages__send_message__request__descriptor;
+extern const ProtobufCMessageDescriptor cfriend_messages__send_message__response__descriptor;
+extern const ProtobufCMessageDescriptor cfriend_messages__ack_message__notification__descriptor;
+extern const ProtobufCMessageDescriptor cfriend_messages__is_in_friends_uibeta__request__descriptor;
+extern const ProtobufCMessageDescriptor cfriend_messages__is_in_friends_uibeta__response__descriptor;
+extern const ProtobufCMessageDescriptor cfriend_messages__update_message_reaction__request__descriptor;
+extern const ProtobufCMessageDescriptor cfriend_messages__update_message_reaction__response__descriptor;
+extern const ProtobufCMessageDescriptor cfriend_messages__incoming_message__notification__descriptor;
+extern const ProtobufCMessageDescriptor cfriend_messages__message_reaction__notification__descriptor;
+extern const ProtobufCServiceDescriptor friend_messages__descriptor;
+extern const ProtobufCServiceDescriptor friend_messages_client__descriptor;
+
+/* --- messages --- */
+
+extern "C" void message_init_generic(const ProtobufCMessageDescriptor * desc, ProtobufCMessage * message);
+
+struct CFriendMessagesGetRecentMessagesRequest : public ProtobufCppMessage
+{
+ CFriendMessagesGetRecentMessagesRequest() :
+ ProtobufCppMessage(cfriend_messages__get_recent_messages__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid1;
+ uint64_t steamid1;
+ protobuf_c_boolean has_steamid2;
+ uint64_t steamid2;
+ protobuf_c_boolean has_count;
+ uint32_t count;
+ protobuf_c_boolean has_most_recent_conversation;
+ protobuf_c_boolean most_recent_conversation;
+ protobuf_c_boolean has_rtime32_start_time;
+ uint32_t rtime32_start_time;
+ protobuf_c_boolean has_bbcode_format;
+ protobuf_c_boolean bbcode_format;
+ protobuf_c_boolean has_start_ordinal;
+ uint32_t start_ordinal;
+ protobuf_c_boolean has_time_last;
+ uint32_t time_last;
+ protobuf_c_boolean has_ordinal_last;
+ uint32_t ordinal_last;
+};
+
+struct CFriendMessagesGetRecentMessagesResponse__FriendMessage__MessageReaction : public ProtobufCppMessage
+{
+ CFriendMessagesGetRecentMessagesResponse__FriendMessage__MessageReaction() :
+ ProtobufCppMessage(cfriend_messages__get_recent_messages__response__friend_message__message_reaction__descriptor)
+ {}
+
+ protobuf_c_boolean has_reaction_type;
+ EMessageReactionType reaction_type;
+ char *reaction;
+ size_t n_reactors;
+ uint32_t *reactors;
+};
+
+struct CFriendMessagesGetRecentMessagesResponse__FriendMessage : public ProtobufCppMessage
+{
+ CFriendMessagesGetRecentMessagesResponse__FriendMessage() :
+ ProtobufCppMessage(cfriend_messages__get_recent_messages__response__friend_message__descriptor)
+ {}
+
+ protobuf_c_boolean has_accountid;
+ uint32_t accountid;
+ protobuf_c_boolean has_timestamp;
+ uint32_t timestamp;
+ char *message;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+ size_t n_reactions;
+ CFriendMessagesGetRecentMessagesResponse__FriendMessage__MessageReaction **reactions;
+};
+
+struct CFriendMessagesGetRecentMessagesResponse : public ProtobufCppMessage
+{
+ CFriendMessagesGetRecentMessagesResponse() :
+ ProtobufCppMessage(cfriend_messages__get_recent_messages__response__descriptor)
+ {}
+
+ size_t n_messages;
+ CFriendMessagesGetRecentMessagesResponse__FriendMessage **messages;
+ protobuf_c_boolean has_more_available;
+ protobuf_c_boolean more_available;
+};
+
+struct CFriendsMessagesGetActiveMessageSessionsRequest : public ProtobufCppMessage
+{
+ CFriendsMessagesGetActiveMessageSessionsRequest() :
+ ProtobufCppMessage(cfriends_messages__get_active_message_sessions__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_lastmessage_since;
+ uint32_t lastmessage_since;
+ protobuf_c_boolean has_only_sessions_with_messages;
+ protobuf_c_boolean only_sessions_with_messages;
+};
+
+struct CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession : public ProtobufCppMessage
+{
+ CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession() :
+ ProtobufCppMessage(cfriends_messages__get_active_message_sessions__response__friend_message_session__descriptor)
+ {}
+
+ protobuf_c_boolean has_accountid_friend;
+ uint32_t accountid_friend;
+ protobuf_c_boolean has_last_message;
+ uint32_t last_message;
+ protobuf_c_boolean has_last_view;
+ uint32_t last_view;
+ protobuf_c_boolean has_unread_message_count;
+ uint32_t unread_message_count;
+};
+
+struct CFriendsMessagesGetActiveMessageSessionsResponse : public ProtobufCppMessage
+{
+ CFriendsMessagesGetActiveMessageSessionsResponse() :
+ ProtobufCppMessage(cfriends_messages__get_active_message_sessions__response__descriptor)
+ {}
+
+ size_t n_message_sessions;
+ CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession **message_sessions;
+ protobuf_c_boolean has_timestamp;
+ uint32_t timestamp;
+};
+
+struct CFriendMessagesSendMessageRequest : public ProtobufCppMessage
+{
+ CFriendMessagesSendMessageRequest() :
+ ProtobufCppMessage(cfriend_messages__send_message__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_chat_entry_type;
+ int32_t chat_entry_type;
+ char *message;
+ protobuf_c_boolean has_contains_bbcode;
+ protobuf_c_boolean contains_bbcode;
+ protobuf_c_boolean has_echo_to_sender;
+ protobuf_c_boolean echo_to_sender;
+ protobuf_c_boolean has_low_priority;
+ protobuf_c_boolean low_priority;
+ char *client_message_id;
+};
+
+struct CFriendMessagesSendMessageResponse : public ProtobufCppMessage
+{
+ CFriendMessagesSendMessageResponse() :
+ ProtobufCppMessage(cfriend_messages__send_message__response__descriptor)
+ {}
+
+ char *modified_message;
+ protobuf_c_boolean has_server_timestamp;
+ uint32_t server_timestamp;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+ char *message_without_bb_code;
+};
+
+struct CFriendMessagesAckMessageNotification : public ProtobufCppMessage
+{
+ CFriendMessagesAckMessageNotification() :
+ ProtobufCppMessage(cfriend_messages__ack_message__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid_partner;
+ uint64_t steamid_partner;
+ protobuf_c_boolean has_timestamp;
+ uint32_t timestamp;
+};
+
+struct CFriendMessagesIsInFriendsUIBetaRequest : public ProtobufCppMessage
+{
+ CFriendMessagesIsInFriendsUIBetaRequest() :
+ ProtobufCppMessage(cfriend_messages__is_in_friends_uibeta__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+};
+
+struct CFriendMessagesIsInFriendsUIBetaResponse : public ProtobufCppMessage
+{
+ CFriendMessagesIsInFriendsUIBetaResponse() :
+ ProtobufCppMessage(cfriend_messages__is_in_friends_uibeta__response__descriptor)
+ {}
+
+ protobuf_c_boolean has_online_in_friendsui;
+ protobuf_c_boolean online_in_friendsui;
+ protobuf_c_boolean has_has_used_friendsui;
+ protobuf_c_boolean has_used_friendsui;
+};
+
+struct CFriendMessagesUpdateMessageReactionRequest : public ProtobufCppMessage
+{
+ CFriendMessagesUpdateMessageReactionRequest() :
+ ProtobufCppMessage(cfriend_messages__update_message_reaction__request__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid;
+ uint64_t steamid;
+ protobuf_c_boolean has_server_timestamp;
+ uint32_t server_timestamp;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+ protobuf_c_boolean has_reaction_type;
+ EMessageReactionType reaction_type;
+ char *reaction;
+ protobuf_c_boolean has_is_add;
+ protobuf_c_boolean is_add;
+};
+
+struct CFriendMessagesUpdateMessageReactionResponse : public ProtobufCppMessage
+{
+ CFriendMessagesUpdateMessageReactionResponse() :
+ ProtobufCppMessage(cfriend_messages__update_message_reaction__response__descriptor)
+ {}
+
+ size_t n_reactors;
+ uint32_t *reactors;
+};
+
+struct CFriendMessagesIncomingMessageNotification : public ProtobufCppMessage
+{
+ CFriendMessagesIncomingMessageNotification() :
+ ProtobufCppMessage(cfriend_messages__incoming_message__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid_friend;
+ uint64_t steamid_friend;
+ protobuf_c_boolean has_chat_entry_type;
+ int32_t chat_entry_type;
+ protobuf_c_boolean has_from_limited_account;
+ protobuf_c_boolean from_limited_account;
+ char *message;
+ protobuf_c_boolean has_rtime32_server_timestamp;
+ uint32_t rtime32_server_timestamp;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+ protobuf_c_boolean has_local_echo;
+ protobuf_c_boolean local_echo;
+ char *message_no_bbcode;
+ protobuf_c_boolean has_low_priority;
+ protobuf_c_boolean low_priority;
+};
+
+struct CFriendMessagesMessageReactionNotification : public ProtobufCppMessage
+{
+ CFriendMessagesMessageReactionNotification() :
+ ProtobufCppMessage(cfriend_messages__message_reaction__notification__descriptor)
+ {}
+
+ protobuf_c_boolean has_steamid_friend;
+ uint64_t steamid_friend;
+ protobuf_c_boolean has_server_timestamp;
+ uint32_t server_timestamp;
+ protobuf_c_boolean has_ordinal;
+ uint32_t ordinal;
+ protobuf_c_boolean has_reactor;
+ uint64_t reactor;
+ protobuf_c_boolean has_reaction_type;
+ EMessageReactionType reaction_type;
+ char *reaction;
+ protobuf_c_boolean has_is_add;
+ protobuf_c_boolean is_add;
+};
+
+size_t cfriend_messages__get_recent_messages__request__get_packed_size
+ (const CFriendMessagesGetRecentMessagesRequest *message);
+size_t cfriend_messages__get_recent_messages__request__pack
+ (const CFriendMessagesGetRecentMessagesRequest *message,
+ uint8_t *out);
+size_t cfriend_messages__get_recent_messages__request__pack_to_buffer
+ (const CFriendMessagesGetRecentMessagesRequest *message,
+ ProtobufCBuffer *buffer);
+CFriendMessagesGetRecentMessagesRequest *
+ cfriend_messages__get_recent_messages__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cfriend_messages__get_recent_messages__request__free_unpacked
+ (CFriendMessagesGetRecentMessagesRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cfriend_messages__get_recent_messages__response__get_packed_size
+ (const CFriendMessagesGetRecentMessagesResponse *message);
+size_t cfriend_messages__get_recent_messages__response__pack
+ (const CFriendMessagesGetRecentMessagesResponse *message,
+ uint8_t *out);
+size_t cfriend_messages__get_recent_messages__response__pack_to_buffer
+ (const CFriendMessagesGetRecentMessagesResponse *message,
+ ProtobufCBuffer *buffer);
+CFriendMessagesGetRecentMessagesResponse *
+ cfriend_messages__get_recent_messages__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cfriend_messages__get_recent_messages__response__free_unpacked
+ (CFriendMessagesGetRecentMessagesResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cfriends_messages__get_active_message_sessions__request__get_packed_size
+ (const CFriendsMessagesGetActiveMessageSessionsRequest *message);
+size_t cfriends_messages__get_active_message_sessions__request__pack
+ (const CFriendsMessagesGetActiveMessageSessionsRequest *message,
+ uint8_t *out);
+size_t cfriends_messages__get_active_message_sessions__request__pack_to_buffer
+ (const CFriendsMessagesGetActiveMessageSessionsRequest *message,
+ ProtobufCBuffer *buffer);
+CFriendsMessagesGetActiveMessageSessionsRequest *
+ cfriends_messages__get_active_message_sessions__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cfriends_messages__get_active_message_sessions__request__free_unpacked
+ (CFriendsMessagesGetActiveMessageSessionsRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cfriends_messages__get_active_message_sessions__response__get_packed_size
+ (const CFriendsMessagesGetActiveMessageSessionsResponse *message);
+size_t cfriends_messages__get_active_message_sessions__response__pack
+ (const CFriendsMessagesGetActiveMessageSessionsResponse *message,
+ uint8_t *out);
+size_t cfriends_messages__get_active_message_sessions__response__pack_to_buffer
+ (const CFriendsMessagesGetActiveMessageSessionsResponse *message,
+ ProtobufCBuffer *buffer);
+CFriendsMessagesGetActiveMessageSessionsResponse *
+ cfriends_messages__get_active_message_sessions__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cfriends_messages__get_active_message_sessions__response__free_unpacked
+ (CFriendsMessagesGetActiveMessageSessionsResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cfriend_messages__send_message__request__get_packed_size
+ (const CFriendMessagesSendMessageRequest *message);
+size_t cfriend_messages__send_message__request__pack
+ (const CFriendMessagesSendMessageRequest *message,
+ uint8_t *out);
+size_t cfriend_messages__send_message__request__pack_to_buffer
+ (const CFriendMessagesSendMessageRequest *message,
+ ProtobufCBuffer *buffer);
+CFriendMessagesSendMessageRequest *
+ cfriend_messages__send_message__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cfriend_messages__send_message__request__free_unpacked
+ (CFriendMessagesSendMessageRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cfriend_messages__send_message__response__get_packed_size
+ (const CFriendMessagesSendMessageResponse *message);
+size_t cfriend_messages__send_message__response__pack
+ (const CFriendMessagesSendMessageResponse *message,
+ uint8_t *out);
+size_t cfriend_messages__send_message__response__pack_to_buffer
+ (const CFriendMessagesSendMessageResponse *message,
+ ProtobufCBuffer *buffer);
+CFriendMessagesSendMessageResponse *
+ cfriend_messages__send_message__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cfriend_messages__send_message__response__free_unpacked
+ (CFriendMessagesSendMessageResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cfriend_messages__ack_message__notification__get_packed_size
+ (const CFriendMessagesAckMessageNotification *message);
+size_t cfriend_messages__ack_message__notification__pack
+ (const CFriendMessagesAckMessageNotification *message,
+ uint8_t *out);
+size_t cfriend_messages__ack_message__notification__pack_to_buffer
+ (const CFriendMessagesAckMessageNotification *message,
+ ProtobufCBuffer *buffer);
+CFriendMessagesAckMessageNotification *
+ cfriend_messages__ack_message__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cfriend_messages__ack_message__notification__free_unpacked
+ (CFriendMessagesAckMessageNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cfriend_messages__is_in_friends_uibeta__request__get_packed_size
+ (const CFriendMessagesIsInFriendsUIBetaRequest *message);
+size_t cfriend_messages__is_in_friends_uibeta__request__pack
+ (const CFriendMessagesIsInFriendsUIBetaRequest *message,
+ uint8_t *out);
+size_t cfriend_messages__is_in_friends_uibeta__request__pack_to_buffer
+ (const CFriendMessagesIsInFriendsUIBetaRequest *message,
+ ProtobufCBuffer *buffer);
+CFriendMessagesIsInFriendsUIBetaRequest *
+ cfriend_messages__is_in_friends_uibeta__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cfriend_messages__is_in_friends_uibeta__request__free_unpacked
+ (CFriendMessagesIsInFriendsUIBetaRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cfriend_messages__is_in_friends_uibeta__response__get_packed_size
+ (const CFriendMessagesIsInFriendsUIBetaResponse *message);
+size_t cfriend_messages__is_in_friends_uibeta__response__pack
+ (const CFriendMessagesIsInFriendsUIBetaResponse *message,
+ uint8_t *out);
+size_t cfriend_messages__is_in_friends_uibeta__response__pack_to_buffer
+ (const CFriendMessagesIsInFriendsUIBetaResponse *message,
+ ProtobufCBuffer *buffer);
+CFriendMessagesIsInFriendsUIBetaResponse *
+ cfriend_messages__is_in_friends_uibeta__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cfriend_messages__is_in_friends_uibeta__response__free_unpacked
+ (CFriendMessagesIsInFriendsUIBetaResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cfriend_messages__update_message_reaction__request__get_packed_size
+ (const CFriendMessagesUpdateMessageReactionRequest *message);
+size_t cfriend_messages__update_message_reaction__request__pack
+ (const CFriendMessagesUpdateMessageReactionRequest *message,
+ uint8_t *out);
+size_t cfriend_messages__update_message_reaction__request__pack_to_buffer
+ (const CFriendMessagesUpdateMessageReactionRequest *message,
+ ProtobufCBuffer *buffer);
+CFriendMessagesUpdateMessageReactionRequest *
+ cfriend_messages__update_message_reaction__request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cfriend_messages__update_message_reaction__request__free_unpacked
+ (CFriendMessagesUpdateMessageReactionRequest *message,
+ ProtobufCAllocator *allocator);
+size_t cfriend_messages__update_message_reaction__response__get_packed_size
+ (const CFriendMessagesUpdateMessageReactionResponse *message);
+size_t cfriend_messages__update_message_reaction__response__pack
+ (const CFriendMessagesUpdateMessageReactionResponse *message,
+ uint8_t *out);
+size_t cfriend_messages__update_message_reaction__response__pack_to_buffer
+ (const CFriendMessagesUpdateMessageReactionResponse *message,
+ ProtobufCBuffer *buffer);
+CFriendMessagesUpdateMessageReactionResponse *
+ cfriend_messages__update_message_reaction__response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cfriend_messages__update_message_reaction__response__free_unpacked
+ (CFriendMessagesUpdateMessageReactionResponse *message,
+ ProtobufCAllocator *allocator);
+size_t cfriend_messages__incoming_message__notification__get_packed_size
+ (const CFriendMessagesIncomingMessageNotification *message);
+size_t cfriend_messages__incoming_message__notification__pack
+ (const CFriendMessagesIncomingMessageNotification *message,
+ uint8_t *out);
+size_t cfriend_messages__incoming_message__notification__pack_to_buffer
+ (const CFriendMessagesIncomingMessageNotification *message,
+ ProtobufCBuffer *buffer);
+CFriendMessagesIncomingMessageNotification *
+ cfriend_messages__incoming_message__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cfriend_messages__incoming_message__notification__free_unpacked
+ (CFriendMessagesIncomingMessageNotification *message,
+ ProtobufCAllocator *allocator);
+size_t cfriend_messages__message_reaction__notification__get_packed_size
+ (const CFriendMessagesMessageReactionNotification *message);
+size_t cfriend_messages__message_reaction__notification__pack
+ (const CFriendMessagesMessageReactionNotification *message,
+ uint8_t *out);
+size_t cfriend_messages__message_reaction__notification__pack_to_buffer
+ (const CFriendMessagesMessageReactionNotification *message,
+ ProtobufCBuffer *buffer);
+CFriendMessagesMessageReactionNotification *
+ cfriend_messages__message_reaction__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void cfriend_messages__message_reaction__notification__free_unpacked
+ (CFriendMessagesMessageReactionNotification *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*CFriendMessagesGetRecentMessagesRequest_Closure)
+ (const CFriendMessagesGetRecentMessagesRequest *message,
+ void *closure_data);
+typedef void (*CFriendMessagesGetRecentMessagesResponse__FriendMessage__MessageReaction_Closure)
+ (const CFriendMessagesGetRecentMessagesResponse__FriendMessage__MessageReaction *message,
+ void *closure_data);
+typedef void (*CFriendMessagesGetRecentMessagesResponse__FriendMessage_Closure)
+ (const CFriendMessagesGetRecentMessagesResponse__FriendMessage *message,
+ void *closure_data);
+typedef void (*CFriendMessagesGetRecentMessagesResponse_Closure)
+ (const CFriendMessagesGetRecentMessagesResponse *message,
+ void *closure_data);
+typedef void (*CFriendsMessagesGetActiveMessageSessionsRequest_Closure)
+ (const CFriendsMessagesGetActiveMessageSessionsRequest *message,
+ void *closure_data);
+typedef void (*CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession_Closure)
+ (const CFriendsMessagesGetActiveMessageSessionsResponse__FriendMessageSession *message,
+ void *closure_data);
+typedef void (*CFriendsMessagesGetActiveMessageSessionsResponse_Closure)
+ (const CFriendsMessagesGetActiveMessageSessionsResponse *message,
+ void *closure_data);
+typedef void (*CFriendMessagesSendMessageRequest_Closure)
+ (const CFriendMessagesSendMessageRequest *message,
+ void *closure_data);
+typedef void (*CFriendMessagesSendMessageResponse_Closure)
+ (const CFriendMessagesSendMessageResponse *message,
+ void *closure_data);
+typedef void (*CFriendMessagesAckMessageNotification_Closure)
+ (const CFriendMessagesAckMessageNotification *message,
+ void *closure_data);
+typedef void (*CFriendMessagesIsInFriendsUIBetaRequest_Closure)
+ (const CFriendMessagesIsInFriendsUIBetaRequest *message,
+ void *closure_data);
+typedef void (*CFriendMessagesIsInFriendsUIBetaResponse_Closure)
+ (const CFriendMessagesIsInFriendsUIBetaResponse *message,
+ void *closure_data);
+typedef void (*CFriendMessagesUpdateMessageReactionRequest_Closure)
+ (const CFriendMessagesUpdateMessageReactionRequest *message,
+ void *closure_data);
+typedef void (*CFriendMessagesUpdateMessageReactionResponse_Closure)
+ (const CFriendMessagesUpdateMessageReactionResponse *message,
+ void *closure_data);
+typedef void (*CFriendMessagesIncomingMessageNotification_Closure)
+ (const CFriendMessagesIncomingMessageNotification *message,
+ void *closure_data);
+typedef void (*CFriendMessagesMessageReactionNotification_Closure)
+ (const CFriendMessagesMessageReactionNotification *message,
+ void *closure_data);
+
+/* --- services --- */
+
+typedef struct FriendMessages_Service FriendMessages_Service;
+struct FriendMessages_Service
+{
+ ProtobufCService base;
+ void (*get_recent_messages)(FriendMessages_Service *service,
+ const CFriendMessagesGetRecentMessagesRequest *input,
+ CFriendMessagesGetRecentMessagesResponse_Closure closure,
+ void *closure_data);
+ void (*get_active_message_sessions)(FriendMessages_Service *service,
+ const CFriendsMessagesGetActiveMessageSessionsRequest *input,
+ CFriendsMessagesGetActiveMessageSessionsResponse_Closure closure,
+ void *closure_data);
+ void (*send_message)(FriendMessages_Service *service,
+ const CFriendMessagesSendMessageRequest *input,
+ CFriendMessagesSendMessageResponse_Closure closure,
+ void *closure_data);
+ void (*ack_message)(FriendMessages_Service *service,
+ const CFriendMessagesAckMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*is_in_friends_uibeta)(FriendMessages_Service *service,
+ const CFriendMessagesIsInFriendsUIBetaRequest *input,
+ CFriendMessagesIsInFriendsUIBetaResponse_Closure closure,
+ void *closure_data);
+ void (*update_message_reaction)(FriendMessages_Service *service,
+ const CFriendMessagesUpdateMessageReactionRequest *input,
+ CFriendMessagesUpdateMessageReactionResponse_Closure closure,
+ void *closure_data);
+};
+typedef void (*FriendMessages_ServiceDestroy)(FriendMessages_Service *);
+void friend_messages__init (FriendMessages_Service *service,
+ FriendMessages_ServiceDestroy destroy);
+#define FRIEND_MESSAGES__BASE_INIT \
+ { &friend_messages__descriptor, protobuf_c_service_invoke_internal, NULL }
+#define FRIEND_MESSAGES__INIT(function_prefix__) \
+ { FRIEND_MESSAGES__BASE_INIT,\
+ function_prefix__ ## get_recent_messages,\
+ function_prefix__ ## get_active_message_sessions,\
+ function_prefix__ ## send_message,\
+ function_prefix__ ## ack_message,\
+ function_prefix__ ## is_in_friends_uibeta,\
+ function_prefix__ ## update_message_reaction }
+void friend_messages__get_recent_messages(ProtobufCService *service,
+ const CFriendMessagesGetRecentMessagesRequest *input,
+ CFriendMessagesGetRecentMessagesResponse_Closure closure,
+ void *closure_data);
+void friend_messages__get_active_message_sessions(ProtobufCService *service,
+ const CFriendsMessagesGetActiveMessageSessionsRequest *input,
+ CFriendsMessagesGetActiveMessageSessionsResponse_Closure closure,
+ void *closure_data);
+void friend_messages__send_message(ProtobufCService *service,
+ const CFriendMessagesSendMessageRequest *input,
+ CFriendMessagesSendMessageResponse_Closure closure,
+ void *closure_data);
+void friend_messages__ack_message(ProtobufCService *service,
+ const CFriendMessagesAckMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void friend_messages__is_in_friends_uibeta(ProtobufCService *service,
+ const CFriendMessagesIsInFriendsUIBetaRequest *input,
+ CFriendMessagesIsInFriendsUIBetaResponse_Closure closure,
+ void *closure_data);
+void friend_messages__update_message_reaction(ProtobufCService *service,
+ const CFriendMessagesUpdateMessageReactionRequest *input,
+ CFriendMessagesUpdateMessageReactionResponse_Closure closure,
+ void *closure_data);
+typedef struct FriendMessagesClient_Service FriendMessagesClient_Service;
+struct FriendMessagesClient_Service
+{
+ ProtobufCService base;
+ void (*incoming_message)(FriendMessagesClient_Service *service,
+ const CFriendMessagesIncomingMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*notify_ack_message_echo)(FriendMessagesClient_Service *service,
+ const CFriendMessagesAckMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*message_reaction)(FriendMessagesClient_Service *service,
+ const CFriendMessagesMessageReactionNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+};
+typedef void (*FriendMessagesClient_ServiceDestroy)(FriendMessagesClient_Service *);
+void friend_messages_client__init (FriendMessagesClient_Service *service,
+ FriendMessagesClient_ServiceDestroy destroy);
+#define FRIEND_MESSAGES_CLIENT__BASE_INIT \
+ { &friend_messages_client__descriptor, protobuf_c_service_invoke_internal, NULL }
+#define FRIEND_MESSAGES_CLIENT__INIT(function_prefix__) \
+ { FRIEND_MESSAGES_CLIENT__BASE_INIT,\
+ function_prefix__ ## incoming_message,\
+ function_prefix__ ## notify_ack_message_echo,\
+ function_prefix__ ## message_reaction }
+void friend_messages_client__incoming_message(ProtobufCService *service,
+ const CFriendMessagesIncomingMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void friend_messages_client__notify_ack_message_echo(ProtobufCService *service,
+ const CFriendMessagesAckMessageNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void friend_messages_client__message_reaction(ProtobufCService *service,
+ const CFriendMessagesMessageReactionNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_steammessages_5ffriendmessages_2esteamclient_2eproto__INCLUDED */
diff --git a/protocols/Steam/src/protobuf-c/steammessages_friendmessages.steamclient.proto b/protocols/Steam/src/protobuf-c/steammessages_friendmessages.steamclient.proto
new file mode 100644
index 0000000000..93114bdd54
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_friendmessages.steamclient.proto
@@ -0,0 +1,168 @@
+import "steammessages_base.proto";
+import "steammessages_unified_base.steamclient.proto";
+
+option cc_generic_services = true;
+
+enum EMessageReactionType {
+ k_EMessageReactionType_Invalid = 0;
+ k_EMessageReactionType_Emoticon = 1;
+ k_EMessageReactionType_Sticker = 2;
+}
+
+message CFriendMessages_GetRecentMessages_Request {
+ optional fixed64 steamid1 = 1;
+ optional fixed64 steamid2 = 2;
+ optional uint32 count = 3 [(description) = "If non-zero, cap the number of recent messages to return."];
+ optional bool most_recent_conversation = 4 [(description) = "Grab the block of chat from the most recent conversation (a ~5 minute period)"];
+ optional fixed32 rtime32_start_time = 5 [(description) = "If non-zero, return only messages with timestamps greater or equal to this. If zero, we only return messages from a recent time cutoff."];
+ optional bool bbcode_format = 6 [(description) = "Return the results with bbcode formatting."];
+ optional uint32 start_ordinal = 7 [(description) = "Combined with start time, only messages after this ordinal are returned (dedupes messages in same second)"];
+ optional uint32 time_last = 8 [(description) = "if present/non-zero, return only messages before this."];
+ optional uint32 ordinal_last = 9;
+}
+
+message CFriendMessages_GetRecentMessages_Response {
+ message FriendMessage {
+ message MessageReaction {
+ optional .EMessageReactionType reaction_type = 1 [default = k_EMessageReactionType_Invalid];
+ optional string reaction = 2;
+ repeated uint32 reactors = 3;
+ }
+
+ optional uint32 accountid = 1;
+ optional uint32 timestamp = 2;
+ optional string message = 3;
+ optional uint32 ordinal = 4;
+ repeated .CFriendMessages_GetRecentMessages_Response.FriendMessage.MessageReaction reactions = 5;
+ }
+
+ repeated .CFriendMessages_GetRecentMessages_Response.FriendMessage messages = 1 [(description) = "Array of messages, returned newest to oldest."];
+ optional bool more_available = 4;
+}
+
+message CFriendsMessages_GetActiveMessageSessions_Request {
+ optional uint32 lastmessage_since = 1 [(description) = "return only session information where a chat message has been sent since this time (for polling)"];
+ optional bool only_sessions_with_messages = 2 [(description) = "If non-zero, return only message sessions that have messages since our message cutoff. If zero, we return all active sessions."];
+}
+
+message CFriendsMessages_GetActiveMessageSessions_Response {
+ message FriendMessageSession {
+ optional uint32 accountid_friend = 1;
+ optional uint32 last_message = 2;
+ optional uint32 last_view = 3;
+ optional uint32 unread_message_count = 4;
+ }
+
+ repeated .CFriendsMessages_GetActiveMessageSessions_Response.FriendMessageSession message_sessions = 1;
+ optional uint32 timestamp = 2 [(description) = "This should be passed in the next request as lastmessage_since to poll for updates"];
+}
+
+message CFriendMessages_SendMessage_Request {
+ optional fixed64 steamid = 1;
+ optional int32 chat_entry_type = 2;
+ optional string message = 3;
+ optional bool contains_bbcode = 4;
+ optional bool echo_to_sender = 5;
+ optional bool low_priority = 6;
+ optional string client_message_id = 8;
+}
+
+message CFriendMessages_SendMessage_Response {
+ optional string modified_message = 1;
+ optional uint32 server_timestamp = 2;
+ optional uint32 ordinal = 3;
+ optional string message_without_bb_code = 4;
+}
+
+message CFriendMessages_AckMessage_Notification {
+ optional fixed64 steamid_partner = 1;
+ optional uint32 timestamp = 2;
+}
+
+message CFriendMessages_IsInFriendsUIBeta_Request {
+ optional fixed64 steamid = 1;
+}
+
+message CFriendMessages_IsInFriendsUIBeta_Response {
+ optional bool online_in_friendsui = 1;
+ optional bool has_used_friendsui = 2;
+}
+
+message CFriendMessages_UpdateMessageReaction_Request {
+ optional fixed64 steamid = 1;
+ optional uint32 server_timestamp = 2;
+ optional uint32 ordinal = 3;
+ optional .EMessageReactionType reaction_type = 4 [default = k_EMessageReactionType_Invalid];
+ optional string reaction = 5;
+ optional bool is_add = 6;
+}
+
+message CFriendMessages_UpdateMessageReaction_Response {
+ repeated uint32 reactors = 1;
+}
+
+message CFriendMessages_IncomingMessage_Notification {
+ optional fixed64 steamid_friend = 1;
+ optional int32 chat_entry_type = 2;
+ optional bool from_limited_account = 3;
+ optional string message = 4;
+ optional fixed32 rtime32_server_timestamp = 5;
+ optional uint32 ordinal = 6;
+ optional bool local_echo = 7;
+ optional string message_no_bbcode = 8;
+ optional bool low_priority = 9;
+}
+
+message CFriendMessages_MessageReaction_Notification {
+ optional fixed64 steamid_friend = 1;
+ optional uint32 server_timestamp = 2;
+ optional uint32 ordinal = 3;
+ optional fixed64 reactor = 4;
+ optional .EMessageReactionType reaction_type = 5 [default = k_EMessageReactionType_Invalid];
+ optional string reaction = 6;
+ optional bool is_add = 7;
+}
+
+service FriendMessages {
+ option (service_description) = "A service for relaying and logging friend messages (user-to-user chats and offline messaging)";
+
+ rpc GetRecentMessages (.CFriendMessages_GetRecentMessages_Request) returns (.CFriendMessages_GetRecentMessages_Response) {
+ option (method_description) = "Get a log of recent chat messages between two users";
+ }
+
+ rpc GetActiveMessageSessions (.CFriendsMessages_GetActiveMessageSessions_Request) returns (.CFriendsMessages_GetActiveMessageSessions_Response) {
+ option (method_description) = "Get information about recent offline messages and chats";
+ }
+
+ rpc SendMessage (.CFriendMessages_SendMessage_Request) returns (.CFriendMessages_SendMessage_Response) {
+ option (method_description) = "Send a chat message to a friend";
+ }
+
+ rpc AckMessage (.CFriendMessages_AckMessage_Notification) returns (.NoResponse) {
+ option (method_description) = "Acknowledge that we have seen the most recent message from a friend";
+ }
+
+ rpc IsInFriendsUIBeta (.CFriendMessages_IsInFriendsUIBeta_Request) returns (.CFriendMessages_IsInFriendsUIBeta_Response) {
+ option (method_description) = "See if a friend is in the friendsui beta.";
+ }
+
+ rpc UpdateMessageReaction (.CFriendMessages_UpdateMessageReaction_Request) returns (.CFriendMessages_UpdateMessageReaction_Response) {
+ option (method_description) = "Adds/removes a reaction to/from a friend message";
+ }
+}
+
+service FriendMessagesClient {
+ option (service_execution_site) = k_EProtoExecutionSiteSteamClient;
+
+ rpc IncomingMessage (.CFriendMessages_IncomingMessage_Notification) returns (.NoResponse) {
+ option (method_description) = "New chat message from a friend.";
+ }
+
+ rpc NotifyAckMessageEcho (.CFriendMessages_AckMessage_Notification) returns (.NoResponse) {
+ option (method_description) = "A session acked an unread message, echo to other sessions.";
+ }
+
+ rpc MessageReaction (.CFriendMessages_MessageReaction_Notification) returns (.NoResponse) {
+ option (method_description) = "New message reaction from a friend.";
+ }
+}
diff --git a/protocols/Steam/src/protobuf-c/steammessages_notifications.steamclient.pb-c.cpp b/protocols/Steam/src/protobuf-c/steammessages_notifications.steamclient.pb-c.cpp
new file mode 100644
index 0000000000..65a85442a1
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_notifications.steamclient.pb-c.cpp
@@ -0,0 +1,599 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_notifications.steamclient.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "steammessages_notifications.steamclient.pb-c.h"
+size_t steam_notification_data__get_packed_size
+ (const SteamNotificationData *message)
+{
+ assert(message->descriptor == &steam_notification_data__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t steam_notification_data__pack
+ (const SteamNotificationData *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &steam_notification_data__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t steam_notification_data__pack_to_buffer
+ (const SteamNotificationData *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &steam_notification_data__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+SteamNotificationData *
+ steam_notification_data__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (SteamNotificationData *)
+ protobuf_c_message_unpack (&steam_notification_data__descriptor,
+ allocator, len, data);
+}
+void steam_notification_data__free_unpacked
+ (SteamNotificationData *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &steam_notification_data__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t csteam_notification__notifications_received__notification__get_packed_size
+ (const CSteamNotificationNotificationsReceivedNotification *message)
+{
+ assert(message->descriptor == &csteam_notification__notifications_received__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t csteam_notification__notifications_received__notification__pack
+ (const CSteamNotificationNotificationsReceivedNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &csteam_notification__notifications_received__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t csteam_notification__notifications_received__notification__pack_to_buffer
+ (const CSteamNotificationNotificationsReceivedNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &csteam_notification__notifications_received__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CSteamNotificationNotificationsReceivedNotification *
+ csteam_notification__notifications_received__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CSteamNotificationNotificationsReceivedNotification *)
+ protobuf_c_message_unpack (&csteam_notification__notifications_received__notification__descriptor,
+ allocator, len, data);
+}
+void csteam_notification__notifications_received__notification__free_unpacked
+ (CSteamNotificationNotificationsReceivedNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &csteam_notification__notifications_received__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t steam_notification_preference__get_packed_size
+ (const SteamNotificationPreference *message)
+{
+ assert(message->descriptor == &steam_notification_preference__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t steam_notification_preference__pack
+ (const SteamNotificationPreference *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &steam_notification_preference__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t steam_notification_preference__pack_to_buffer
+ (const SteamNotificationPreference *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &steam_notification_preference__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+SteamNotificationPreference *
+ steam_notification_preference__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (SteamNotificationPreference *)
+ protobuf_c_message_unpack (&steam_notification_preference__descriptor,
+ allocator, len, data);
+}
+void steam_notification_preference__free_unpacked
+ (SteamNotificationPreference *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &steam_notification_preference__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+size_t csteam_notification__preferences_updated__notification__get_packed_size
+ (const CSteamNotificationPreferencesUpdatedNotification *message)
+{
+ assert(message->descriptor == &csteam_notification__preferences_updated__notification__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t csteam_notification__preferences_updated__notification__pack
+ (const CSteamNotificationPreferencesUpdatedNotification *message,
+ uint8_t *out)
+{
+ assert(message->descriptor == &csteam_notification__preferences_updated__notification__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t csteam_notification__preferences_updated__notification__pack_to_buffer
+ (const CSteamNotificationPreferencesUpdatedNotification *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->descriptor == &csteam_notification__preferences_updated__notification__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CSteamNotificationPreferencesUpdatedNotification *
+ csteam_notification__preferences_updated__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CSteamNotificationPreferencesUpdatedNotification *)
+ protobuf_c_message_unpack (&csteam_notification__preferences_updated__notification__descriptor,
+ allocator, len, data);
+}
+void csteam_notification__preferences_updated__notification__free_unpacked
+ (CSteamNotificationPreferencesUpdatedNotification *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->descriptor == &csteam_notification__preferences_updated__notification__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+
+static const ESteamNotificationType steam_notification_data__notification_type__default_value = ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_Invalid;
+static const ProtobufCFieldDescriptor steam_notification_data__field_descriptors[9] =
+{
+ {
+ "notification_id",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT64,
+ offsetof(SteamNotificationData, has_notification_id),
+ offsetof(SteamNotificationData, notification_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "notification_targets",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(SteamNotificationData, has_notification_targets),
+ offsetof(SteamNotificationData, notification_targets),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "notification_type",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(SteamNotificationData, has_notification_type),
+ offsetof(SteamNotificationData, notification_type),
+ &esteam_notification_type__descriptor,
+ &steam_notification_data__notification_type__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "body_data",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(SteamNotificationData, body_data),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "read",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(SteamNotificationData, has_read),
+ offsetof(SteamNotificationData, read),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "timestamp",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(SteamNotificationData, has_timestamp),
+ offsetof(SteamNotificationData, timestamp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "hidden",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(SteamNotificationData, has_hidden),
+ offsetof(SteamNotificationData, hidden),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "expiry",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(SteamNotificationData, has_expiry),
+ offsetof(SteamNotificationData, expiry),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "viewed",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(SteamNotificationData, has_viewed),
+ offsetof(SteamNotificationData, viewed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned steam_notification_data__field_indices_by_name[] = {
+ 3, /* field[3] = body_data */
+ 7, /* field[7] = expiry */
+ 6, /* field[6] = hidden */
+ 0, /* field[0] = notification_id */
+ 1, /* field[1] = notification_targets */
+ 2, /* field[2] = notification_type */
+ 4, /* field[4] = read */
+ 5, /* field[5] = timestamp */
+ 8, /* field[8] = viewed */
+};
+static const ProtobufCIntRange steam_notification_data__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 7, 4 },
+ { 0, 9 }
+};
+const ProtobufCMessageDescriptor steam_notification_data__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "SteamNotificationData",
+ "SteamNotificationData",
+ "SteamNotificationData",
+ "",
+ sizeof(SteamNotificationData),
+ 9,
+ steam_notification_data__field_descriptors,
+ steam_notification_data__field_indices_by_name,
+ 2, steam_notification_data__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor csteam_notification__notifications_received__notification__field_descriptors[4] =
+{
+ {
+ "notifications",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CSteamNotificationNotificationsReceivedNotification, n_notifications),
+ offsetof(CSteamNotificationNotificationsReceivedNotification, notifications),
+ &steam_notification_data__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "pending_gift_count",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CSteamNotificationNotificationsReceivedNotification, has_pending_gift_count),
+ offsetof(CSteamNotificationNotificationsReceivedNotification, pending_gift_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "pending_friend_count",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CSteamNotificationNotificationsReceivedNotification, has_pending_friend_count),
+ offsetof(CSteamNotificationNotificationsReceivedNotification, pending_friend_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "pending_family_invite_count",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(CSteamNotificationNotificationsReceivedNotification, has_pending_family_invite_count),
+ offsetof(CSteamNotificationNotificationsReceivedNotification, pending_family_invite_count),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned csteam_notification__notifications_received__notification__field_indices_by_name[] = {
+ 0, /* field[0] = notifications */
+ 3, /* field[3] = pending_family_invite_count */
+ 2, /* field[2] = pending_friend_count */
+ 1, /* field[1] = pending_gift_count */
+};
+static const ProtobufCIntRange csteam_notification__notifications_received__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor csteam_notification__notifications_received__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CSteamNotification_NotificationsReceived_Notification",
+ "CSteamNotificationNotificationsReceivedNotification",
+ "CSteamNotificationNotificationsReceivedNotification",
+ "",
+ sizeof(CSteamNotificationNotificationsReceivedNotification),
+ 4,
+ csteam_notification__notifications_received__notification__field_descriptors,
+ csteam_notification__notifications_received__notification__field_indices_by_name,
+ 1, csteam_notification__notifications_received__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ESteamNotificationType steam_notification_preference__notification_type__default_value = ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_Invalid;
+static const ProtobufCFieldDescriptor steam_notification_preference__field_descriptors[2] =
+{
+ {
+ "notification_type",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(SteamNotificationPreference, has_notification_type),
+ offsetof(SteamNotificationPreference, notification_type),
+ &esteam_notification_type__descriptor,
+ &steam_notification_preference__notification_type__default_value,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "notification_targets",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(SteamNotificationPreference, has_notification_targets),
+ offsetof(SteamNotificationPreference, notification_targets),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned steam_notification_preference__field_indices_by_name[] = {
+ 1, /* field[1] = notification_targets */
+ 0, /* field[0] = notification_type */
+};
+static const ProtobufCIntRange steam_notification_preference__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor steam_notification_preference__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "SteamNotificationPreference",
+ "SteamNotificationPreference",
+ "SteamNotificationPreference",
+ "",
+ sizeof(SteamNotificationPreference),
+ 2,
+ steam_notification_preference__field_descriptors,
+ steam_notification_preference__field_indices_by_name,
+ 1, steam_notification_preference__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCFieldDescriptor csteam_notification__preferences_updated__notification__field_descriptors[1] =
+{
+ {
+ "preferences",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CSteamNotificationPreferencesUpdatedNotification, n_preferences),
+ offsetof(CSteamNotificationPreferencesUpdatedNotification, preferences),
+ &steam_notification_preference__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned csteam_notification__preferences_updated__notification__field_indices_by_name[] = {
+ 0, /* field[0] = preferences */
+};
+static const ProtobufCIntRange csteam_notification__preferences_updated__notification__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor csteam_notification__preferences_updated__notification__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CSteamNotification_PreferencesUpdated_Notification",
+ "CSteamNotificationPreferencesUpdatedNotification",
+ "CSteamNotificationPreferencesUpdatedNotification",
+ "",
+ sizeof(CSteamNotificationPreferencesUpdatedNotification),
+ 1,
+ csteam_notification__preferences_updated__notification__field_descriptors,
+ csteam_notification__preferences_updated__notification__field_indices_by_name,
+ 1, csteam_notification__preferences_updated__notification__number_ranges,
+ NULL,NULL,NULL,NULL /* reserved[123] */
+};
+static const ProtobufCEnumValue esteam_notification_type__enum_values_by_number[28] =
+{
+ { "k_ESteamNotificationType_Invalid", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_Invalid", 0 },
+ { "k_ESteamNotificationType_Test", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_Test", 1 },
+ { "k_ESteamNotificationType_Gift", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_Gift", 2 },
+ { "k_ESteamNotificationType_Comment", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_Comment", 3 },
+ { "k_ESteamNotificationType_Item", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_Item", 4 },
+ { "k_ESteamNotificationType_FriendInvite", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_FriendInvite", 5 },
+ { "k_ESteamNotificationType_MajorSale", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_MajorSale", 6 },
+ { "k_ESteamNotificationType_PreloadAvailable", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_PreloadAvailable", 7 },
+ { "k_ESteamNotificationType_Wishlist", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_Wishlist", 8 },
+ { "k_ESteamNotificationType_TradeOffer", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_TradeOffer", 9 },
+ { "k_ESteamNotificationType_General", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_General", 10 },
+ { "k_ESteamNotificationType_HelpRequest", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_HelpRequest", 11 },
+ { "k_ESteamNotificationType_AsyncGame", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_AsyncGame", 12 },
+ { "k_ESteamNotificationType_ChatMsg", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_ChatMsg", 13 },
+ { "k_ESteamNotificationType_ModeratorMsg", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_ModeratorMsg", 14 },
+ { "k_ESteamNotificationType_ParentalFeatureAccessRequest", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_ParentalFeatureAccessRequest", 15 },
+ { "k_ESteamNotificationType_FamilyInvite", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_FamilyInvite", 16 },
+ { "k_ESteamNotificationType_FamilyPurchaseRequest", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_FamilyPurchaseRequest", 17 },
+ { "k_ESteamNotificationType_ParentalPlaytimeRequest", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_ParentalPlaytimeRequest", 18 },
+ { "k_ESteamNotificationType_FamilyPurchaseRequestResponse", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_FamilyPurchaseRequestResponse", 19 },
+ { "k_ESteamNotificationType_ParentalFeatureAccessResponse", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_ParentalFeatureAccessResponse", 20 },
+ { "k_ESteamNotificationType_ParentalPlaytimeResponse", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_ParentalPlaytimeResponse", 21 },
+ { "k_ESteamNotificationType_RequestedGameAdded", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_RequestedGameAdded", 22 },
+ { "k_ESteamNotificationType_SendToPhone", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_SendToPhone", 23 },
+ { "k_ESteamNotificationType_ClipDownloaded", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_ClipDownloaded", 24 },
+ { "k_ESteamNotificationType_2FAPrompt", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_2FAPrompt", 25 },
+ { "k_ESteamNotificationType_MobileConfirmation", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_MobileConfirmation", 26 },
+ { "k_ESteamNotificationType_PartnerEvent", "ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_PartnerEvent", 27 },
+};
+static const ProtobufCIntRange esteam_notification_type__value_ranges[] = {
+{0, 0},{0, 28}
+};
+static const ProtobufCEnumValueIndex esteam_notification_type__enum_values_by_name[28] =
+{
+ { "k_ESteamNotificationType_2FAPrompt", 25 },
+ { "k_ESteamNotificationType_AsyncGame", 12 },
+ { "k_ESteamNotificationType_ChatMsg", 13 },
+ { "k_ESteamNotificationType_ClipDownloaded", 24 },
+ { "k_ESteamNotificationType_Comment", 3 },
+ { "k_ESteamNotificationType_FamilyInvite", 16 },
+ { "k_ESteamNotificationType_FamilyPurchaseRequest", 17 },
+ { "k_ESteamNotificationType_FamilyPurchaseRequestResponse", 19 },
+ { "k_ESteamNotificationType_FriendInvite", 5 },
+ { "k_ESteamNotificationType_General", 10 },
+ { "k_ESteamNotificationType_Gift", 2 },
+ { "k_ESteamNotificationType_HelpRequest", 11 },
+ { "k_ESteamNotificationType_Invalid", 0 },
+ { "k_ESteamNotificationType_Item", 4 },
+ { "k_ESteamNotificationType_MajorSale", 6 },
+ { "k_ESteamNotificationType_MobileConfirmation", 26 },
+ { "k_ESteamNotificationType_ModeratorMsg", 14 },
+ { "k_ESteamNotificationType_ParentalFeatureAccessRequest", 15 },
+ { "k_ESteamNotificationType_ParentalFeatureAccessResponse", 20 },
+ { "k_ESteamNotificationType_ParentalPlaytimeRequest", 18 },
+ { "k_ESteamNotificationType_ParentalPlaytimeResponse", 21 },
+ { "k_ESteamNotificationType_PartnerEvent", 27 },
+ { "k_ESteamNotificationType_PreloadAvailable", 7 },
+ { "k_ESteamNotificationType_RequestedGameAdded", 22 },
+ { "k_ESteamNotificationType_SendToPhone", 23 },
+ { "k_ESteamNotificationType_Test", 1 },
+ { "k_ESteamNotificationType_TradeOffer", 9 },
+ { "k_ESteamNotificationType_Wishlist", 8 },
+};
+const ProtobufCEnumDescriptor esteam_notification_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "ESteamNotificationType",
+ "ESteamNotificationType",
+ "ESteamNotificationType",
+ "",
+ 28,
+ esteam_notification_type__enum_values_by_number,
+ 28,
+ esteam_notification_type__enum_values_by_name,
+ 1,
+ esteam_notification_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
+static const ProtobufCMethodDescriptor steam_notification_client__method_descriptors[2] =
+{
+ { "NotificationsReceived", &csteam_notification__notifications_received__notification__descriptor, &no_response__descriptor },
+ { "PreferencesUpdated", &csteam_notification__preferences_updated__notification__descriptor, &no_response__descriptor },
+};
+const unsigned steam_notification_client__method_indices_by_name[] = {
+ 0, /* NotificationsReceived */
+ 1 /* PreferencesUpdated */
+};
+const ProtobufCServiceDescriptor steam_notification_client__descriptor =
+{
+ PROTOBUF_C__SERVICE_DESCRIPTOR_MAGIC,
+ "SteamNotificationClient",
+ "SteamNotificationClient",
+ "SteamNotificationClient",
+ "",
+ 2,
+ steam_notification_client__method_descriptors,
+ steam_notification_client__method_indices_by_name
+};
+void steam_notification_client__notifications_received(ProtobufCService *service,
+ const CSteamNotificationNotificationsReceivedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &steam_notification_client__descriptor);
+ service->invoke(service, 0, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void steam_notification_client__preferences_updated(ProtobufCService *service,
+ const CSteamNotificationPreferencesUpdatedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data)
+{
+ assert(service->descriptor == &steam_notification_client__descriptor);
+ service->invoke(service, 1, (const ProtobufCMessage *) input, (ProtobufCClosure) closure, closure_data);
+}
+void steam_notification_client__init (SteamNotificationClient_Service *service,
+ SteamNotificationClient_ServiceDestroy destroy)
+{
+ protobuf_c_service_generated_init (&service->base,
+ &steam_notification_client__descriptor,
+ (ProtobufCServiceDestroy) destroy);
+}
diff --git a/protocols/Steam/src/protobuf-c/steammessages_notifications.steamclient.pb-c.h b/protocols/Steam/src/protobuf-c/steammessages_notifications.steamclient.pb-c.h
new file mode 100644
index 0000000000..583e617686
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_notifications.steamclient.pb-c.h
@@ -0,0 +1,251 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: steammessages_notifications.steamclient.proto */
+
+#ifndef PROTOBUF_C_steammessages_5fnotifications_2esteamclient_2eproto__INCLUDED
+#define PROTOBUF_C_steammessages_5fnotifications_2esteamclient_2eproto__INCLUDED
+
+#include "protobuf-c.h"
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1000000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1004001 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "steammessages_base.pb-c.h"
+#include "steammessages_unified_base.steamclient.pb-c.h"
+
+struct SteamNotificationData;
+struct CSteamNotificationNotificationsReceivedNotification;
+struct SteamNotificationPreference;
+struct CSteamNotificationPreferencesUpdatedNotification;
+
+
+/* --- enums --- */
+
+typedef enum _ESteamNotificationType {
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_Invalid = 0,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_Test = 1,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_Gift = 2,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_Comment = 3,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_Item = 4,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_FriendInvite = 5,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_MajorSale = 6,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_PreloadAvailable = 7,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_Wishlist = 8,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_TradeOffer = 9,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_General = 10,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_HelpRequest = 11,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_AsyncGame = 12,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_ChatMsg = 13,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_ModeratorMsg = 14,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_ParentalFeatureAccessRequest = 15,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_FamilyInvite = 16,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_FamilyPurchaseRequest = 17,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_ParentalPlaytimeRequest = 18,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_FamilyPurchaseRequestResponse = 19,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_ParentalFeatureAccessResponse = 20,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_ParentalPlaytimeResponse = 21,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_RequestedGameAdded = 22,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_SendToPhone = 23,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_ClipDownloaded = 24,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_2FAPrompt = 25,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_MobileConfirmation = 26,
+ ESTEAM_NOTIFICATION_TYPE__k_ESteamNotificationType_PartnerEvent = 27
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(ESTEAM_NOTIFICATION_TYPE)
+} ESteamNotificationType;
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor esteam_notification_type__descriptor;
+extern const ProtobufCMessageDescriptor steam_notification_data__descriptor;
+extern const ProtobufCMessageDescriptor csteam_notification__notifications_received__notification__descriptor;
+extern const ProtobufCMessageDescriptor steam_notification_preference__descriptor;
+extern const ProtobufCMessageDescriptor csteam_notification__preferences_updated__notification__descriptor;
+extern const ProtobufCServiceDescriptor steam_notification_client__descriptor;
+
+/* --- messages --- */
+
+extern "C" void message_init_generic(const ProtobufCMessageDescriptor * desc, ProtobufCMessage * message);
+
+struct SteamNotificationData : public ProtobufCppMessage
+{
+ SteamNotificationData() :
+ ProtobufCppMessage(steam_notification_data__descriptor)
+ {}
+
+ protobuf_c_boolean has_notification_id;
+ uint64_t notification_id;
+ protobuf_c_boolean has_notification_targets;
+ uint32_t notification_targets;
+ protobuf_c_boolean has_notification_type;
+ ESteamNotificationType notification_type;
+ char *body_data;
+ protobuf_c_boolean has_read;
+ protobuf_c_boolean read;
+ protobuf_c_boolean has_timestamp;
+ uint32_t timestamp;
+ protobuf_c_boolean has_hidden;
+ protobuf_c_boolean hidden;
+ protobuf_c_boolean has_expiry;
+ uint32_t expiry;
+ protobuf_c_boolean has_viewed;
+ uint32_t viewed;
+};
+
+struct CSteamNotificationNotificationsReceivedNotification : public ProtobufCppMessage
+{
+ CSteamNotificationNotificationsReceivedNotification() :
+ ProtobufCppMessage(csteam_notification__notifications_received__notification__descriptor)
+ {}
+
+ size_t n_notifications;
+ SteamNotificationData **notifications;
+ protobuf_c_boolean has_pending_gift_count;
+ uint32_t pending_gift_count;
+ protobuf_c_boolean has_pending_friend_count;
+ uint32_t pending_friend_count;
+ protobuf_c_boolean has_pending_family_invite_count;
+ uint32_t pending_family_invite_count;
+};
+
+struct SteamNotificationPreference : public ProtobufCppMessage
+{
+ SteamNotificationPreference() :
+ ProtobufCppMessage(steam_notification_preference__descriptor)
+ {}
+
+ protobuf_c_boolean has_notification_type;
+ ESteamNotificationType notification_type;
+ protobuf_c_boolean has_notification_targets;
+ uint32_t notification_targets;
+};
+
+struct CSteamNotificationPreferencesUpdatedNotification : public ProtobufCppMessage
+{
+ CSteamNotificationPreferencesUpdatedNotification() :
+ ProtobufCppMessage(csteam_notification__preferences_updated__notification__descriptor)
+ {}
+
+ size_t n_preferences;
+ SteamNotificationPreference **preferences;
+};
+
+size_t steam_notification_data__get_packed_size
+ (const SteamNotificationData *message);
+size_t steam_notification_data__pack
+ (const SteamNotificationData *message,
+ uint8_t *out);
+size_t steam_notification_data__pack_to_buffer
+ (const SteamNotificationData *message,
+ ProtobufCBuffer *buffer);
+SteamNotificationData *
+ steam_notification_data__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void steam_notification_data__free_unpacked
+ (SteamNotificationData *message,
+ ProtobufCAllocator *allocator);
+size_t csteam_notification__notifications_received__notification__get_packed_size
+ (const CSteamNotificationNotificationsReceivedNotification *message);
+size_t csteam_notification__notifications_received__notification__pack
+ (const CSteamNotificationNotificationsReceivedNotification *message,
+ uint8_t *out);
+size_t csteam_notification__notifications_received__notification__pack_to_buffer
+ (const CSteamNotificationNotificationsReceivedNotification *message,
+ ProtobufCBuffer *buffer);
+CSteamNotificationNotificationsReceivedNotification *
+ csteam_notification__notifications_received__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void csteam_notification__notifications_received__notification__free_unpacked
+ (CSteamNotificationNotificationsReceivedNotification *message,
+ ProtobufCAllocator *allocator);
+size_t steam_notification_preference__get_packed_size
+ (const SteamNotificationPreference *message);
+size_t steam_notification_preference__pack
+ (const SteamNotificationPreference *message,
+ uint8_t *out);
+size_t steam_notification_preference__pack_to_buffer
+ (const SteamNotificationPreference *message,
+ ProtobufCBuffer *buffer);
+SteamNotificationPreference *
+ steam_notification_preference__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void steam_notification_preference__free_unpacked
+ (SteamNotificationPreference *message,
+ ProtobufCAllocator *allocator);
+size_t csteam_notification__preferences_updated__notification__get_packed_size
+ (const CSteamNotificationPreferencesUpdatedNotification *message);
+size_t csteam_notification__preferences_updated__notification__pack
+ (const CSteamNotificationPreferencesUpdatedNotification *message,
+ uint8_t *out);
+size_t csteam_notification__preferences_updated__notification__pack_to_buffer
+ (const CSteamNotificationPreferencesUpdatedNotification *message,
+ ProtobufCBuffer *buffer);
+CSteamNotificationPreferencesUpdatedNotification *
+ csteam_notification__preferences_updated__notification__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void csteam_notification__preferences_updated__notification__free_unpacked
+ (CSteamNotificationPreferencesUpdatedNotification *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*SteamNotificationData_Closure)
+ (const SteamNotificationData *message,
+ void *closure_data);
+typedef void (*CSteamNotificationNotificationsReceivedNotification_Closure)
+ (const CSteamNotificationNotificationsReceivedNotification *message,
+ void *closure_data);
+typedef void (*SteamNotificationPreference_Closure)
+ (const SteamNotificationPreference *message,
+ void *closure_data);
+typedef void (*CSteamNotificationPreferencesUpdatedNotification_Closure)
+ (const CSteamNotificationPreferencesUpdatedNotification *message,
+ void *closure_data);
+
+/* --- services --- */
+
+typedef struct SteamNotificationClient_Service SteamNotificationClient_Service;
+struct SteamNotificationClient_Service
+{
+ ProtobufCService base;
+ void (*notifications_received)(SteamNotificationClient_Service *service,
+ const CSteamNotificationNotificationsReceivedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+ void (*preferences_updated)(SteamNotificationClient_Service *service,
+ const CSteamNotificationPreferencesUpdatedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+};
+typedef void (*SteamNotificationClient_ServiceDestroy)(SteamNotificationClient_Service *);
+void steam_notification_client__init (SteamNotificationClient_Service *service,
+ SteamNotificationClient_ServiceDestroy destroy);
+#define STEAM_NOTIFICATION_CLIENT__BASE_INIT \
+ { &steam_notification_client__descriptor, protobuf_c_service_invoke_internal, NULL }
+#define STEAM_NOTIFICATION_CLIENT__INIT(function_prefix__) \
+ { STEAM_NOTIFICATION_CLIENT__BASE_INIT,\
+ function_prefix__ ## notifications_received,\
+ function_prefix__ ## preferences_updated }
+void steam_notification_client__notifications_received(ProtobufCService *service,
+ const CSteamNotificationNotificationsReceivedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+void steam_notification_client__preferences_updated(ProtobufCService *service,
+ const CSteamNotificationPreferencesUpdatedNotification *input,
+ NoResponse_Closure closure,
+ void *closure_data);
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_steammessages_5fnotifications_2esteamclient_2eproto__INCLUDED */
diff --git a/protocols/Steam/src/protobuf-c/steammessages_notifications.steamclient.proto b/protocols/Steam/src/protobuf-c/steammessages_notifications.steamclient.proto
new file mode 100644
index 0000000000..16f8353aeb
--- /dev/null
+++ b/protocols/Steam/src/protobuf-c/steammessages_notifications.steamclient.proto
@@ -0,0 +1,70 @@
+import "steammessages_base.proto";
+import "steammessages_unified_base.steamclient.proto";
+
+option cc_generic_services = true;
+
+enum ESteamNotificationType {
+ k_ESteamNotificationType_Invalid = 0;
+ k_ESteamNotificationType_Test = 1;
+ k_ESteamNotificationType_Gift = 2;
+ k_ESteamNotificationType_Comment = 3;
+ k_ESteamNotificationType_Item = 4;
+ k_ESteamNotificationType_FriendInvite = 5;
+ k_ESteamNotificationType_MajorSale = 6;
+ k_ESteamNotificationType_PreloadAvailable = 7;
+ k_ESteamNotificationType_Wishlist = 8;
+ k_ESteamNotificationType_TradeOffer = 9;
+ k_ESteamNotificationType_General = 10;
+ k_ESteamNotificationType_HelpRequest = 11;
+ k_ESteamNotificationType_AsyncGame = 12;
+ k_ESteamNotificationType_ChatMsg = 13;
+ k_ESteamNotificationType_ModeratorMsg = 14;
+ k_ESteamNotificationType_ParentalFeatureAccessRequest = 15;
+ k_ESteamNotificationType_FamilyInvite = 16;
+ k_ESteamNotificationType_FamilyPurchaseRequest = 17;
+ k_ESteamNotificationType_ParentalPlaytimeRequest = 18;
+ k_ESteamNotificationType_FamilyPurchaseRequestResponse = 19;
+ k_ESteamNotificationType_ParentalFeatureAccessResponse = 20;
+ k_ESteamNotificationType_ParentalPlaytimeResponse = 21;
+ k_ESteamNotificationType_RequestedGameAdded = 22;
+ k_ESteamNotificationType_SendToPhone = 23;
+ k_ESteamNotificationType_ClipDownloaded = 24;
+ k_ESteamNotificationType_2FAPrompt = 25;
+ k_ESteamNotificationType_MobileConfirmation = 26;
+ k_ESteamNotificationType_PartnerEvent = 27;
+}
+
+message SteamNotificationData {
+ optional uint64 notification_id = 1;
+ optional uint32 notification_targets = 2;
+ optional .ESteamNotificationType notification_type = 3 [default = k_ESteamNotificationType_Invalid];
+ optional string body_data = 4;
+ optional bool read = 7;
+ optional uint32 timestamp = 8;
+ optional bool hidden = 9;
+ optional uint32 expiry = 10;
+ optional uint32 viewed = 11;
+}
+
+message CSteamNotification_NotificationsReceived_Notification {
+ repeated .SteamNotificationData notifications = 1;
+ optional uint32 pending_gift_count = 2;
+ optional uint32 pending_friend_count = 3;
+ optional uint32 pending_family_invite_count = 4;
+}
+
+message SteamNotificationPreference {
+ optional .ESteamNotificationType notification_type = 1 [default = k_ESteamNotificationType_Invalid];
+ optional uint32 notification_targets = 2;
+}
+
+message CSteamNotification_PreferencesUpdated_Notification {
+ repeated .SteamNotificationPreference preferences = 1;
+}
+
+service SteamNotificationClient {
+ option (service_execution_site) = k_EProtoExecutionSiteSteamClient;
+
+ rpc NotificationsReceived (.CSteamNotification_NotificationsReceived_Notification) returns (.NoResponse);
+ rpc PreferencesUpdated (.CSteamNotification_PreferencesUpdated_Notification) returns (.NoResponse);
+}
diff --git a/protocols/Steam/src/protobuf-c/steammessages_unified_base.steamclient.proto b/protocols/Steam/src/protobuf-c/steammessages_unified_base.steamclient.proto
index b6feede149..fa67ca05f8 100644
--- a/protocols/Steam/src/protobuf-c/steammessages_unified_base.steamclient.proto
+++ b/protocols/Steam/src/protobuf-c/steammessages_unified_base.steamclient.proto
@@ -1,4 +1,4 @@
-import "google/protobuf/descriptor.proto";
+import "descriptor.proto";
option optimize_for = SPEED;
option cc_generic_services = false;
diff --git a/protocols/Steam/src/resource.h b/protocols/Steam/src/resource.h
index 639b4f013f..d165d518bf 100644
--- a/protocols/Steam/src/resource.h
+++ b/protocols/Steam/src/resource.h
@@ -11,9 +11,6 @@
#define IDI_GAMING 101
#define IDD_PASSWORD_EDITOR 107
#define IDC_SAVEPERMANENTLY 108
-#define IDD_CAPTCHA 118
-#define IDD_GUARD 119
-#define IDD_TWOFACTOR 120
#define IDC_SN 1001
#define IDC_PW 1002
#define IDC_PASSWORD 1002
@@ -32,11 +29,9 @@
#define IDC_BLOCK 1059
#define IDC_BM_LIST 1064
#define IDC_LIST 1065
-#define IDC_TEXT 1082
#define IDC_POLLINGERRORLIMIT 1085
#define IDC_POLLINGERRORLIMITSPIN 1086
#define IDC_OPENDOMAIN 1200
-#define IDC_GETDOMAIN 1200
// Next default values for new objects
//
diff --git a/protocols/Steam/src/stdafx.cxx b/protocols/Steam/src/stdafx.cxx
index 13f28e1314..f111565f38 100644
--- a/protocols/Steam/src/stdafx.cxx
+++ b/protocols/Steam/src/stdafx.cxx
@@ -1,5 +1,5 @@
/*
-Copyright (C) 2012-24 Miranda NG team (https://miranda-ng.org)
+Copyright (C) 2012-25 Miranda NG team (https://miranda-ng.org)
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
diff --git a/protocols/Steam/src/stdafx.h b/protocols/Steam/src/stdafx.h
index c25e13d337..7a5621f2be 100644
--- a/protocols/Steam/src/stdafx.h
+++ b/protocols/Steam/src/stdafx.h
@@ -7,11 +7,13 @@
#include <time.h>
#include <map>
+#include <regex>
#include <vector>
#include <string>
#include <algorithm>
#include <newpluginapi.h>
+#include <m_chat_int.h>
#include <m_contacts.h>
#include <m_database.h>
#include <m_langpack.h>
@@ -36,15 +38,26 @@
#include <m_http.h>
#include <m_system.h>
+extern "C"
+{
+ #include "../../libs/zlib/src/unzip.h"
+}
+
#include "resource.h"
#include "version.h"
#include "protobuf-c/steammessages_auth.steamclient.pb-c.h"
+#include "protobuf-c/steammessages_chat.steamclient.pb-c.h"
+#include "protobuf-c/steammessages_clientserver.pb-c.h"
+#include "protobuf-c/steammessages_clientserver_2.pb-c.h"
+#include "protobuf-c/steammessages_clientserver_appinfo.pb-c.h"
#include "protobuf-c/steammessages_clientserver_login.pb-c.h"
+#include "protobuf-c/steammessages_deviceauth.steamclient.pb-c.h"
+#include "protobuf-c/steammessages_friendmessages.steamclient.pb-c.h"
+#include "protobuf-c/steammessages_notifications.steamclient.pb-c.h"
#include "proto.h"
-#define MODULE "Steam"
-#define DB_KEY_LASTMSGTS "LastMessageTS"
+#define MODULENAME "Steam"
#define STEAM_API_TIMEOUT 20
#define STEAM_API_IDLEOUT_AWAY 600
@@ -64,23 +77,15 @@ extern HANDLE hExtraXStatus;
#define STEAM_DB_GETEVENTTEXT_CHATSTATES "/GetEventText2000"
#define STEAM_DB_EVENT_CHATSTATES_GONE 1
-#define now() time(0)
-
#include "steam_dialogs.h"
-#include "http_request.h"
#include "api/enums.h"
#include "steam_proto.h"
+#include "steam_utils.h"
-#include "api/app_info.h"
-#include "api/avatar.h"
#include "api/captcha.h"
#include "api/friend.h"
-#include "api/friend_list.h"
-#include "api/history.h"
-#include "api/message.h"
#include "api/pending.h"
-#include "api/rsa_key.h"
#include "api/search.h"
#include "api/session.h"
diff --git a/protocols/Steam/src/steam_avatars.cpp b/protocols/Steam/src/steam_avatars.cpp
index 2a7de109ca..762a06d368 100644
--- a/protocols/Steam/src/steam_avatars.cpp
+++ b/protocols/Steam/src/steam_avatars.cpp
@@ -23,17 +23,18 @@ bool CSteamProto::GetDbAvatarInfo(PROTO_AVATAR_INFORMATION &pai)
return true;
}
-void CSteamProto::CheckAvatarChange(MCONTACT hContact, std::string avatarUrl)
+void CSteamProto::CheckAvatarChange(MCONTACT hContact, const char *avatarHash)
{
- if (avatarUrl.empty())
- return;
-
// Check for avatar change
- ptrA oldAvatarUrl(getStringA(hContact, "AvatarUrl"));
- bool update_required = (!oldAvatarUrl || avatarUrl.compare(oldAvatarUrl));
+ ptrA oldAvatarHash(getStringA(hContact, "AvatarHash"));
+ bool update_required = mir_strcmp(oldAvatarHash, avatarHash) != 0;
- if (update_required)
- setString(hContact, "AvatarUrl", avatarUrl.c_str());
+ if (update_required) {
+ if (avatarHash)
+ setString(hContact, "AvatarHash", avatarHash);
+ else
+ delSetting(hContact, "AvatarHash");
+ }
if (!hContact) {
PROTO_AVATAR_INFORMATION ai = { 0 };
@@ -53,8 +54,8 @@ INT_PTR CSteamProto::GetAvatarInfo(WPARAM wParam, LPARAM lParam)
PROTO_AVATAR_INFORMATION *pai = (PROTO_AVATAR_INFORMATION *)lParam;
- ptrA avatarUrl(getStringA(pai->hContact, "AvatarUrl"));
- if (!avatarUrl)
+ ptrA avatarHash(getStringA(pai->hContact, "AvatarHash"));
+ if (!avatarHash)
return GAIR_NOAVATAR;
if (GetDbAvatarInfo(*pai)) {
@@ -67,7 +68,8 @@ INT_PTR CSteamProto::GetAvatarInfo(WPARAM wParam, LPARAM lParam)
needLoad = (wParam & GAIF_FORCE) || !fileExist;
if (needLoad) {
- SendRequest(new GetAvatarRequest(avatarUrl), &CSteamProto::OnGotAvatar, (void *)pai->hContact);
+ CMStringA szUrl(FORMAT, "https://avatars.steamstatic.com/%s_full.jpg", avatarHash.get());
+ SendRequest(new HttpRequest(REQUEST_GET, szUrl), &CSteamProto::OnGotAvatar, (void *)pai->hContact);
return GAIR_WAITFOR;
}
if (fileExist)
diff --git a/protocols/Steam/src/steam_bbcodes.cpp b/protocols/Steam/src/steam_bbcodes.cpp
new file mode 100644
index 0000000000..98c8d0c4b1
--- /dev/null
+++ b/protocols/Steam/src/steam_bbcodes.cpp
@@ -0,0 +1,166 @@
+/*
+Copyright (C) 2012-25 Miranda NG team (https://miranda-ng.org)
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation version 2
+of the License.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#include "stdafx.h"
+
+void EncodeBbcodes(SESSION_INFO *si, CMStringW &wszText)
+{
+ int idx = wszText.Find(':');
+ if (idx != -1) {
+ CMStringW wszNick(wszText.Left(idx));
+ for (auto &it : si->getUserList()) {
+ if (wszNick == it->pszNick) {
+ wszText.Delete(0, idx + 1);
+
+ CMStringW wszReplace(FORMAT, L"[mention=%lld]@%s[/mention]", SteamIdToAccountId(_wtoi64(it->pszUID)), it->pszNick);
+ wszText = wszReplace + wszText;
+ break;
+ }
+ }
+ }
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
+struct BBCode
+{
+ CMStringA szTag, szValue, szBody;
+ std::map<CMStringA, CMStringA> attrs;
+};
+
+static bool p2str(CMStringA &str, const char *&text, const char *subStr)
+{
+ if (auto *p = strpbrk(text, subStr)) {
+ str.Append(text, p - text);
+ text = p;
+ return true;
+ }
+
+ return false;
+}
+
+int parseBbcode(const char *p, BBCode &ret)
+{
+ auto *pSave = p;
+
+ while (isalpha(*p))
+ ret.szTag.AppendChar(*p++);
+
+ // [tag=value][/tag]
+ if (*p == '=') {
+ if (!p2str(ret.szValue, p, "]"))
+ return -1;
+ }
+ // [tag attr=value][/tag]
+ else if (*p == ' ') {
+ p++;
+ while (*p != ']') {
+ CMStringA szName, szValue;
+ if (!p2str(szName, p, "="))
+ return -1;
+
+ if (*++p == '\"') {
+ auto *p1 = strchr(++p, '\"');
+ if (p1 == nullptr)
+ return -1;
+
+ szValue.Append(p, p1 - p);
+ p = p1 + 1;
+ }
+ else {
+ if (!p2str(szValue, p, " ]"))
+ return -1;
+ }
+
+ ret.attrs[szName] = szValue;
+ if (*p == ' ')
+ p++;
+ }
+ }
+ // [tag][/tag]
+ else if (*p != ']')
+ return -1;
+
+ p++; // skip first ]
+
+ CMStringA szClose = "[/" + ret.szTag + "]";
+ auto *pEnd = strstr(p, szClose);
+ if (pEnd == nullptr)
+ return -1;
+
+ if (pEnd != p)
+ ret.szValue.Append(p, pEnd - p);
+
+ return pEnd + szClose.GetLength() - pSave;
+}
+
+void CSteamProto::DecodeBbcodes(SESSION_INFO *si, CMStringA &szText)
+{
+ for (int idx = szText.Find('['); idx != -1; idx = szText.Find('[', idx + 1)) {
+ BBCode code;
+ int iLength = parseBbcode(szText.c_str() + idx + 1, code) + 1;
+ if (iLength == 0)
+ continue;
+
+ bool bPlaceFirst = false;
+ CMStringA szReplace;
+ if (code.szTag == "emoticon")
+ szReplace.Format(":%s:", code.szValue.c_str());
+ else if (code.szTag == "sticker")
+ szReplace.Format(":%s:", code.attrs["type"].c_str());
+ else if (code.szTag == "mention") {
+ CMStringW wszId(FORMAT, L"%lld", AccountIdToSteamId(_atoi64(code.szValue)));
+ if (auto *pUser = g_chatApi.UM_FindUser(si, wszId)) {
+ szReplace.Format("%s:", T2Utf(pUser->pszNick).get());
+ bPlaceFirst = true;
+ }
+ }
+ else if (code.szTag == "lobbyinvite") {
+ szReplace = TranslateU("You were invited to play a game");
+ }
+ else if (code.szTag == "img") {
+ auto szUrl = code.attrs["src"];
+ if (szUrl.IsEmpty())
+ szUrl = code.attrs["thumbnail_src"];
+
+ if (!szUrl.IsEmpty())
+ szReplace = "[url]" + szUrl + "[/url]";
+
+ szUrl = code.attrs["associated_app"];
+ if (!szUrl.IsEmpty()) {
+ CMStringA szSetting = "AppInfo_" + szUrl;
+ ptrA szName(g_plugin.getUStringA(szSetting));
+ if (szName)
+ szReplace.AppendFormat("\r\n%s: %s", TranslateU("Associated application"), szName.get());
+ else
+ SendAppInfoRequest(atoi(szUrl));
+ }
+ }
+ else if (code.szTag == "spoiler") {
+ szReplace = code.szValue;
+ }
+ else continue;
+
+ szText.Delete(idx, iLength);
+ if (!szReplace.IsEmpty()) {
+ if (bPlaceFirst)
+ szText = szReplace + szText;
+ else
+ szText.Insert(idx, szReplace);
+ }
+ }
+}
diff --git a/protocols/Steam/src/steam_chats.cpp b/protocols/Steam/src/steam_chats.cpp
new file mode 100644
index 0000000000..c56a34e9b1
--- /dev/null
+++ b/protocols/Steam/src/steam_chats.cpp
@@ -0,0 +1,462 @@
+/*
+Copyright (C) 2012-25 Miranda NG team (https://miranda-ng.org)
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation version 2
+of the License.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#include "stdafx.h"
+
+void CSteamProto::SendGetChatsRequest()
+{
+ CChatRoomGetMyChatRoomGroupsRequest request;
+ WSSendService(GetMyChatRoomGroups, request);
+}
+
+void CSteamProto::OnGetMyChats(const CChatRoomGetMyChatRoomGroupsResponse &reply, const CMsgProtoBufHeader &hdr)
+{
+ if (hdr.failed())
+ return;
+
+ std::map<MCONTACT, bool> chatIds;
+ for (unsigned i = 0; i < reply.n_chat_room_groups; i++) {
+ auto *pGroup = reply.chat_room_groups[i]->group_summary;
+ ProcessGroupChat(pGroup);
+
+ for (unsigned k = 0; k < pGroup->n_chat_rooms; k++) {
+ auto *pChat = pGroup->chat_rooms[k];
+ CMStringW wszId(FORMAT, L"%lld_%lld", pGroup->chat_group_id, pChat->chat_id);
+
+ if (auto *si = Chat_Find(wszId, m_szModuleName))
+ chatIds[si->hContact] = true;
+ }
+ }
+
+ // clean garbage
+ for (auto &cc : AccContacts())
+ if (Contact::IsGroupChat(cc, m_szModuleName) == GCW_CHATROOM && chatIds.find(cc) == chatIds.end())
+ db_delete_contact(cc, CDF_DEL_CONTACT);
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
+void CSteamProto::OnChatChanged(const ChatRoomClientNotifyChatGroupUserStateChangedNotification &reply, const CMsgProtoBufHeader &hdr)
+{
+ if (hdr.failed())
+ return;
+
+ switch (reply.user_action) {
+ case ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Joined:
+ ProcessGroupChat(reply.group_summary);
+ break;
+
+ case ECHAT_ROOM_MEMBER_STATE_CHANGE__k_EChatRoomMemberStateChange_Parted:
+ LeaveGroupChat(reply.chat_group_id);
+ break;
+ }
+}
+
+void CSteamProto::ProcessGroupChat(const CChatRoomGetChatRoomGroupSummaryResponse *pGroup)
+{
+ CMStringW wszGrpName;
+ if (pGroup->n_chat_rooms > 1 && pGroup->chat_group_name) {
+ wszGrpName = CMStringW(m_wszGroupName) + L"\\" + Utf2T(pGroup->chat_group_name);
+ if (!Clist_GroupExists(wszGrpName))
+ Clist_GroupCreate(0, wszGrpName);
+ }
+
+ SESSION_INFO *pOwner = 0;
+
+ for (unsigned k = 0; k < pGroup->n_chat_rooms; k++) {
+ std::vector<uint64_t> ids;
+
+ auto *pChat = pGroup->chat_rooms[k];
+ CMStringW wszId(FORMAT, L"%lld_%lld", pGroup->chat_group_id, pChat->chat_id);
+
+ CMStringW wszTitle(Utf2T(pChat->chat_name));
+ if (wszTitle.IsEmpty())
+ wszTitle = Utf2T(pGroup->chat_group_name);
+
+ auto *si = Chat_NewSession(GCW_CHATROOM, m_szModuleName, wszId, wszTitle);
+ if (pOwner == 0) {
+ if (!si->arStatuses.getCount()) {
+ Chat_AddGroup(si, TranslateT("Owner"));
+ Chat_AddGroup(si, TranslateT("Participant"));
+
+ for (unsigned j = 0; j < pGroup->n_top_members; j++) {
+ uint64_t iSteamId = AccountIdToSteamId(pGroup->top_members[j]);
+ CMStringW wszUserId(FORMAT, L"%lld", iSteamId), wszNick;
+
+ GCEVENT gce = { si, GC_EVENT_JOIN };
+ gce.pszUID.w = wszUserId;
+
+ if (iSteamId == m_iSteamId) {
+ gce.bIsMe = true;
+ wszNick = getMStringW("Nick");
+ }
+ else if (MCONTACT hContact = GetContact(iSteamId))
+ wszNick = Clist_GetContactDisplayName(hContact);
+ else {
+ CMStringA szSetting(FORMAT, "UserInfo_%lld", iSteamId);
+ ptrW szName(g_plugin.getWStringA(szSetting));
+ if (szName)
+ wszNick = szName;
+ else {
+ ids.push_back(iSteamId);
+ {
+ mir_cslock lck(m_csChats);
+ m_chatContactInfo[iSteamId] = si;
+ }
+ wszNick = L"@" + wszUserId;
+ }
+ }
+
+ gce.pszNick.w = wszNick;
+ gce.pszStatus.w = (pGroup->top_members[j] == pGroup->accountid_owner) ? TranslateT("Owner") : TranslateT("Participant");
+ Chat_Event(&gce);
+ }
+ }
+ pOwner = si;
+ }
+ else si->pParent = pOwner;
+
+ setDword(si->hContact, DBKEY_CHAT_ID, pChat->chat_id);
+ if (!wszGrpName.IsEmpty())
+ Clist_SetGroup(si->hContact, wszGrpName);
+
+ if (mir_strlen(pGroup->chat_group_tagline)) {
+ Utf2T wszTopic(pGroup->chat_group_tagline);
+ Chat_SetStatusbarText(si, wszTopic);
+
+ GCEVENT gce = { si, GC_EVENT_TOPIC };
+ gce.pszText.w = wszTopic;
+ gce.time = time(0);
+ Chat_Event(&gce);
+ }
+
+ Chat_Control(si, WINDOW_HIDDEN);
+ Chat_Control(si, SESSION_ONLINE);
+
+ if (!ids.empty())
+ SendUserInfoRequest(ids);
+
+ if (pChat->voice_allowed)
+ ExtraIcon_SetIcon(hExtraXStatus, si->hContact, Skin_GetIconHandle(SKINICON_OTHER_SOUND));
+
+ uint32_t dwLastMsgId = getDword(si->hContact, DBKEY_LASTMSG);
+ if (pChat->time_last_message > dwLastMsgId)
+ SendGetChatHistory(si->hContact, dwLastMsgId);
+ }
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
+void CSteamProto::OnGotClanInfo(const CMsgClientClanState &reply, const CMsgProtoBufHeader &hdr)
+{
+ if (hdr.failed())
+ return;
+
+ CMStringW wszId(FORMAT, L"%lld", reply.steamid_clan);
+ auto *si = Chat_Find(wszId, m_szModuleName);
+ if (si == nullptr) {
+ si = Chat_NewSession(GCW_SERVER, m_szModuleName, wszId, reply.name_info ? Utf2T(reply.name_info->clan_name) : wszId.c_str());
+ Chat_Control(si, WINDOW_HIDDEN);
+ Chat_Control(si, SESSION_ONLINE);
+ }
+
+ GCEVENT gce = { si, GC_EVENT_INFORMATION };
+ gce.time = time(0);
+
+ if (reply.user_counts) {
+ CMStringW wszText;
+ auto &C = *reply.user_counts;
+
+ if (C.has_members)
+ wszText.AppendFormat(L"%d %s\r\n", C.members, TranslateT("total members"));
+ if (C.has_online)
+ wszText.AppendFormat(L"%d %s\r\n", C.online, TranslateT("online members"));
+ if (C.has_chatting)
+ wszText.AppendFormat(L"%d %s\r\n", C.chatting, TranslateT("chatting"));
+ if (C.has_in_game)
+ wszText.AppendFormat(L"%d %s\r\n", C.in_game, TranslateT("in game"));
+
+ if (!wszText.IsEmpty()) {
+ gce.pszText.w = wszText;
+ Chat_Event(&gce);
+ }
+ }
+
+ for (unsigned n = 0; n < reply.n_announcements; n++) {
+ auto *E = reply.announcements[n];
+ Utf2T wszText(E->headline);
+
+ gce.time = E->event_time;
+ gce.pszText.w = wszText;
+ Chat_Event(&gce);
+ }
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
+void CSteamProto::SendGetChatHistory(MCONTACT hContact, uint32_t iLastMsgId)
+{
+ CChatRoomGetMessageHistoryRequest request;
+ request.chat_group_id = GetId(hContact, DBKEY_STEAM_ID); request.has_chat_group_id = true;
+ request.chat_id = getDword(hContact, DBKEY_CHAT_ID); request.has_chat_id = true;
+ request.start_time = iLastMsgId; request.has_start_time = true;
+ WSSendService(GetChatHistory, request, (void*)hContact);
+}
+
+void CSteamProto::OnGetChatHistory(const CChatRoomGetMessageHistoryResponse &reply, const CMsgProtoBufHeader &hdr)
+{
+ if (hdr.failed())
+ return;
+
+ std::vector<uint64_t> ids;
+
+ if (auto *si = Chat_Find(UINT_PTR(GetRequestInfo(hdr.jobid_target)), m_szModuleName)) {
+ uint32_t iLastMsg = getDword(si->hContact, DBKEY_LASTMSG);
+ uint32_t iChatId = getDword(si->hContact, DBKEY_CHAT_ID);
+
+ for (int i = (int)reply.n_messages - 1; i >= 0; i--) {
+ auto *pMsg = reply.messages[i];
+ if (pMsg->server_timestamp > iLastMsg)
+ iLastMsg = pMsg->server_timestamp;
+
+ // some slack, skip it
+ if (pMsg->server_message)
+ continue;
+
+ auto iSteamId = AccountIdToSteamId(pMsg->sender);
+ char szMsgId[100], szUserId[100];
+ mir_snprintf(szMsgId, "%d_%d", iChatId, pMsg->server_timestamp);
+ _i64toa(iSteamId, szUserId, 10);
+
+ _A2T wszUserId(szUserId);
+ USERINFO ui = {};
+ ui.pszUID = wszUserId;
+ if (!si->getUserList().find(&ui)) {
+ ids.push_back(iSteamId);
+
+ mir_cslock lck(m_csChats);
+ m_chatContactInfo[iSteamId] = si;
+ }
+
+ CMStringA szText(pMsg->message);
+ DecodeBbcodes(si, szText);
+
+ DB::EventInfo dbei(db_event_getById(m_szModuleName, szMsgId));
+ dbei.flags |= DBEF_UTF;
+ dbei.eventType = EVENTTYPE_MESSAGE;
+ dbei.szModule = m_szModuleName;
+ dbei.cbBlob = szText.GetLength();
+ replaceStr(dbei.pBlob, szText.Detach());
+ dbei.iTimestamp = pMsg->server_timestamp;
+ dbei.szId = szMsgId;
+ dbei.szUserId = szUserId;
+
+ if (dbei.getEvent())
+ db_event_edit(dbei.getEvent(), &dbei, true);
+ else
+ db_event_add(si->hContact, &dbei);
+ }
+
+ setDword(si->hContact, DBKEY_LASTMSG, iLastMsg);
+ }
+
+ if (!ids.empty())
+ SendUserInfoRequest(ids);
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
+void CSteamProto::OnGetChatMessage(const CChatRoomIncomingChatMessageNotification &reply, const CMsgProtoBufHeader &hdr)
+{
+ if (hdr.failed())
+ return;
+
+ std::vector<uint64_t> ids;
+
+ CMStringW wszId(FORMAT, L"%lld_%lld", reply.chat_group_id, reply.chat_id);
+ if (auto *si = Chat_Find(wszId, m_szModuleName)) {
+ char szMsgId[100], szUserId[100];
+ mir_snprintf(szMsgId, "%lld_%d", reply.chat_id, reply.timestamp);
+ _i64toa(reply.steamid_sender, szUserId, 10);
+
+ CMStringA szText(reply.message);
+ DecodeBbcodes(si, szText);
+
+ _A2T wszUserId(szUserId);
+ USERINFO ui = {};
+ ui.pszUID = wszUserId;
+ if (!si->getUserList().find(&ui)) {
+ ids.push_back(reply.steamid_sender);
+
+ mir_cslock lck(m_csChats);
+ m_chatContactInfo[reply.steamid_sender] = si;
+ }
+
+ DB::EventInfo dbei(db_event_getById(m_szModuleName, szMsgId));
+ dbei.flags |= DBEF_UTF;
+ dbei.eventType = EVENTTYPE_MESSAGE;
+ dbei.szModule = m_szModuleName;
+ dbei.cbBlob = szText.GetLength();
+ replaceStr(dbei.pBlob, szText.Detach());
+ dbei.iTimestamp = reply.timestamp;
+ dbei.szId = szMsgId;
+ dbei.szUserId = szUserId;
+
+ if (dbei.getEvent())
+ db_event_edit(dbei.getEvent(), &dbei, true);
+ else
+ db_event_add(si->hContact, &dbei);
+ }
+
+ if (!ids.empty())
+ SendUserInfoRequest(ids);
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
+INT_PTR CSteamProto::SvcLeaveChat(WPARAM hContact, LPARAM)
+{
+ CChatRoomLeaveChatRoomGroupRequest request;
+ if (Contact::IsGroupChat(hContact) == GCW_SERVER)
+ request.chat_group_id = GetId(hContact, DBKEY_GROUP_ID);
+ else
+ request.chat_group_id = GetId(hContact, DBKEY_STEAM_ID);
+ request.has_chat_group_id = true;
+ WSSendService(LeaveChatGroup, request);
+ return 0;
+}
+
+void CSteamProto::LeaveGroupChat(int64_t chatGroupId)
+{
+ std::vector<MCONTACT> ids;
+
+ for (auto &cc : AccContacts()) {
+ if (!Contact::IsGroupChat(cc) || GetId(cc, DBKEY_STEAM_ID) != chatGroupId)
+ continue;
+
+ CMStringW wszId(FORMAT, L"%lld_%d", chatGroupId, getDword(cc, DBKEY_CHAT_ID));
+ if (auto *si = Chat_Find(wszId, m_szModuleName))
+ Chat_Terminate(si);
+
+ ids.push_back(cc);
+ }
+
+ for (auto &cc: ids)
+ db_delete_contact(cc, CDF_FROM_SERVER);
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
+enum
+{
+ IDM_LEAVE = 1,
+};
+
+int CSteamProto::GcEventHook(WPARAM, LPARAM lParam)
+{
+ GCHOOK *gch = (GCHOOK *)lParam;
+ if (gch == nullptr)
+ return 0;
+
+ auto *si = gch->si;
+ if (mir_strcmpi(si->pszModule, m_szModuleName))
+ return 0;
+
+ switch (gch->iType) {
+ case GC_USER_MESSAGE:
+ if (gch->ptszText && mir_wstrlen(gch->ptszText) > 0) {
+ CMStringW wszText(gch->ptszText);
+ wszText.TrimRight();
+ EncodeBbcodes(si, wszText);
+ T2Utf szText(wszText);
+
+ CChatRoomSendChatMessageRequest request;
+ request.chat_group_id = _wtoi64(si->ptszID); request.has_chat_group_id = true;
+ request.chat_id = getDword(si->hContact, DBKEY_CHAT_ID); request.has_chat_id = true;
+ request.echo_to_sender = request.has_echo_to_sender = true;
+ request.message = szText;
+ WSSendService(SendChatMessage, request);
+ }
+ break;
+
+ case GC_USER_PRIVMESS:
+ Chat_SendPrivateMessage(gch);
+ break;
+
+ case GC_USER_LOGMENU:
+ Chat_LogMenu(gch);
+ break;
+
+ case GC_USER_NICKLISTMENU:
+ break;
+ }
+ return 0;
+}
+
+void CSteamProto::Chat_SendPrivateMessage(GCHOOK *gch)
+{
+ uint64_t iSteamId = _wtoi64(gch->ptszUID);
+ MCONTACT hContact = GetContact(iSteamId);
+ if (!hContact) {
+ PROTOSEARCHRESULT psr = { sizeof(psr) };
+ psr.id.w = (wchar_t *)gch->ptszUID;
+ psr.firstName.w = (wchar_t *)gch->ptszNick;
+
+ hContact = AddToList(PALF_TEMPORARY, &psr);
+ if (hContact == 0)
+ return;
+
+ setWString(hContact, "Nick", gch->ptszNick);
+ Contact::Hide(hContact);
+ db_set_dw(hContact, "Ignore", "Mask1", 0);
+ }
+
+ CallService(MS_MSG_SENDMESSAGE, hContact, 0);
+}
+
+void CSteamProto::Chat_LogMenu(GCHOOK *gch)
+{
+ switch (gch->dwData) {
+ case IDM_LEAVE:
+ SvcLeaveChat(gch->si->hContact, 0);
+ break;
+ }
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
+static gc_item sttLogListItems[] =
+{
+ { LPGENW("&Leave chat session"), IDM_LEAVE, MENU_ITEM }
+};
+
+int CSteamProto::GcMenuHook(WPARAM, LPARAM lParam)
+{
+ GCMENUITEMS *gcmi = (GCMENUITEMS *)lParam;
+ if (gcmi == nullptr)
+ return 0;
+
+ if (mir_strcmpi(gcmi->pszModule, m_szModuleName))
+ return 0;
+
+ if (gcmi->Type == MENU_ON_LOG) {
+ Chat_AddMenuItems(gcmi->hMenu, _countof(sttLogListItems), sttLogListItems, &g_plugin);
+ }
+ else if (gcmi->Type == MENU_ON_NICKLIST) {
+ }
+ return 0;
+}
diff --git a/protocols/Steam/src/steam_contacts.cpp b/protocols/Steam/src/steam_contacts.cpp
index 8f0d7e3306..7cb747e244 100644
--- a/protocols/Steam/src/steam_contacts.cpp
+++ b/protocols/Steam/src/steam_contacts.cpp
@@ -28,7 +28,7 @@ void CSteamProto::SetContactStatus(MCONTACT hContact, uint16_t status)
// if contact is offline, remove played game info
delSetting(hContact, "GameID");
delSetting(hContact, "ServerIP");
- delSetting(hContact, "ServerID");
+
// clear also xstatus
delSetting(hContact, "XStatusId");
delSetting(hContact, "XStatusName");
@@ -62,178 +62,179 @@ MCONTACT CSteamProto::GetContactFromAuthEvent(MEVENT hEvent)
return DbGetAuthEventContact(&dbei);
}
-MCONTACT CSteamProto::GetContact(const char *steamId)
+MCONTACT CSteamProto::GetContact(int64_t steamId)
{
- for (auto &hContact : AccContacts()) {
- ptrA cSteamId(getStringA(hContact, DBKEY_STEAM_ID));
- if (!mir_strcmp(cSteamId, steamId))
+ for (auto &hContact : AccContacts())
+ if (GetId(hContact, DBKEY_STEAM_ID) == steamId)
return hContact;
- }
+
return NULL;
}
-void CSteamProto::UpdateContactDetails(MCONTACT hContact, const JSONNode &data)
+void CSteamProto::OnGotFriendInfo(const CMsgClientPersonaState &reply, const CMsgProtoBufHeader &)
{
- // set common data
- CMStringW nick = data["personaname"].as_mstring();
- setWString(hContact, "Nick", nick);
-
- json_string homepage = data["profileurl"].as_string();
- setString(hContact, "Homepage", homepage.c_str());
-
- json_string primaryClanId = data["primaryclanid"].as_string();
- setString(hContact, "PrimaryClanID", primaryClanId.c_str());
-
- // set name
- const JSONNode &node = data["realname"];
- if (node) {
- CMStringW realName = node.as_mstring();
- if (!realName.IsEmpty()) {
- int pos = realName.Find(L' ', 1);
- if (pos != -1) {
- setWString(hContact, "FirstName", realName.Mid(0, pos));
- setWString(hContact, "LastName", realName.Mid(pos + 1));
- }
- else {
- setWString(hContact, "FirstName", realName);
- delSetting(hContact, "LastName");
+ for (int i = 0; i < reply.n_friends; i++) {
+ auto *F = reply.friends[i];
+ SESSION_INFO *si = nullptr;
+ {
+ mir_cslock lck(m_csChats);
+ auto it = m_chatContactInfo.find(F->friendid);
+ if (it != m_chatContactInfo.end()) {
+ si = it->second;
+ m_chatContactInfo.erase(it);
}
}
- }
- else {
- delSetting(hContact, "FirstName");
- delSetting(hContact, "LastName");
- }
- // avatar
- bool biggerAvatars = getBool("UseBigAvatars", false);
- json_string avatarUrl = data[biggerAvatars ? "avatarfull" : "avatarmedium"].as_string();
- CheckAvatarChange(hContact, avatarUrl);
+ MCONTACT hContact = GetContact(F->friendid);
+ if (!hContact) {
+ CMStringA szId(FORMAT, "%lld", F->friendid);
+ if (F->player_name && F->player_name != szId) {
+ szId.Format("UserInfo_%lld", F->friendid);
+ g_plugin.setUString(0, szId, F->player_name);
+ }
- // set country
- json_string countryCode = data["loccountrycode"].as_string();
- if (!countryCode.empty()) {
- char *country = (char *)CallService(MS_UTILS_GETCOUNTRYBYISOCODE, (WPARAM)countryCode.c_str(), 0);
- setString(hContact, "Country", country);
- }
- else delSetting(hContact, "Country");
-
- // state code
- // note: it seems that steam sends "incorrect" state code
- //node = data["locstatecode"];
- //if (!node.isnull())
- //{
- // json_string stateCode = node.as_string();
- // setString(hContact, "State", stateCode.c_str());
- //}
- //else
- //{
- // delSetting(hContact, "State");
- delSetting(hContact, "StateCode");
- //}
-
- // city id
- // note: steam no longer sends state city id
- //node = data["loccityid"];
- //if (!node.isnull())
- // setDword(hContact, "CityID", node.as_int());
- //else
- delSetting(hContact, "CityID");
-
- // account created
- setDword(hContact, "MemberTS", data["timecreated"].as_int());
-
- // last logout time
- setDword(hContact, "LogoffTS", data["lastlogoff"].as_int());
-
- if (!IsOnline())
- return;
+ if (!si) // don't create contacts for all that slack
+ continue;
+ }
- // status
- // note: this here is often wrong info, probably depending on publicity of steam profile
- // but sometimes polling does not get status at all
- uint16_t oldStatus = getWord(hContact, "Status", ID_STATUS_OFFLINE);
- // so, set status only if contact is offline
- if (oldStatus == ID_STATUS_OFFLINE) {
- uint16_t status = SteamToMirandaStatus((PersonaState)data["personastate"].as_int());
- SetContactStatus(hContact, status);
- }
+ // set name
+ if (auto *cd = F->clan_data) {
+ if (F->player_name)
+ setUString(hContact, "Nick", "Server: " + CMStringA(F->player_name));
- // client
- const JSONNode &nFlags = data["personastateflags"];
- PersonaStateFlag stateflags = (nFlags) ? (PersonaStateFlag)nFlags.as_int() : (PersonaStateFlag)(-1);
+ setByte(hContact, "ChatRoom", GCW_SERVER);
+ if (cd->has_chat_group_id)
+ SetId(hContact, DBKEY_GROUP_ID, cd->chat_group_id);
+ else
+ delSetting(hContact, DBKEY_GROUP_ID);
+ }
+ else {
+ if (F->player_name) {
+ CMStringW realName(Utf2T(F->player_name));
+
+ // set a nickname for group chat user?
+ if (si) {
+ CMStringW wszUserId(FORMAT, L"%lld", F->friendid);
+ GCEVENT gce = { si, GC_EVENT_NICK };
+ gce.pszUID.w = wszUserId;
+ gce.pszText.w = realName;
+ Chat_Event(&gce);
+ continue;
+ }
- if (stateflags == PersonaStateFlag::None) {
- // nothing special, either standard client or in different status (only online, I want to play, I want to trade statuses support this flags)
- uint16_t status = getWord(hContact, "Status", ID_STATUS_OFFLINE);
- if (status == ID_STATUS_ONLINE || status == ID_STATUS_FREECHAT)
- setWString(hContact, "MirVer", L"Steam");
- }
- else if (contains_flag(stateflags, PersonaStateFlag::InJoinableGame)) {
- // game
- setWString(hContact, "MirVer", L"Steam (in game)");
- }
- else if (contains_flag(stateflags, PersonaStateFlag::ClientTypeWeb)) {
- // on website
- setWString(hContact, "MirVer", L"Steam (website)");
- }
- else if (contains_flag(stateflags, PersonaStateFlag::ClientTypeMobile)) {
- // on mobile
- setWString(hContact, "MirVer", L"Steam (mobile)");
- }
- else if (contains_flag(stateflags, PersonaStateFlag::ClientTypeBigPicture)) {
- // on big picture
- setWString(hContact, "MirVer", L"Steam (Big Picture)");
- }
- else if (contains_flag(stateflags, PersonaStateFlag::ClientTypeVR)) {
- // on VR
- setWString(hContact, "MirVer", L"Steam (VR)");
- }
- else {
- // none/unknown (e.g. when contact is offline)
- delSetting(hContact, "MirVer");
- }
+ setWString(hContact, "Nick", realName);
- // playing game
- json_string appId = data["gameid"].as_string();
- CMStringW gameInfo = data["gameextrainfo"].as_mstring();
- if (!appId.empty() || !gameInfo.IsEmpty()) {
- uint32_t gameId = atol(appId.c_str());
- json_string serverIP = data["gameserverip"].as_string();
- json_string serverID = data["gameserversteamid"].as_string();
-
- setDword(hContact, "GameID", gameId);
- setString(hContact, "ServerIP", serverIP.c_str());
- setString(hContact, "ServerID", serverID.c_str());
-
- CMStringW message(gameInfo);
- if (gameId && message.IsEmpty()) {
- ptrA token(getStringA("TokenSecret"));
- SendRequest(new GetAppInfoRequest(token, appId.c_str()), &CSteamProto::OnGotAppInfo, (void*)hContact);
+ int pos = realName.Find(L' ', 1);
+ if (pos != -1) {
+ setWString(hContact, "FirstName", realName.Mid(0, pos));
+ setWString(hContact, "LastName", realName.Mid(pos + 1));
+ }
+ else {
+ setWString(hContact, "FirstName", realName);
+ delSetting(hContact, "LastName");
+ }
+ }
+ else {
+ delSetting(hContact, "Nick");
+ delSetting(hContact, "FirstName");
+ delSetting(hContact, "LastName");
+ }
}
- else {
- if (!gameId)
- message.Append(TranslateT(" (Non-Steam)"));
- if (!serverIP.empty())
- message.AppendFormat(TranslateT(" on server %S"), serverIP.c_str());
+
+ // avatar
+ if (F->avatar_hash.len != 0) {
+ if (!IsNull(F->avatar_hash)) {
+ CMStringA szHash;
+ szHash.Truncate(int(F->avatar_hash.len) * 2 + 1);
+ bin2hex(F->avatar_hash.data, F->avatar_hash.len, szHash.GetBuffer());
+ CheckAvatarChange(hContact, szHash);
+ }
+ else CheckAvatarChange(hContact, 0);
+ }
+ else CheckAvatarChange(hContact, 0);
+
+ // last logout time
+ if (F->has_last_logoff)
+ setDword(hContact, "LogoffTS", F->last_logoff);
+ if (F->has_last_logon)
+ setDword(hContact, "LogonTS", F->last_logon);
+
+ // status
+ // note: this here is often wrong info, probably depending on publicity of steam profile
+ // but sometimes polling does not get status at all
+ int oldStatus = Contact::GetStatus(hContact);
+ // so, set status only if contact is offline
+ if (oldStatus == ID_STATUS_OFFLINE) {
+ uint16_t status = SteamToMirandaStatus(F->persona_state);
+ SetContactStatus(hContact, status);
}
- setDword(hContact, "XStatusId", gameId);
- setWString(hContact, "XStatusName", TranslateT("Playing"));
- setWString(hContact, "XStatusMsg", message);
+ // client
+ if (F->has_persona_state_flags) {
+ auto stateflags = F->persona_state_flags;
+ if (stateflags == PersonaStateFlag::None) {
+ // nothing special, either standard client or in different status (only online, I want to play, I want to trade statuses support this flags)
+ uint16_t status = getWord(hContact, "Status", ID_STATUS_OFFLINE);
+ if (status == ID_STATUS_ONLINE || status == ID_STATUS_FREECHAT)
+ setWString(hContact, "MirVer", L"Steam");
+ }
+ else if (stateflags & PersonaStateFlag::InJoinableGame) // game
+ setWString(hContact, "MirVer", L"Steam (in game)");
+ else if (stateflags & PersonaStateFlag::ClientTypeWeb) // on website
+ setWString(hContact, "MirVer", L"Steam (website)");
+ else if (stateflags & PersonaStateFlag::ClientTypeMobile) // on mobile
+ setWString(hContact, "MirVer", L"Steam (mobile)");
+ else if (stateflags & PersonaStateFlag::ClientTypeBigPicture) // on big picture
+ setWString(hContact, "MirVer", L"Steam (Big Picture)");
+ else if (stateflags & PersonaStateFlag::ClientTypeVR) // on VR
+ setWString(hContact, "MirVer", L"Steam (VR)");
+ else // none/unknown (e.g. when contact is offline)
+ delSetting(hContact, "MirVer");
+ }
+ else delSetting(hContact, "MirVer");
+
+ // playing game
+ auto gameId = F->has_game_played_app_id ? F->game_played_app_id : 0;
+ char *gameInfo = F->game_name;
+ if (gameId && gameInfo) {
+ in_addr in; in.S_un.S_addr = F->game_server_ip;
+ auto *serverIP = inet_ntoa(in);
+
+ setDword(hContact, "GameID", gameId);
+ setString(hContact, "ServerIP", serverIP);
+
+ CMStringW message(gameInfo);
+ if (gameId && message.IsEmpty()) {
+ CMStringA szSetting(FORMAT, "AppInfo_%d", gameId);
+ ptrW szName(g_plugin.getWStringA(szSetting));
+ if (szName)
+ message = szName;
+ else
+ SendAppInfoRequest(gameId);
+ }
+ else {
+ if (!gameId)
+ message.Append(TranslateT(" (Non-Steam)"));
+ if (serverIP)
+ message.AppendFormat(TranslateT(" on server %S"), serverIP);
+ }
- SetContactExtraIcon(hContact, gameId);
- }
- else {
- delSetting(hContact, "GameID");
- delSetting(hContact, "ServerIP");
- delSetting(hContact, "ServerID");
+ setDword(hContact, "XStatusId", gameId);
+ setWString(hContact, "XStatusName", TranslateT("Playing"));
+ setWString(hContact, "XStatusMsg", message);
- delSetting(hContact, "XStatusId");
- delSetting(hContact, "XStatusName");
- delSetting(hContact, "XStatusMsg");
+ SetContactExtraIcon(hContact, gameId);
+ }
+ else {
+ delSetting(hContact, "GameID");
+ delSetting(hContact, "ServerIP");
- SetContactExtraIcon(hContact, NULL);
+ delSetting(hContact, "XStatusId");
+ delSetting(hContact, "XStatusName");
+ delSetting(hContact, "XStatusMsg");
+
+ SetContactExtraIcon(hContact, NULL);
+ }
}
}
@@ -293,8 +294,11 @@ void CSteamProto::ContactIsAskingAuth(MCONTACT hContact)
return;
// create auth request event
- ptrA steamId(getUStringA(hContact, DBKEY_STEAM_ID));
- SendRequest(new GetUserSummariesRequest(this, steamId), &CSteamProto::OnGotUserSummaries);
+ uint64_t id(GetId(hContact, DBKEY_STEAM_ID));
+ SendUserInfoRequest(id);
+
+ char steamId[100];
+ _i64toa(id, steamId, 10);
ptrA nickName(getUStringA(hContact, "Nick"));
if (nickName == nullptr)
@@ -309,17 +313,17 @@ void CSteamProto::ContactIsAskingAuth(MCONTACT hContact)
DB::AUTH_BLOB blob(hContact, nickName, firstName, lastName, steamId, reason);
DB::EventInfo dbei;
- dbei.timestamp = now();
+ dbei.iTimestamp = now();
dbei.pBlob = blob;
dbei.cbBlob = blob.size();
ProtoChainRecv(hContact, PSR_AUTH, 0, (LPARAM)&dbei);
}
-MCONTACT CSteamProto::AddContact(const char *steamId, const wchar_t *nick, bool isTemporary)
+MCONTACT CSteamProto::AddContact(int64_t steamId, const wchar_t *nick, bool isTemporary)
{
mir_cslock lock(m_addContactLock);
- if (!steamId || !mir_strlen(steamId)) {
+ if (!steamId) {
debugLogA(__FUNCTION__ ": empty steam id");
return NULL;
}
@@ -332,7 +336,7 @@ MCONTACT CSteamProto::AddContact(const char *steamId, const wchar_t *nick, bool
hContact = db_add_contact();
Proto_AddToContact(hContact, m_szModuleName);
- setString(hContact, DBKEY_STEAM_ID, steamId);
+ SetId(hContact, DBKEY_STEAM_ID, steamId);
if (mir_wstrlen(nick)) {
setWString(hContact, "Nick", nick);
db_set_ws(hContact, "CList", "MyHandle", nick);
@@ -353,77 +357,64 @@ MCONTACT CSteamProto::AddContact(const char *steamId, const wchar_t *nick, bool
return hContact;
}
-void CSteamProto::UpdateContactRelationship(MCONTACT hContact, const JSONNode &data)
+void CSteamProto::UpdateContactRelationship(MCONTACT hContact, uint32_t iRelationType)
{
- const JSONNode &node = data["friend_since"];
- if (node)
- db_set_dw(hContact, "UserInfo", "ContactAddTime", node.as_int());
-
- json_string relationship = data["relationship"].as_string();
- if (relationship == "friend")
+ switch (iRelationType) {
+ case FriendRelationship::Friend:
ContactIsFriend(hContact);
- else if (relationship == "ignoredfriend")
+ break;
+ case FriendRelationship::IgnoredFriend:
ContactIsBlocked(hContact);
- else if (relationship == "requestrecipient")
+ break;
+ case FriendRelationship::RequestRecipient:
ContactIsAskingAuth(hContact);
-}
-
-void CSteamProto::OnGotAppInfo(const JSONNode &root, void *arg)
-{
- MCONTACT hContact = (UINT_PTR)arg;
-
- for (auto &app : root["apps"]) {
- uint32_t gameId = app["appid"].as_int();
- CMStringW message = app["name"].as_mstring();
-
- setDword(hContact, "XStatusId", gameId);
- setWString(hContact, "XStatusName", TranslateT("Playing"));
- setWString(hContact, "XStatusMsg", message);
+ break;
}
}
-void CSteamProto::OnGotFriendList(const JSONNode &root, void *)
+void CSteamProto::OnGotFriendList(const CMsgClientFriendsList &reply, const CMsgProtoBufHeader &hdr)
{
- if (root.isnull())
+ if (hdr.failed())
return;
- // Comma-separated list of steam ids to update summaries
- std::string steamIds = (char *)ptrA(getStringA(DBKEY_STEAM_ID));
-
- // Remember contacts on server
- std::map<json_string, const JSONNode*> friendsMap;
- for (auto &_friend : root["friends"]) {
- json_string steamId = _friend["steamid"].as_string();
- friendsMap.insert(std::make_pair(steamId, &_friend));
- }
-
- if (friendsMap.empty()) {
+ if (reply.n_friends == 0) {
debugLogA("Empty friends list, exiting");
return;
}
+ std::map<uint64_t, uint32_t> friendsMap;
+ for (int i = 0; i < reply.n_friends; i++) {
+ auto *F = reply.friends[i];
+ friendsMap[F->ulfriendid] = F->efriendrelationship;
+ }
+
+ // Comma-separated list of steam ids to update summaries
+ std::vector<uint64_t> ids;
+ ids.push_back(GetId(DBKEY_STEAM_ID));
+
// Check and update contacts in database
for (auto &hContact : AccContacts()) {
- ptrA steamId(getStringA(hContact, DBKEY_STEAM_ID));
- if (steamId == nullptr)
+ if (Contact::IsGroupChat(hContact))
+ continue;
+
+ int64_t steamId(GetId(hContact, DBKEY_STEAM_ID));
+ if (!steamId)
continue;
- auto it = friendsMap.find((char *)steamId);
+ // Contact was removed from server-list, notify it
+ auto it = friendsMap.find(steamId);
if (it == friendsMap.end()) {
- // Contact was removed from server-list, notify it
- ContactIsRemoved(hContact);
+ if (!reply.bincremental)
+ ContactIsRemoved(hContact);
continue;
}
- const JSONNode &_friend = *it->second;
-
// Contact is on server-list, update (and eventually notify) it
- UpdateContactRelationship(hContact, _friend);
+ UpdateContactRelationship(hContact, it->second);
// Do not update summary for non friends
- json_string relationship = _friend["relationship"].as_string();
- if (relationship == "friend")
- steamIds.append(",").append(it->first);
+ if (it->second == FriendRelationship::Friend)
+ ids.push_back(it->first);
friendsMap.erase(it);
}
@@ -431,23 +422,19 @@ void CSteamProto::OnGotFriendList(const JSONNode &root, void *)
// Check remaining contacts in map and add them to contact list
for (auto it : friendsMap) {
// Contact is on server-list, but not in database, add (but not notify) it
- const JSONNode &_friend = *it.second;
-
- json_string relationship = _friend["relationship"].as_string();
-
- MCONTACT hContact = AddContact(it.first.c_str(), nullptr, relationship != "friend");
- UpdateContactRelationship(hContact, _friend);
+ MCONTACT hContact = AddContact(it.first, nullptr, it.second != FriendRelationship::Friend);
+ UpdateContactRelationship(hContact, it.second);
- if (relationship == "friend")
- steamIds.append(",").append(it.first);
+ if (it.second == FriendRelationship::Friend)
+ ids.push_back(it.first);
}
friendsMap.clear();
- if (!steamIds.empty())
- SendRequest(new GetUserSummariesRequest(this, steamIds.c_str()), &CSteamProto::OnGotUserSummaries);
+ if (!ids.empty())
+ SendUserInfoRequest(ids);
// Load last conversations
- SendRequest(new GetConversationsRequest(this), &CSteamProto::OnGotConversations);
+ SendFriendActiveSessions();
}
void CSteamProto::OnGotBlockList(const JSONNode &root, void *)
@@ -466,23 +453,13 @@ void CSteamProto::OnGotBlockList(const JSONNode &root, void *)
}
}
-void CSteamProto::OnGotUserSummaries(const JSONNode &root, void *)
-{
- for (auto &player : root["players"]) {
- json_string steamId = player["steamid"].as_string();
- CMStringW nick = player["personaname"].as_mstring();
- MCONTACT hContact = !IsMe(steamId.c_str()) ? AddContact(steamId.c_str(), nick) : 0;
- UpdateContactDetails(hContact, player);
- }
-}
-
-void CSteamProto::OnGotAvatar(const HttpResponse &response, void *arg)
+void CSteamProto::OnGotAvatar(const MHttpResponse &response, void *arg)
{
PROTO_AVATAR_INFORMATION ai = { 0 };
ai.hContact = (UINT_PTR)arg;
GetDbAvatarInfo(ai);
- if (!response.IsSuccess()) {
+ if (response.resultCode != 200) {
ptrA steamId(getStringA(ai.hContact, DBKEY_STEAM_ID));
debugLogA(__FUNCTION__ ": failed to get avatar %s", steamId.get());
@@ -493,7 +470,7 @@ void CSteamProto::OnGotAvatar(const HttpResponse &response, void *arg)
FILE *file = _wfopen(ai.filename, L"wb");
if (file) {
- fwrite(response.data(), sizeof(char), response.length(), file);
+ fwrite(response.body, sizeof(char), response.body.GetLength(), file);
fclose(file);
if (ai.hContact)
@@ -503,12 +480,12 @@ void CSteamProto::OnGotAvatar(const HttpResponse &response, void *arg)
}
}
-void CSteamProto::OnFriendAdded(const HttpResponse &response, void *arg)
+/*
+void CSteamProto::OnFriendAdded(const MHttpResponse &response, void *arg)
{
SendAuthParam *param = (SendAuthParam *)arg;
- if (!response.IsSuccess() || mir_strcmp(response.data(), "true")) {
-
+ if (response.resultCode != 200 || mir_strcmp(response.body, "true")) {
ptrW steamId(getWStringA(param->hContact, DBKEY_STEAM_ID));
ptrW who(getWStringA(param->hContact, "Nick"));
if (!who)
@@ -517,7 +494,7 @@ void CSteamProto::OnFriendAdded(const HttpResponse &response, void *arg)
wchar_t message[MAX_PATH];
mir_snwprintf(message, L"Error adding friend %s", who.get());
- JSONNode root = JSONNode::parse(response.data());
+ JSONNode root = JSONNode::parse(response.body);
if (root) {
int success = root["success"].as_int();
if (success == 1) {
@@ -565,62 +542,7 @@ void CSteamProto::OnFriendAdded(const HttpResponse &response, void *arg)
ContactIsFriend(param->hContact);
ProtoBroadcastAck(param->hContact, ACKTYPE_AUTHREQ, ACKRESULT_SUCCESS, param->hAuth, 0);
}
-
-void CSteamProto::OnFriendBlocked(const HttpResponse &response, void *arg)
-{
- ptrA steamId((char *)arg);
-
- if (!response.IsSuccess() || mir_strcmp(response.data(), "true")) {
- debugLogA(__FUNCTION__ ": failed to ignore friend %s", (char *)steamId);
- return;
- }
-
- MCONTACT hContact = GetContact(steamId);
- if (hContact)
- ContactIsBlocked(hContact);
-}
-
-void CSteamProto::OnFriendUnblocked(const HttpResponse &response, void *arg)
-{
- ptrA steamId((char *)arg);
-
- if (!response.IsSuccess() || mir_strcmp(response.data(), "true")) {
- debugLogA(__FUNCTION__ ": failed to unignore friend %s", (char *)steamId);
- return;
- }
-
- MCONTACT hContact = GetContact(steamId);
- if (hContact)
- ContactIsUnblocked(hContact);
-}
-
-void CSteamProto::OnFriendRemoved(const HttpResponse &response, void *arg)
-{
- ptrA steamId((char *)arg);
-
- if (!response.IsSuccess() || mir_strcmp(response.data(), "true")) {
- debugLogA(__FUNCTION__ ": failed to remove friend %s", (char *)steamId);
- return;
- }
-
- MCONTACT hContact = GetContact(steamId);
- if (hContact)
- ContactIsRemoved(hContact);
-}
-
-void CSteamProto::OnAuthRequested(const JSONNode &root, void *)
-{
- if (root.isnull())
- return;
-
- for (auto &player : root["players"]) {
- json_string steamId = player["steamid"].as_string();
- CMStringW nick = player["personaname"].as_mstring();
- MCONTACT hContact = AddContact(steamId.c_str(), nick);
- UpdateContactDetails(hContact, player);
- ContactIsAskingAuth(hContact);
- }
-}
+*/
void CSteamProto::OnPendingApproved(const JSONNode &root, void *arg)
{
@@ -650,17 +572,17 @@ void CSteamProto::OnPendingIgnoreded(const JSONNode &root, void *arg)
}
}
-void CSteamProto::OnSearchResults(const HttpResponse &response, void *arg)
+void CSteamProto::OnSearchResults(const MHttpResponse &response, void *arg)
{
HANDLE searchType = (HANDLE)arg;
- if (!response.IsSuccess()) {
+ if (response.resultCode != 200) {
ProtoBroadcastAck(NULL, ACKTYPE_SEARCH, ACKRESULT_FAILED, searchType, 0);
debugLogA(__FUNCTION__ ": failed to get summaries");
return;
}
- JSONNode root = JSONNode::parse(response.data());
+ JSONNode root = JSONNode::parse(response.body);
if (root.isnull()) {
ProtoBroadcastAck(NULL, ACKTYPE_SEARCH, ACKRESULT_FAILED, searchType, 0);
debugLogA(__FUNCTION__ ": no data");
@@ -700,15 +622,15 @@ void CSteamProto::OnSearchResults(const HttpResponse &response, void *arg)
ProtoBroadcastAck(NULL, ACKTYPE_SEARCH, ACKRESULT_SUCCESS, searchType, 0);
}
-void CSteamProto::OnSearchByNameStarted(const HttpResponse &response, void *arg)
+void CSteamProto::OnSearchByNameStarted(const MHttpResponse &response, void *arg)
{
- if (!response.IsSuccess()) {
+ if (response.resultCode != 200) {
ProtoBroadcastAck(NULL, ACKTYPE_SEARCH, ACKRESULT_FAILED, (HANDLE)arg, 0);
debugLogA(__FUNCTION__ ": failed to get results");
return;
}
- JSONNode root = JSONNode::parse(response.data());
+ JSONNode root = JSONNode::parse(response.body);
if (root.isnull()) {
ProtoBroadcastAck(NULL, ACKTYPE_SEARCH, ACKRESULT_FAILED, (HANDLE)arg, 0);
debugLogA(__FUNCTION__ ": no data");
@@ -734,5 +656,5 @@ void CSteamProto::OnSearchByNameStarted(const HttpResponse &response, void *arg)
// remove trailing ","
steamIds.pop_back();
- SendRequest(new GetUserSummariesRequest(this, steamIds.c_str()), &CSteamProto::OnSearchResults, (HANDLE)arg);
+ SendRequest(new GetUserSummariesRequest(m_szAccessToken, steamIds.c_str()), &CSteamProto::OnSearchResults, (HANDLE)arg);
}
diff --git a/protocols/Steam/src/steam_dialogs.cpp b/protocols/Steam/src/steam_dialogs.cpp
index c8599784e9..6baf791e55 100644
--- a/protocols/Steam/src/steam_dialogs.cpp
+++ b/protocols/Steam/src/steam_dialogs.cpp
@@ -10,7 +10,7 @@ CSteamPasswordEditor::CSteamPasswordEditor(CSteamProto *proto) :
bool CSteamPasswordEditor::OnInitDialog()
{
char iconName[100];
- mir_snprintf(iconName, "%s_%s", MODULE, "main");
+ mir_snprintf(iconName, "%s_%s", MODULENAME, "main");
Window_SetIcon_IcoLib(m_hwnd, IcoLib_GetIconHandle(iconName));
SendMessage(m_password.GetHwnd(), EM_LIMITTEXT, 64, 0);
@@ -33,149 +33,3 @@ void CSteamPasswordEditor::OnDestroy()
{
Utils_SaveWindowPosition(m_hwnd, NULL, m_proto->m_szModuleName, "PasswordWindow");
}
-
-/////////////////////////////////////////////////////////////////////////////////
-
-CSteamGuardDialog::CSteamGuardDialog(CSteamProto *proto, const char *domain) :
- CSteamDlgBase(proto, IDD_GUARD),
- m_text(this, IDC_TEXT),
- m_link(this, IDC_GETDOMAIN, domain)
-{
- memset(m_guardCode, 0, sizeof(m_guardCode));
- mir_strcpy(m_domain, domain);
-}
-
-bool CSteamGuardDialog::OnInitDialog()
-{
- m_proto->m_hwndGuard = m_hwnd;
-
- char iconName[100];
- mir_snprintf(iconName, "%s_%s", MODULE, "main");
- Window_SetIcon_IcoLib(m_hwnd, IcoLib_GetIconHandle(iconName));
-
- SendMessage(m_text.GetHwnd(), EM_LIMITTEXT, 5, 0);
-
- Utils_RestoreWindowPosition(m_hwnd, NULL, m_proto->m_szModuleName, "GuardWindow");
- return true;
-}
-
-bool CSteamGuardDialog::OnApply()
-{
- mir_strncpy(m_guardCode, ptrA(m_text.GetTextA()), _countof(m_guardCode));
- EndModal(DIALOG_RESULT_OK);
- return true;
-}
-
-void CSteamGuardDialog::OnDestroy()
-{
- m_proto->m_hwndGuard = nullptr;
- Utils_SaveWindowPosition(m_hwnd, NULL, m_proto->m_szModuleName, "GuardWindow");
-}
-
-/////////////////////////////////////////////////////////////////////////////////
-
-CSteamTwoFactorDialog::CSteamTwoFactorDialog(CSteamProto *proto) :
- CSteamDlgBase(proto, IDD_TWOFACTOR),
- m_text(this, IDC_TEXT)
-{
- memset(m_twoFactorCode, 0, sizeof(m_twoFactorCode));
-}
-
-bool CSteamTwoFactorDialog::OnInitDialog()
-{
- char iconName[100];
- mir_snprintf(iconName, "%s_%s", MODULE, "main");
- Window_SetIcon_IcoLib(m_hwnd, IcoLib_GetIconHandle(iconName));
-
- SendMessage(m_text.GetHwnd(), EM_LIMITTEXT, 5, 0);
-
- Utils_RestoreWindowPosition(m_hwnd, NULL, m_proto->m_szModuleName, "TwoFactorWindow");
- return true;
-}
-
-bool CSteamTwoFactorDialog::OnApply()
-{
- mir_strncpy(m_twoFactorCode, ptrA(m_text.GetTextA()), _countof(m_twoFactorCode));
- EndModal(DIALOG_RESULT_OK);
- return true;
-}
-
-void CSteamTwoFactorDialog::OnDestroy()
-{
- Utils_SaveWindowPosition(m_hwnd, NULL, m_proto->m_szModuleName, "TwoFactorWindow");
-}
-
-/////////////////////////////////////////////////////////////////////////////////
-
-CSteamCaptchaDialog::CSteamCaptchaDialog(CSteamProto *proto, const uint8_t *captchaImage, size_t captchaImageSize) :
- CSteamDlgBase(proto, IDD_CAPTCHA),
- m_text(this, IDC_TEXT),
- m_captchaImage(nullptr)
-{
- memset(m_captchaText, 0, sizeof(m_captchaText));
- m_captchaImageSize = captchaImageSize;
- m_captchaImage = (uint8_t*)mir_alloc(captchaImageSize);
- memcpy(m_captchaImage, captchaImage, captchaImageSize);
-}
-
-CSteamCaptchaDialog::~CSteamCaptchaDialog()
-{
- if (m_captchaImage)
- mir_free(m_captchaImage);
-}
-
-bool CSteamCaptchaDialog::OnInitDialog()
-{
- char iconName[100];
- mir_snprintf(iconName, "%s_%s", MODULE, "main");
- Window_SetIcon_IcoLib(m_hwnd, IcoLib_GetIconHandle(iconName));
-
- SendMessage(m_text.GetHwnd(), EM_LIMITTEXT, 6, 0);
-
- Utils_RestoreWindowPosition(m_hwnd, NULL, m_proto->m_szModuleName, "CaptchaWindow");
- return true;
-}
-
-bool CSteamCaptchaDialog::OnApply()
-{
- mir_strncpy(m_captchaText, ptrA(m_text.GetTextA()), _countof(m_captchaText));
- return true;
-}
-
-void CSteamCaptchaDialog::OnDestroy()
-{
- Utils_SaveWindowPosition(m_hwnd, NULL, m_proto->m_szModuleName, "CaptchaWindow");
-}
-
-INT_PTR CSteamCaptchaDialog::DlgProc(UINT msg, WPARAM wParam, LPARAM lParam)
-{
- if (msg == WM_PAINT) {
- FIMEMORY *stream = FreeImage_OpenMemory(m_captchaImage, (uint32_t)m_captchaImageSize);
- FREE_IMAGE_FORMAT fif = FreeImage_GetFileTypeFromMemory(stream, 0);
- FIBITMAP *bitmap = FreeImage_LoadFromMemory(fif, stream, 0);
- FreeImage_CloseMemory(stream);
-
- PAINTSTRUCT ps;
- HDC hDC = BeginPaint(m_hwnd, &ps);
-
- StretchDIBits(
- hDC,
- 11, 11,
- FreeImage_GetWidth(bitmap) - 13,
- FreeImage_GetHeight(bitmap),
- 0, 0,
- FreeImage_GetWidth(bitmap),
- FreeImage_GetHeight(bitmap),
- FreeImage_GetBits(bitmap),
- FreeImage_GetInfo(bitmap),
- DIB_RGB_COLORS, SRCCOPY);
-
- FreeImage_Unload(bitmap);
-
- EndPaint(m_hwnd, &ps);
-
- return FALSE;
- }
- CSteamDlgBase::DlgProc(msg, wParam, lParam);
- return FALSE;
-}
diff --git a/protocols/Steam/src/steam_dialogs.h b/protocols/Steam/src/steam_dialogs.h
index 0322056230..b188ca6bb0 100644
--- a/protocols/Steam/src/steam_dialogs.h
+++ b/protocols/Steam/src/steam_dialogs.h
@@ -21,74 +21,4 @@ public:
CSteamPasswordEditor(CSteamProto *proto);
};
-/////////////////////////////////////////////////////////////////////////////////
-
-class CSteamGuardDialog : public CSteamDlgBase
-{
- char m_domain[32];
- char m_guardCode[6];
-
- CCtrlEdit m_text;
- CCtrlHyperlink m_link;
-
-protected:
- bool OnInitDialog() override;
- bool OnApply() override;
- void OnDestroy() override;
-
-public:
- CSteamGuardDialog(CSteamProto *proto, const char *domain);
-
- const char *GetGuardCode() {
- return m_guardCode;
- }
-};
-
-/////////////////////////////////////////////////////////////////////////////////
-
-class CSteamTwoFactorDialog : public CSteamDlgBase
-{
- char m_twoFactorCode[6];
-
- CCtrlEdit m_text;
-
-protected:
- bool OnInitDialog() override;
- bool OnApply() override;
- void OnDestroy() override;
-
-public:
- CSteamTwoFactorDialog(CSteamProto *proto);
-
- const char *GetTwoFactorCode() {
- return m_twoFactorCode;
- }
-};
-
-/////////////////////////////////////////////////////////////////////////////////
-
-class CSteamCaptchaDialog : public CSteamDlgBase
-{
- char m_captchaText[7];
-
- uint8_t *m_captchaImage;
- size_t m_captchaImageSize;
-
- CCtrlEdit m_text;
-
-protected:
- bool OnInitDialog() override;
- bool OnApply() override;
- void OnDestroy() override;
- INT_PTR DlgProc(UINT msg, WPARAM wParam, LPARAM lParam) override;
-
-public:
- CSteamCaptchaDialog(CSteamProto *proto, const uint8_t *captchaImage, size_t captchaImageSize);
- ~CSteamCaptchaDialog();
-
- const char* GetCaptchaText() {
- return m_captchaText;
- }
-};
-
#endif //_STEAM_DIALOGS_H_
diff --git a/protocols/Steam/src/steam_history.cpp b/protocols/Steam/src/steam_history.cpp
index a57f59a9e3..251ee89b22 100644
--- a/protocols/Steam/src/steam_history.cpp
+++ b/protocols/Steam/src/steam_history.cpp
@@ -1,70 +1,154 @@
#include "stdafx.h"
-void CSteamProto::OnGotConversations(const JSONNode &root, void *)
+INT_PTR CSteamProto::SvcCanEmptyHistory(WPARAM hContact, LPARAM)
{
- if (root.isnull())
+ return (hContact && Contact::IsGroupChat(hContact));
+}
+
+INT_PTR CSteamProto::SvcEmptyHistory(WPARAM, LPARAM)
+{
+ return 1;
+}
+
+INT_PTR CSteamProto::SvcLoadServerHistory(WPARAM hContact, LPARAM)
+{
+ if (Contact::IsGroupChat(hContact)) {
+ CChatRoomGetMessageHistoryRequest request;
+ request.chat_group_id = GetId(hContact, DBKEY_STEAM_ID); request.has_chat_group_id = true;
+ request.chat_id = getDword(hContact, DBKEY_CHAT_ID); request.has_chat_id = true;
+ request.max_count = 100; request.has_max_count = true;
+ WSSendService(GetChatHistory, request, (void *)hContact);
+ }
+ else {
+ CFriendMessagesGetRecentMessagesRequest request;
+ request.steamid1 = m_iSteamId; request.has_steamid1 = true;
+ request.steamid2 = GetId(hContact, DBKEY_STEAM_ID); request.has_steamid2 = true;
+ request.count = 100; request.has_count = true;
+ request.most_recent_conversation = request.has_most_recent_conversation = true;
+ WSSendService(FriendGetRecentMessages, request);
+ }
+ return 0;
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
+void CSteamProto::SendHistoryRequest(uint64_t accountId, uint32_t startTime)
+{
+ CFriendMessagesGetRecentMessagesRequest request;
+ request.steamid1 = m_iSteamId; request.has_steamid1 = true;
+ request.steamid2 = AccountIdToSteamId(accountId); request.has_steamid2 = true;
+ request.rtime32_start_time = startTime; request.has_rtime32_start_time = true;
+ WSSendService(FriendGetRecentMessages, request);
+}
+
+void CSteamProto::OnGotRecentMessages(const CFriendMessagesGetRecentMessagesResponse &reply, const CMsgProtoBufHeader &hdr)
+{
+ if (hdr.failed())
return;
- const JSONNode &response = root["response"];
- for (auto &session : response["message_sessions"]) {
- long long accountId = _wtoi64(session["accountid_friend"].as_mstring());
+ for (int i = 0; i < reply.n_messages; i++) {
+ auto *pMsg = reply.messages[i];
+ auto steamId = AccountIdToSteamId(pMsg->accountid);
- const char *who = AccountIdToSteamId(accountId);
- MCONTACT hContact = GetContact(who);
+ MCONTACT hContact = GetContact(steamId);
if (!hContact)
continue;
- // Don't load any messages when we don't have lastMessageTS, as it may cause duplicates
- time_t storedMessageTS = getDword(hContact, DB_KEY_LASTMSGTS);
- if (storedMessageTS == 0)
- continue;
-
- time_t lastMessageTS = _wtoi64(session["last_message"].as_mstring());
- if (lastMessageTS > storedMessageTS) {
- ptrA token(getStringA("TokenSecret"));
- ptrA steamId(getStringA(DBKEY_STEAM_ID));
- SendRequest(new GetHistoryMessagesRequest(token, steamId, who, storedMessageTS), &CSteamProto::OnGotHistoryMessages, (void*)hContact);
+ MEVENT hEvent;
+ char szMsgId[100];
+ if (pMsg->has_timestamp) {
+ itoa(pMsg->timestamp, szMsgId, 10);
+ hEvent = db_event_getById(m_szModuleName, szMsgId);
+ }
+ else hEvent = 0;
+
+ DB::EventInfo dbei(hEvent);
+ dbei.flags = DBEF_UTF;
+ if (steamId == m_iSteamId)
+ dbei.flags |= DBEF_SENT;
+ dbei.cbBlob = (int)mir_strlen(pMsg->message);
+ dbei.pBlob = mir_strdup(pMsg->message);
+ if (pMsg->has_timestamp) {
+ if (getDword(hContact, DBKEY_LASTMSG) < pMsg->timestamp)
+ setDword(hContact, DBKEY_LASTMSG, pMsg->timestamp);
+
+ dbei.szId = szMsgId;
+ dbei.iTimestamp = pMsg->timestamp;
}
+ else dbei.iTimestamp = time(0);
+
+ if (dbei.getEvent())
+ db_event_edit(hEvent, &dbei, true);
+ else
+ ProtoChainRecvMsg(hContact, dbei);
}
}
-void CSteamProto::OnGotHistoryMessages(const JSONNode &root, void *arg)
+/////////////////////////////////////////////////////////////////////////////////////////
+
+void CSteamProto::OnGotConversations(const CFriendsMessagesGetActiveMessageSessionsResponse &reply, const CMsgProtoBufHeader &hdr)
{
- if (root.isnull())
+ if (hdr.failed())
return;
- MCONTACT hContact = UINT_PTR(arg);
- time_t storedMessageTS = getDword(hContact, DB_KEY_LASTMSGTS);
- time_t newTS = storedMessageTS;
+ for (int i=0; i < reply.n_message_sessions; i++) {
+ auto *session = reply.message_sessions[i];
- const JSONNode &response = root["response"];
- const JSONNode &messages = response["messages"];
- for (size_t i = messages.size(); i > 0; i--) {
- const JSONNode &message = messages[i - 1];
-
- long long accountId = _wtoi64(message["accountid"].as_mstring());
- const char *steamId = AccountIdToSteamId(accountId);
+ uint64_t steamId = AccountIdToSteamId(session->accountid_friend);
+ MCONTACT hContact = GetContact(steamId);
+ if (!hContact)
+ continue;
- json_string text = message["message"].as_string();
+ time_t storedMessageTS = getDword(hContact, DBKEY_LASTMSG);
+ if (session->last_message > storedMessageTS)
+ SendHistoryRequest(steamId, storedMessageTS);
+ }
+}
- time_t timestamp = _wtoi64(message["timestamp"].as_mstring());
+void CSteamProto::OnGotHistoryMessages(const CMsgClientChatGetFriendMessageHistoryResponse &reply, const CMsgProtoBufHeader &hdr)
+{
+ if (hdr.failed())
+ return;
- // Ignore already existing messages
- if (timestamp <= storedMessageTS)
- continue;
+ MCONTACT hContact = GetContact(reply.steamid);
+ if (!hContact)
+ return;
- DB::EventInfo dbei;
- dbei.timestamp = timestamp;
- dbei.pBlob = (char *)text.c_str();
+ uint32_t iLastMessage = getDword(hContact, DBKEY_LASTMSG);
- if (IsMe(steamId))
- dbei.flags = DBEF_SENT;
+ for (int i = 0; i < reply.n_messages; i++) {
+ auto *pMsg = reply.messages[i];
+
+ MEVENT hEvent;
+ char szMsgId[100];
- RecvMsg(hContact, dbei);
+ if (pMsg->has_timestamp) {
+ if (iLastMessage < pMsg->timestamp)
+ iLastMessage = pMsg->timestamp;
+ itoa(pMsg->timestamp, szMsgId, 10);
+ hEvent = db_event_getById(m_szModuleName, szMsgId);
+ }
+ else hEvent = 0;
+
+ DB::EventInfo dbei(hEvent);
+ dbei.flags = DBEF_UTF;
+ if (pMsg->has_unread && !pMsg->unread)
+ dbei.flags |= DBEF_READ;
+ if (pMsg->accountid == m_iSteamId)
+ dbei.flags |= DBEF_SENT;
+ dbei.cbBlob = (int)mir_strlen(pMsg->message);
+ dbei.pBlob = mir_strdup(pMsg->message);
+ if (pMsg->has_timestamp) {
+ dbei.iTimestamp = pMsg->timestamp;
+ dbei.szId = szMsgId;
+ }
+ else dbei.iTimestamp = time(0);
- if (timestamp > newTS)
- newTS = timestamp;
+ if (dbei.getEvent())
+ db_event_edit(hEvent, &dbei, true);
+ else
+ ProtoChainRecvMsg(hContact, dbei);
}
- setDword(hContact, DB_KEY_LASTMSGTS, newTS);
+ setDword(hContact, DBKEY_LASTMSG, iLastMessage);
}
diff --git a/protocols/Steam/src/steam_login.cpp b/protocols/Steam/src/steam_login.cpp
index e7a583dac1..cac890ac18 100644
--- a/protocols/Steam/src/steam_login.cpp
+++ b/protocols/Steam/src/steam_login.cpp
@@ -1,119 +1,8 @@
#include "stdafx.h"
-/*
-void CSteamProto::OnGotCaptcha(const HttpResponse &response, void *arg)
-{
- ptrA captchaId((char *)arg);
-
- if (!response.IsSuccess()) {
- debugLogA(__FUNCTION__ ": failed to get captcha");
- return;
- }
-
- CSteamCaptchaDialog captchaDialog(this, (const uint8_t *)response.data(), response.length());
- if (!captchaDialog.DoModal()) {
- DeleteAuthSettings();
- SetStatus(ID_STATUS_OFFLINE);
- return;
- }
-
- setString("CaptchaId", captchaId);
- setString("CaptchaText", captchaDialog.GetCaptchaText());
-
- ptrA username(getUStringA("Username"));
- // SendRequest(new GetRsaKeyRequest(username), &CSteamProto::OnGotRsaKey);
-}
-
-void CSteamProto::OnAuthorizationError(const JSONNode &root)
-{
- CMStringW message = root["message"].as_mstring();
- if (message == L"Incorrect login.") {
- // We can't continue with incorrect login/password
- debugLogA(__FUNCTION__ ": incorrect login");
- DeleteAuthSettings();
- SetStatus(ID_STATUS_OFFLINE);
- ShowNotification(message);
- return;
- }
-
- if (root["clear_password_field"].as_bool()) {
- // describes if the password field was cleared. This can also be true if the twofactor code was wrong
- debugLogA(__FUNCTION__ ": clear password field");
- delSetting("Passowrd"); // experiment
- delSetting("TwoFactorCode");
- SetStatus(ID_STATUS_OFFLINE);
- ShowNotification(message);
- }
-
- T2Utf username(getWStringA("Username"));
-
- if (root["requires_twofactor"].as_bool()) {
- debugLogA(__FUNCTION__ ": requires twofactor");
- delSetting("TwoFactorCode");
-
- CSteamTwoFactorDialog twoFactorDialog(this);
- if (!twoFactorDialog.DoModal()) {
- DeleteAuthSettings();
- SetStatus(ID_STATUS_OFFLINE);
- return;
- }
-
- setString("TwoFactorCode", twoFactorDialog.GetTwoFactorCode());
-
- // SendRequest(new GetRsaKeyRequest(username), &CSteamProto::OnGotRsaKey);
- }
-
- if (root["emailauth_needed"].as_bool()) {
- debugLogA(__FUNCTION__ ": emailauth needed");
-
- std::string guardId = root["emailsteamid"].as_string();
- ptrA oldGuardId(getStringA("GuardId"));
- if (mir_strcmp(guardId.c_str(), oldGuardId) == 0) {
- delSetting("GuardId");
- delSetting("GuardCode");
- }
-
- json_string domain = root["emaildomain"].as_string();
-
- // Make absolute link
- if (domain.find("://") == std::string::npos)
- domain = "http://" + domain;
-
- if (m_hwndGuard != nullptr)
- return;
-
- CSteamGuardDialog guardDialog(this, domain.c_str());
- if (!guardDialog.DoModal()) {
- DeleteAuthSettings();
- SetStatus(ID_STATUS_OFFLINE);
- return;
- }
-
- setString("GuardId", guardId.c_str());
- setString("GuardCode", guardDialog.GetGuardCode());
-
- // SendRequest(new GetRsaKeyRequest(username), &CSteamProto::OnGotRsaKey);
- return;
- }
-
- if (root["captcha_needed"].as_bool()) {
- debugLogA(__FUNCTION__ ": captcha needed");
- delSetting("CaptchaId");
- delSetting("CaptchaText");
- json_string captchaId = root["captcha_gid"].as_string();
- SendRequest(new GetCaptchaRequest(captchaId.c_str()), &CSteamProto::OnGotCaptcha, mir_strdup(captchaId.c_str()));
- return;
- }
-
- // unhadled error
- DeleteAuthSettings();
- SetStatus(ID_STATUS_OFFLINE);
- ShowNotification(message);
-}
-*/
-
void CSteamProto::DeleteAuthSettings()
{
+ m_requestId = MBinBuffer();
delSetting("TwoFactorCode");
delSetting("GuardId");
delSetting("GuardCode");
@@ -126,74 +15,68 @@ bool CSteamProto::IsOnline()
return m_iStatus > ID_STATUS_OFFLINE && m_ws != nullptr;
}
-bool CSteamProto::IsMe(const char *steamId)
-{
- ptrA mySteamId(getStringA(DBKEY_STEAM_ID));
- return mir_strcmp(steamId, mySteamId) == 0;
-}
-
-void CSteamProto::Login()
-{
- CMsgClientHello hello;
- hello.protocol_version = STEAM_PROTOCOL_VERSION; hello.has_protocol_version = true;
- WSSend(EMsg::ClientHello, hello);
-
- ptrA username(getUStringA("Username"));
- if (username == NULL)
- LoginFailed();
- else {
- CAuthenticationGetPasswordRSAPublicKeyRequest request;
- request.account_name = username.get();
- WSSendService("Authentication.GetPasswordRSAPublicKey#1", request, &CSteamProto::OnGotRsaKey);
- }
-}
-
-void CSteamProto::LoginFailed()
-{
- m_bTerminated = true;
-
- m_iStatus = m_iDesiredStatus = ID_STATUS_OFFLINE;
- ProtoBroadcastAck(NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)m_iStatus, m_iStatus);
-}
-
void CSteamProto::Logout()
{
m_bTerminated = true;
+ m_impl.m_loginPoll.StopSafe();
+ m_iStatus = m_iDesiredStatus = ID_STATUS_OFFLINE;
ProtoBroadcastAck(NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)m_iStatus, m_iStatus);
}
void CSteamProto::OnGotHosts(const JSONNode &root, void*)
{
- db_delete_module(0, STEAM_MODULE);
+ db_delete_module(0, MODULENAME);
int i = 0;
CMStringA szSetting;
for (auto &it : root["response"]["serverlist_websockets"]) {
szSetting.Format("Host%d", i++);
- db_set_ws(0, STEAM_MODULE, szSetting, it.as_mstring());
+ db_set_ws(0, MODULENAME, szSetting, it.as_mstring());
+ }
+
+ db_set_dw(0, MODULENAME, DBKEY_HOSTS_COUNT, i);
+ db_set_dw(0, MODULENAME, DBKEY_HOSTS_DATE, time(0));
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+// Restore the saved session or establish a new one
+
+void CSteamProto::Login()
+{
+ m_iSteamId = m_iSessionId = 0;
+
+ CMsgClientHello hello;
+ hello.protocol_version = STEAM_PROTOCOL_VERSION; hello.has_protocol_version = true;
+ WSSend(EMsg::ClientHello, hello);
+
+ ptrA username(getUStringA("Username"));
+ if (username == NULL) {
+ Logout();
+ return;
}
- db_set_dw(0, STEAM_MODULE, DBKEY_HOSTS_COUNT, i);
- db_set_dw(0, STEAM_MODULE, DBKEY_HOSTS_DATE, time(0));
+ CAuthenticationGetPasswordRSAPublicKeyRequest request;
+ request.account_name = username.get();
+ WSSendAnon(GetPasswordRSAPublicKey, request);
}
-void CSteamProto::OnGotRsaKey(const uint8_t *buf, size_t cbLen)
+void CSteamProto::OnGotRsaKey(const CAuthenticationGetPasswordRSAPublicKeyResponse &reply, const CMsgProtoBufHeader &hdr)
{
- proto::AuthenticationGetPasswordRSAPublicKeyResponse reply(buf, cbLen);
- if (reply == nullptr || !reply->publickey_exp || !reply->publickey_mod) {
- LoginFailed();
+ if (hdr.failed()) {
+ Logout();
return;
}
// encrypt password
ptrA szPassword(getStringA("Password"));
- MBinBuffer encPassword(RsaEncrypt(reply->publickey_mod, reply->publickey_exp, szPassword));
+ MBinBuffer encPassword(RsaEncrypt(reply.publickey_mod, reply.publickey_exp, szPassword));
ptrA base64RsaEncryptedPassword(mir_base64_encode(encPassword.data(), encPassword.length()));
// run authorization request
ptrA userName(getUStringA("Username"));
+ ptrA machineId(getUStringA("MachineId"));
T2Utf deviceName(m_wszDeviceName);
CAuthenticationDeviceDetails details;
@@ -205,106 +88,209 @@ void CSteamProto::OnGotRsaKey(const uint8_t *buf, size_t cbLen)
request.account_name = userName.get();
request.website_id = "Client";
request.encrypted_password = base64RsaEncryptedPassword;
- request.encryption_timestamp = reply->timestamp; request.has_encryption_timestamp = true;
+ request.encryption_timestamp = reply.timestamp; request.has_encryption_timestamp = true;
request.persistence = ESESSION_PERSISTENCE__k_ESessionPersistence_Persistent; request.has_persistence = true;
- request.remember_login = 0; request.has_remember_login = true;
+ request.remember_login = request.has_remember_login = true;
request.language = 1; request.has_language = true;
request.qos_level = 2; request.has_qos_level = true;
request.device_details = &details;
request.device_friendly_name = details.device_friendly_name;
request.platform_type = details.platform_type; request.has_platform_type = true;
+ request.guard_data = machineId;
- WSSendService("Authentication.BeginAuthSessionViaCredentials#1", request, &CSteamProto::OnAuthorization);
+ WSSendAnon(BeginAuthSessionViaCredentials, request);
}
-void CSteamProto::OnAuthorization(const uint8_t *buf, size_t cbLen)
+void CSteamProto::OnBeginSession(const CAuthenticationBeginAuthSessionViaCredentialsResponse &reply, const CMsgProtoBufHeader &hdr)
{
- proto::AuthenticationBeginAuthSessionViaCredentialsResponse reply(buf, cbLen);
- if (reply == nullptr) {
- LoginFailed();
+ if (hdr.failed()) {
+ Logout();
return;
}
- // Success
- if (reply->has_client_id && reply->has_steamid) {
+ if (reply.has_client_id && reply.has_steamid) {
DeleteAuthSettings();
- SetId(DBKEY_STEAM_ID, reply->steamid);
- SetId(DBKEY_CLIENT_ID, reply->client_id);
+ SetId(DBKEY_STEAM_ID, m_iSteamId = reply.steamid);
+ SetId(DBKEY_CLIENT_ID, m_iClientId = reply.client_id);
+
+ if (reply.has_request_id)
+ m_requestId.append(reply.request_id.data, reply.request_id.len);
+
+ bool bHasEmail = false, bHasTotp = false;
+ for (int i = 0; i < reply.n_allowed_confirmations; i++) {
+ auto &conf = reply.allowed_confirmations[i];
+ debugLogA("Confirmation required %d (%s)", conf->confirmation_type, conf->associated_message);
+ switch (conf->confirmation_type) {
+ case EAUTH_SESSION_GUARD_TYPE__k_EAuthSessionGuardType_DeviceConfirmation:
+ m_impl.m_loginPoll.StartSafe((reply.has_interval ? reply.interval : 5) * 1000);
+ m_iPollStartTime = time(0);
+ __fallthrough;
+
+ case EAUTH_SESSION_GUARD_TYPE__k_EAuthSessionGuardType_None: // nothing to do
+ SendPollRequest();
+ return;
+
+ case EAUTH_SESSION_GUARD_TYPE__k_EAuthSessionGuardType_EmailCode: // email confirmation
+ bHasEmail = true;
+ break;
+
+ case EAUTH_SESSION_GUARD_TYPE__k_EAuthSessionGuardType_DeviceCode: // totp confirmation
+ bHasTotp = true;
+ break;
+
+ default:
+ debugLogA("Unsupported confirmation code: %i", conf->confirmation_type);
+ Logout();
+ return;
+ }
+ }
- CAuthenticationPollAuthSessionStatusRequest request;
- request.client_id = reply->client_id; request.has_client_id = true;
- request.request_id = reply->request_id; request.has_request_id = true;
- WSSendService("Authentication.PollAuthSessionStatus#1", request, &CSteamProto::OnPollSession);
+ if (bHasEmail)
+ CallFunctionSync(EnterEmailCode, this);
+ else if (bHasTotp)
+ CallFunctionSync(EnterTotpCode, this);
+ else // no confirmation needed - we've done
+ SendPollRequest();
}
else {
- debugLogA("Something went wrong: %s", reply->extended_error_message);
- LoginFailed();
+ debugLogA("Something went wrong: %s", reply.extended_error_message);
+ Logout();
}
}
-void CSteamProto::OnPollSession(const uint8_t *buf, size_t cbLen)
+/////////////////////////////////////////////////////////////////////////////////////////
+
+INT_PTR CALLBACK CSteamProto::EnterEmailCode(void *param)
{
- proto::AuthenticationPollAuthSessionStatusResponse reply(buf, cbLen);
- if (reply == nullptr || !reply->access_token || !reply->refresh_token) {
- LoginFailed();
- return;
+ auto *ppro = (CSteamProto *)param;
+
+ ENTER_STRING es = {};
+ es.szModuleName = ppro->m_szModuleName;
+ es.caption = TranslateT("Enter email confimation code");
+ if (EnterString(&es)) {
+ ppro->SendConfirmationCode(true, T2Utf(es.ptszResult));
+ mir_free(es.ptszResult);
+ }
+ else ppro->m_ws->terminate();
+ return 0;
+}
+
+INT_PTR CALLBACK CSteamProto::EnterTotpCode(void *param)
+{
+ auto *ppro = (CSteamProto *)param;
+
+ ENTER_STRING es = {};
+ es.szModuleName = ppro->m_szModuleName;
+ es.caption = TranslateT("Enter the code from your authentication device");
+ if (EnterString(&es)) {
+ ppro->SendConfirmationCode(false, T2Utf(es.ptszResult));
+ mir_free(es.ptszResult);
}
+ else ppro->m_ws->terminate();
+ return 0;
+}
- m_szAccessToken = reply->access_token;
- m_szRefreshToken = reply->refresh_token;
+/////////////////////////////////////////////////////////////////////////////////////////
- ptrA szAccountName(getUStringA(DBKEY_ACCOUNT_NAME));
-
- MBinBuffer machineId(getBlob(DBKEY_MACHINE_ID));
- if (!machineId.length()) {
- uint8_t random[100], hashOut[20];
- Utils_GetRandom(random, sizeof(random));
- mir_sha1_hash(random, sizeof(random), hashOut);
-
- db_set_blob(0, m_szModuleName, DBKEY_MACHINE_ID, hashOut, sizeof(hashOut));
- machineId.append(hashOut, sizeof(hashOut));
+void CSteamProto::SendConfirmationCode(bool isEmail, const char *pszCode)
+{
+ CAuthenticationUpdateAuthSessionWithSteamGuardCodeRequest request;
+ request.steamid = GetId(DBKEY_STEAM_ID); request.has_steamid = true;
+ request.client_id = GetId(DBKEY_CLIENT_ID); request.has_client_id = true;
+ if (isEmail)
+ request.code_type = EAUTH_SESSION_GUARD_TYPE__k_EAuthSessionGuardType_EmailCode;
+ else
+ request.code_type = EAUTH_SESSION_GUARD_TYPE__k_EAuthSessionGuardType_DeviceCode;
+ request.has_code_type = true;
+ request.code = (char*)pszCode;
+ WSSendAnon(UpdateAuthSessionWithSteamGuardCode, request);
+}
+
+void CSteamProto::OnGotConfirmationCode(const CAuthenticationUpdateAuthSessionWithSteamGuardCodeResponse &, const CMsgProtoBufHeader &hdr)
+{
+ if (hdr.failed() && hdr.eresult != (int)EResult::DuplicateRequest)
+ Logout();
+ else
+ SendPollRequest();
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
+void CSteamProto::SendPollRequest()
+{
+ CAuthenticationPollAuthSessionStatusRequest request;
+ request.client_id = GetId(DBKEY_CLIENT_ID); request.has_client_id = true;
+ request.request_id.data = m_requestId.data(); request.request_id.len = m_requestId.length(); request.has_request_id = true;
+ WSSendAnon(PollAuthSessionStatus, request);
+}
+
+void CSteamProto::OnPollSession(const CAuthenticationPollAuthSessionStatusResponse &reply, const CMsgProtoBufHeader &)
+{
+ if (!reply.refresh_token) {
+ if (m_iPollStartTime && time(0) - m_iPollStartTime > 60)
+ Logout();
+ return;
}
+ // hurrah, server accepted guard request
+ m_impl.m_loginPoll.StopSafe();
+
+ if (reply.has_new_client_id)
+ m_iClientId = reply.new_client_id;
+
+ if (reply.new_guard_data)
+ setString("MachineId", reply.new_guard_data);
+
+ m_szAccessToken = reply.access_token;
+ m_szRefreshToken = reply.refresh_token;
+
+ // sending logon packet
+ ptrA szAccountName(getUStringA(DBKEY_ACCOUNT_NAME)), szPassword(getUStringA("Password"));
+ T2Utf szMachineName(m_wszDeviceName);
+ MBinBuffer machineId(createMachineID(szAccountName));
+
CMsgIPAddress privateIp;
privateIp.ip_case = CMSG_IPADDRESS__IP_V4;
- privateIp.v4 = 0;
+ privateIp.v4 = crc32(0xBABABEDA, (const Bytef *)szMachineName, (unsigned)mir_strlen(szMachineName));
CMsgClientLogon request;
- request.access_token = reply->access_token;
- request.account_name = szAccountName.get();
+ request.access_token = reply.refresh_token;
+ request.machine_name = szMachineName;
request.client_language = "english";
request.client_os_type = 16; request.has_client_os_type = true;
- request.should_remember_password = false; request.has_should_remember_password = true;
+ request.should_remember_password = request.has_should_remember_password = true;
request.obfuscated_private_ip = &privateIp;
request.protocol_version = STEAM_PROTOCOL_VERSION; request.has_protocol_version = true;
request.supports_rate_limit_response = request.has_supports_rate_limit_response = true;
- request.machine_name = "";
request.steamguard_dont_remember_computer = false; request.has_steamguard_dont_remember_computer = true;
request.chat_mode = 2; request.has_chat_mode = true;
request.cell_id = 7; request.has_cell_id = true;
- request.machine_id.data = machineId.data();
- request.machine_id.len = machineId.length();
+ request.machine_id.data = machineId.data(); request.machine_id.len = machineId.length();
WSSend(EMsg::ClientLogon, request);
}
-void CSteamProto::OnLoggedOn(const uint8_t *buf, size_t cbLen)
+void CSteamProto::OnClientLogon(const CMsgClientLogonResponse &reply, const CMsgProtoBufHeader &hdr)
{
- proto::MsgClientLogonResponse reply(buf, cbLen);
- if (reply == nullptr || !reply->has_eresult) {
- LoginFailed();
+ if (hdr.failed()) {
+ Logout();
return;
}
- if (reply->eresult != 1) {
- debugLogA("Login failed with error %d", reply->eresult);
- LoginFailed();
- return;
- }
+ if (reply.has_heartbeat_seconds)
+ m_impl.m_heartBeat.Start(reply.heartbeat_seconds * 1000);
// go to online now
ProtoBroadcastAck(NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)ID_STATUS_CONNECTING, m_iStatus = m_iDesiredStatus);
- // load contact list
- // SendRequest(new GetFriendListRequest(token, steamId, "friend,ignoredfriend,requestrecipient"), &CSteamProto::OnGotFriendList);
+ SendPersonaStatus(m_iStatus);
+ SendGetChatsRequest();
+
+ WSSend(EMsg::ClientChatGetFriendMessageHistoryForOfflineMessages, NoResponse());
+}
+
+void CSteamProto::OnClientLogoff(const CMsgClientLoggedOff &reply, const CMsgProtoBufHeader&)
+{
+ debugLogA("received logout request with error code %d", reply.has_eresult ? reply.eresult : 0);
+ Logout();
}
diff --git a/protocols/Steam/src/steam_menus.cpp b/protocols/Steam/src/steam_menus.cpp
index 6ed3f211fa..c5bc24e395 100644
--- a/protocols/Steam/src/steam_menus.cpp
+++ b/protocols/Steam/src/steam_menus.cpp
@@ -1,15 +1,7 @@
#include "stdafx.h"
-int CSteamProto::hChooserMenu;
HGENMENU CSteamProto::contactMenuItems[CMI_MAX];
-template<int(__cdecl CSteamProto::*Service)(WPARAM, LPARAM)>
-INT_PTR GlobalService(WPARAM hContact, LPARAM lParam)
-{
- CSteamProto *ppro = CMPlugin::getInstance((MCONTACT)hContact);
- return ppro ? (ppro->*Service)(hContact, lParam) : 0;
-}
-
INT_PTR CSteamProto::AuthRequestCommand(WPARAM hContact, LPARAM)
{
ProtoChainSend(hContact, PSS_AUTHREQUEST, 0, 0);
@@ -18,35 +10,23 @@ INT_PTR CSteamProto::AuthRequestCommand(WPARAM hContact, LPARAM)
INT_PTR CSteamProto::AuthRevokeCommand(WPARAM hContact, LPARAM)
{
- ptrA token(getStringA("TokenSecret"));
- ptrA sessionId(getStringA("SessionID"));
- ptrA steamId(getStringA(DBKEY_STEAM_ID));
- char *who = getStringA(hContact, DBKEY_STEAM_ID);
- SendRequest(new RemoveFriendRequest(token, sessionId, steamId, who), &CSteamProto::OnFriendRemoved, who);
+ SendUserRemoveRequest(hContact);
return 0;
}
-int CSteamProto::BlockCommand(WPARAM hContact, LPARAM)
+INT_PTR CSteamProto::BlockCommand(WPARAM hContact, LPARAM)
{
- ptrA token(getStringA("TokenSecret"));
- ptrA sessionId(getStringA("SessionID"));
- ptrA steamId(getStringA(DBKEY_STEAM_ID));
- char *who = getStringA(hContact, DBKEY_STEAM_ID);
- SendRequest(new BlockFriendRequest(token, sessionId, steamId, who), &CSteamProto::OnFriendBlocked, who);
+ SendUserIgnoreRequest(hContact, true);
return 0;
}
-int CSteamProto::UnblockCommand(WPARAM hContact, LPARAM)
+INT_PTR CSteamProto::UnblockCommand(WPARAM hContact, LPARAM)
{
- ptrA token(getStringA("TokenSecret"));
- ptrA sessionId(getStringA("SessionID"));
- ptrA steamId(getStringA(DBKEY_STEAM_ID));
- char *who = getStringA(hContact, DBKEY_STEAM_ID);
- SendRequest(new UnblockFriendRequest(token, sessionId, steamId, who), &CSteamProto::OnFriendUnblocked, who);
+ SendUserIgnoreRequest(hContact, false);
return 0;
}
-int CSteamProto::JoinToGameCommand(WPARAM hContact, LPARAM)
+INT_PTR CSteamProto::JoinGameCommand(WPARAM hContact, LPARAM)
{
char url[MAX_PATH];
uint32_t gameId = getDword(hContact, "GameID", 0);
@@ -55,11 +35,18 @@ int CSteamProto::JoinToGameCommand(WPARAM hContact, LPARAM)
return 0;
}
+INT_PTR CSteamProto::JoinChatCommand(WPARAM hContact, LPARAM)
+{
+ CChatRoomJoinChatRoomGroupRequest request;
+ request.chat_group_id = GetId(hContact, DBKEY_GROUP_ID); request.has_chat_group_id = true;
+ // request.chat_id = getDword(hContact, DBKEY_CHAT_ID); request.has_chat_id = true;
+ WSSendService(JoinChatRoomGroup, request);
+ return 0;
+}
+
INT_PTR CSteamProto::OpenBlockListCommand(WPARAM, LPARAM)
{
- ptrA token(getStringA("TokenSecret"));
- ptrA steamId(getStringA(DBKEY_STEAM_ID));
- SendRequest(new GetFriendListRequest(token, steamId, "ignoredfriend"), &CSteamProto::OnGotBlockList);
+ // SendRequest(new GetFriendListRequest(m_szAccessToken, m_iSteamId, "ignoredfriend"), &CSteamProto::OnGotBlockList);
return 0;
}
@@ -73,16 +60,22 @@ int CSteamProto::OnPrebuildContactMenu(WPARAM hContact, LPARAM)
bool ctrlPressed = (GetKeyState(VK_CONTROL) & 0x8000) != 0;
- bool authNeeded = getBool(hContact, "Auth", 0);
- Menu_ShowItem(GetMenuItem(PROTO_MENU_REQ_AUTH), authNeeded || ctrlPressed);
- Menu_ShowItem(GetMenuItem(PROTO_MENU_REVOKE_AUTH), !authNeeded || ctrlPressed);
+ if (!Contact::IsGroupChat(hContact)) {
+ bool authNeeded = getBool(hContact, "Auth");
+ Menu_ShowItem(GetMenuItem(PROTO_MENU_REQ_AUTH), authNeeded || ctrlPressed);
+ Menu_ShowItem(GetMenuItem(PROTO_MENU_REVOKE_AUTH), !authNeeded || ctrlPressed);
+ }
- bool isBlocked = getBool(hContact, "Block", 0);
+ bool isBlocked = getBool(hContact, "Block");
Menu_ShowItem(contactMenuItems[CMI_BLOCK], !isBlocked || ctrlPressed);
Menu_ShowItem(contactMenuItems[CMI_UNBLOCK], isBlocked || ctrlPressed);
- uint32_t gameId = getDword(hContact, "GameID", 0);
+ uint32_t gameId = getDword(hContact, "GameID");
Menu_ShowItem(contactMenuItems[CMI_JOIN_GAME], gameId || ctrlPressed);
+
+ int chatType = getByte(hContact, "ChatRoom");
+ int64_t chatId = GetId(hContact, DBKEY_CHAT_ID);
+ Menu_ShowItem(contactMenuItems[CMI_JOIN_CHAT], chatId && chatType == GCW_SERVER);
return 0;
}
@@ -111,26 +104,21 @@ void CSteamProto::OnInitStatusMenu()
void CSteamProto::InitMenus()
{
- hChooserMenu = Menu_AddObject("SteamAccountChooser", LPGEN("Steam menu chooser"), nullptr, "Steam/MenuChoose");
-
- //////////////////////////////////////////////////////////////////////////////////////
- // Contact menu initialization
CMenuItem mi(&g_plugin);
- mi.flags = CMIF_UNICODE;
- // "Block"
+ // Block
SET_UID(mi, 0xc6169b8f, 0x53ab, 0x4242, 0xbe, 0x90, 0xe2, 0x4a, 0xa5, 0x73, 0x88, 0x32);
- mi.pszService = MODULE "/Block";
- mi.name.w = LPGENW("Block");
+ mi.pszService = MODULENAME "/Block";
+ mi.name.a = LPGEN("Block");
mi.position = -201001001 + CMI_BLOCK;
mi.hIcolibItem = Skin_GetIconHandle(SKINICON_OTHER_OFF);
contactMenuItems[CMI_BLOCK] = Menu_AddContactMenuItem(&mi);
CreateServiceFunction(mi.pszService, GlobalService<&CSteamProto::BlockCommand>);
- // "Unblock"
+ // Unblock
SET_UID(mi, 0xc6169b8f, 0x53ab, 0x4242, 0xbe, 0x90, 0xe2, 0x4a, 0xa5, 0x73, 0x88, 0x32);
- mi.pszService = MODULE "/Unblock";
- mi.name.w = LPGENW("Unblock");
+ mi.pszService = MODULENAME "/Unblock";
+ mi.name.a = LPGEN("Unblock");
mi.position = -201001001 + CMI_UNBLOCK;
mi.hIcolibItem = Skin_GetIconHandle(SKINICON_OTHER_ON);
contactMenuItems[CMI_UNBLOCK] = Menu_AddContactMenuItem(&mi);
@@ -138,14 +126,23 @@ void CSteamProto::InitMenus()
mi.flags |= CMIF_NOTOFFLINE;
- // "Join to game"
+ // Join to game
SET_UID(mi, 0x1a6aaab7, 0xba31, 0x4b47, 0x8e, 0xce, 0xf8, 0x8e, 0xf4, 0x62, 0x4f, 0xd7);
- mi.pszService = MODULE "/JoinToGame";
- mi.name.w = LPGENW("Join to game");
+ mi.pszService = MODULENAME "/JoinGame";
+ mi.name.a = LPGEN("Join the game");
mi.position = -200001000 + CMI_JOIN_GAME;
mi.hIcolibItem = nullptr;
contactMenuItems[CMI_JOIN_GAME] = Menu_AddContactMenuItem(&mi);
- CreateServiceFunction(mi.pszService, GlobalService<&CSteamProto::JoinToGameCommand>);
+ CreateServiceFunction(mi.pszService, GlobalService<&CSteamProto::JoinGameCommand>);
+
+ // Join clan's chat
+ SET_UID(mi, 0x4da0c3d3, 0x6fca, 0x42ba, 0xac, 0x72, 0x5c, 0xc9, 0x42, 0x5a, 0x70, 0x4e);
+ mi.pszService = MODULENAME "/JoinChat";
+ mi.name.a = LPGEN("Join group chat");
+ mi.position = -200001002 + CMI_JOIN_GAME;
+ mi.hIcolibItem = Skin_GetIconHandle(SKINICON_CHAT_JOIN);
+ contactMenuItems[CMI_JOIN_CHAT] = Menu_AddContactMenuItem(&mi);
+ CreateServiceFunction(mi.pszService, GlobalService<&CSteamProto::JoinChatCommand>);
HookEvent(ME_CLIST_PREBUILDCONTACTMENU, &CSteamProto::PrebuildContactMenu);
}
diff --git a/protocols/Steam/src/steam_messages.cpp b/protocols/Steam/src/steam_messages.cpp
index 42c70d6471..af08d6ae64 100644
--- a/protocols/Steam/src/steam_messages.cpp
+++ b/protocols/Steam/src/steam_messages.cpp
@@ -1,85 +1,90 @@
#include "stdafx.h"
-struct SendMessageParam
+void CSteamProto::SendFriendMessage(EChatEntryType entry_type, int64_t steamId, const char *pszMessage, void *pInfo)
{
- MCONTACT hContact;
- HANDLE hMessage;
-};
-
-int CSteamProto::OnSendMessage(MCONTACT hContact, const char *message)
-{
- UINT hMessage = InterlockedIncrement(&hMessageProcess);
-
- SendMessageParam *param = (SendMessageParam *)mir_calloc(sizeof(SendMessageParam));
- param->hContact = hContact;
- param->hMessage = (HANDLE)hMessage;
-
- ptrA token(getStringA("TokenSecret"));
- ptrA umqid(getStringA("UMQID"));
- ptrA steamId(getStringA(hContact, DBKEY_STEAM_ID));
- SendRequest(new SendMessageRequest(token, umqid, steamId, message), &CSteamProto::OnMessageSent, param);
- return hMessage;
+ CFriendMessagesSendMessageRequest request;
+ request.chat_entry_type = (int)entry_type; request.has_chat_entry_type = true;
+ request.contains_bbcode = request.has_contains_bbcode = true;
+ request.steamid = steamId; request.has_steamid = true;
+ request.message = (char *)pszMessage;
+ WSSendService(FriendSendMessage, request, pInfo);
}
-void CSteamProto::OnMessageSent(const HttpResponse &response, void *arg)
+void CSteamProto::OnMessageSent(const CFriendMessagesSendMessageResponse &reply, const CMsgProtoBufHeader &hdr)
{
- SendMessageParam *param = (SendMessageParam *)arg;
-
- std::string error = Translate("Unknown error");
- ptrW steamId(getWStringA(param->hContact, DBKEY_STEAM_ID));
- time_t timestamp = NULL;
+ auto *pOwn = (COwnMessage*)GetRequestInfo(hdr.jobid_target);
+ if (pOwn == nullptr)
+ return;
- if (response) {
- JSONNode root = JSONNode::parse(response.data());
- const JSONNode &node = root["error"];
- if (node)
- error = node.as_string();
-
- timestamp = atol(root["utc_timestamp"].as_string().c_str());
- if (timestamp > getDword(param->hContact, DB_KEY_LASTMSGTS))
- setDword(param->hContact, DB_KEY_LASTMSGTS, timestamp);
+ if (hdr.failed()) {
+ CMStringW wszMessage(FORMAT, TranslateT("Message sending has failed with error %d"), hdr.eresult);
+ ProtoBroadcastAck(pOwn->hContact, ACKTYPE_MESSAGE, ACKRESULT_FAILED, (HANDLE)pOwn->iMessageId, (LPARAM)wszMessage.c_str());
}
+ else {
+ uint32_t timestamp = (reply.has_server_timestamp) ? reply.server_timestamp : 0;
+ if (timestamp > getDword(pOwn->hContact, DBKEY_LASTMSG))
+ setDword(pOwn->hContact, DBKEY_LASTMSG, timestamp);
- if (mir_strcmpi(error.c_str(), "OK") != 0) {
- debugLogA(__FUNCTION__ ": failed to send message for %s (%s)", steamId.get(), error.c_str());
- ProtoBroadcastAck(param->hContact, ACKTYPE_MESSAGE, ACKRESULT_FAILED, param->hMessage, _A2T(error.c_str()));
+ pOwn->timestamp = timestamp;
+ ProtoBroadcastAck(pOwn->hContact, ACKTYPE_MESSAGE, ACKRESULT_SUCCESS, (HANDLE)pOwn->iMessageId, 0);
}
- else {
- // remember server time of this message
- auto it = m_mpOutMessages.find(param->hMessage);
- if (it == m_mpOutMessages.end() && timestamp != NULL)
- m_mpOutMessages[param->hMessage] = timestamp;
+}
- ProtoBroadcastAck(param->hContact, ACKTYPE_MESSAGE, ACKRESULT_SUCCESS, param->hMessage, 0);
+/////////////////////////////////////////////////////////////////////////////////////////
+
+void CSteamProto::OnGotIncomingMessage(const CFriendMessagesIncomingMessageNotification &reply, const CMsgProtoBufHeader &)
+{
+ MCONTACT hContact = GetContact(reply.steamid_friend);
+ if (!hContact) {
+ debugLogA("message from unknown account %lld ignored", reply.steamid_friend);
+ return;
}
- mir_free(param);
+ switch (EChatEntryType(reply.chat_entry_type)) {
+ case EChatEntryType::ChatMsg:
+ {
+ DB::EventInfo dbei;
+ dbei.flags = DBEF_UTF;
+ if (reply.has_local_echo && reply.local_echo)
+ dbei.flags |= DBEF_SENT;
+ dbei.cbBlob = (int)mir_strlen(reply.message);
+ dbei.pBlob = reply.message;
+ dbei.iTimestamp = reply.has_rtime32_server_timestamp ? reply.rtime32_server_timestamp : time(0);
+ ProtoChainRecvMsg(hContact, dbei);
+ }
+ break;
+
+ case EChatEntryType::Typing:
+ CallService(MS_PROTO_CONTACTISTYPING, hContact, 10);
+ break;
+ }
}
-int CSteamProto::OnPreCreateMessage(WPARAM, LPARAM lParam)
+void CSteamProto::OnGotMarkRead(const CFriendMessagesAckMessageNotification &reply, const CMsgProtoBufHeader &)
{
- MessageWindowEvent *evt = (MessageWindowEvent *)lParam;
- if (mir_strcmp(Proto_GetBaseAccountName(evt->hContact), m_szModuleName))
- return 0;
-
- auto it = m_mpOutMessages.find((HANDLE)evt->seq);
- if (it != m_mpOutMessages.end()) {
- evt->dbei->timestamp = it->second;
- m_mpOutMessages.erase(it);
+ MCONTACT hContact = GetContact(reply.steamid_partner);
+ if (!hContact) {
+ debugLogA("notification from unknown account %lld ignored", reply.steamid_partner);
+ return;
}
- return 0;
+ DB::ECPTR pCursor(DB::Events(hContact, db_event_firstUnread(hContact)));
+ while (MEVENT hDbEvent = pCursor.FetchNext()) {
+ DB::EventInfo dbei(hDbEvent, false);
+ if (reply.timestamp > dbei.iTimestamp)
+ break;
+
+ if (!dbei.bRead)
+ db_event_markRead(hContact, hDbEvent, true);
+ }
}
+/////////////////////////////////////////////////////////////////////////////////////////
+
int CSteamProto::UserIsTyping(MCONTACT hContact, int type)
{
// NOTE: Steam doesn't support sending "user stopped typing" so we're sending only positive info
- if (type == PROTOTYPE_SELFTYPING_OFF)
- return 0;
-
- ptrA token(getStringA("TokenSecret"));
- ptrA umqid(getStringA("UMQID"));
- ptrA steamId(getStringA(hContact, DBKEY_STEAM_ID));
- SendRequest(new SendTypingRequest(token, umqid, steamId));
+ if (type == PROTOTYPE_SELFTYPING_ON)
+ SendFriendMessage(EChatEntryType::Typing, GetId(hContact, DBKEY_STEAM_ID), "");
return 0;
}
diff --git a/protocols/Steam/src/steam_proto.cpp b/protocols/Steam/src/steam_proto.cpp
index 77dc767621..7952a237a4 100644
--- a/protocols/Steam/src/steam_proto.cpp
+++ b/protocols/Steam/src/steam_proto.cpp
@@ -1,42 +1,12 @@
#include "stdafx.h"
-static int CompareRequests(const ProtoRequest *p1, const ProtoRequest *p2)
-{
- if (p1->id == p2->id)
- return 0;
- return (p1->id < p2->id) ? -1 : 1;
-}
-
CSteamProto::CSteamProto(const char *protoName, const wchar_t *userName) :
PROTO<CSteamProto>(protoName, userName),
- m_arRequests(10, CompareRequests),
+ m_impl(*this),
+ m_arOwnMessages(1, NumericKeySortT),
m_wszGroupName(this, "DefaultGroup", L"Steam"),
m_wszDeviceName(this, "DeviceName", L"Miranda NG")
{
- // icons
- wchar_t filePath[MAX_PATH];
- GetModuleFileName(g_plugin.getInst(), filePath, MAX_PATH);
-
- wchar_t sectionName[100];
- mir_snwprintf(sectionName, L"%s/%s", LPGENW("Protocols"), _A2W(MODULE));
-
- char settingName[100];
- mir_snprintf(settingName, "%s_%s", MODULE, "main");
-
- SKINICONDESC sid = {};
- sid.flags = SIDF_ALL_UNICODE;
- sid.defaultFile.w = filePath;
- sid.pszName = settingName;
- sid.section.w = sectionName;
- sid.description.w = LPGENW("Protocol icon");
- sid.iDefaultIndex = -IDI_STEAM;
- g_plugin.addIcon(&sid);
-
- mir_snprintf(settingName, "%s_%s", MODULE, "gaming");
- sid.description.w = LPGENW("Gaming icon");
- sid.iDefaultIndex = -IDI_GAMING;
- g_plugin.addIcon(&sid);
-
// temporary DB settings
db_set_resident(m_szModuleName, "XStatusId");
db_set_resident(m_szModuleName, "XStatusName");
@@ -44,7 +14,6 @@ CSteamProto::CSteamProto(const char *protoName, const wchar_t *userName) :
db_set_resident(m_szModuleName, "IdleTS");
db_set_resident(m_szModuleName, "GameID");
db_set_resident(m_szModuleName, "ServerIP");
- db_set_resident(m_szModuleName, "ServerID");
SetAllContactStatuses(ID_STATUS_OFFLINE);
@@ -55,6 +24,11 @@ CSteamProto::CSteamProto(const char *protoName, const wchar_t *userName) :
CreateProtoService(PS_GETAVATARCAPS, &CSteamProto::GetAvatarCaps);
CreateProtoService(PS_GETMYAVATAR, &CSteamProto::GetMyAvatar);
+ // history
+ CreateProtoService(PS_MENU_LOADHISTORY, &CSteamProto::SvcLoadServerHistory);
+ CreateProtoService(PS_CAN_EMPTY_HISTORY, &CSteamProto::SvcCanEmptyHistory);
+ CreateProtoService(PS_EMPTY_SRV_HISTORY, &CSteamProto::SvcEmptyHistory);
+
// custom status API
CreateProtoService(PS_GETCUSTOMSTATUSEX, &CSteamProto::OnGetXStatusEx);
CreateProtoService(PS_GETCUSTOMSTATUSICON, &CSteamProto::OnGetXStatusIcon);
@@ -77,13 +51,17 @@ CSteamProto::CSteamProto(const char *protoName, const wchar_t *userName) :
nlu.szSettingsModule = m_szModuleName;
m_hNetlibUser = Netlib_RegisterUser(&nlu);
- debugLogA(__FUNCTION__":Setting protocol / module name to '%s'", m_szModuleName);
+ // groupchat initialization
+ GCREGISTER gcr = {};
+ gcr.dwFlags = GC_TYPNOTIF | GC_DATABASE | GC_PERSISTENT;
+ gcr.ptszDispName = m_tszUserName;
+ gcr.pszModule = m_szModuleName;
+ Chat_Register(&gcr);
- if (uint32_t iGlobalValue = getDword(DB_KEY_LASTMSGTS)) {
- for (auto &cc : AccContacts())
- setDword(cc, DB_KEY_LASTMSGTS, iGlobalValue);
- delSetting(DB_KEY_LASTMSGTS);
- }
+ CreateProtoService(PS_LEAVECHAT, &CSteamProto::SvcLeaveChat);
+
+ HookProtoEvent(ME_GC_EVENT, &CSteamProto::GcEventHook);
+ HookProtoEvent(ME_GC_BUILDMENU, &CSteamProto::GcMenuHook);
}
CSteamProto::~CSteamProto()
@@ -92,12 +70,10 @@ CSteamProto::~CSteamProto()
MCONTACT CSteamProto::AddToList(int, PROTOSEARCHRESULT *psr)
{
- MCONTACT hContact = AddContact(T2Utf(psr->id.w), psr->nick.w, true);
+ uint64_t id = _wtoi64(psr->id.w);
+ MCONTACT hContact = AddContact(id, psr->nick.w, true);
- if (psr->cbSize == sizeof(STEAM_SEARCH_RESULT)) {
- STEAM_SEARCH_RESULT *ssr = (STEAM_SEARCH_RESULT *)psr;
- UpdateContactDetails(hContact, *ssr->data);
- }
+ SendUserInfoRequest(id);
return hContact;
}
@@ -113,7 +89,7 @@ MCONTACT CSteamProto::AddToListByEvent(int, int, MEVENT hDbEvent)
return 0;
DB::AUTH_BLOB blob(dbei.pBlob);
- return AddContact(blob.get_email(), Utf2T(blob.get_nick()));
+ return AddContact(_atoi64(blob.get_email()), Utf2T(blob.get_nick()));
}
int CSteamProto::Authorize(MEVENT hDbEvent)
@@ -123,16 +99,10 @@ int CSteamProto::Authorize(MEVENT hDbEvent)
if (hContact == INVALID_CONTACT_ID)
return 1;
- ptrA token(getStringA("TokenSecret"));
ptrA sessionId(getStringA("SessionID"));
- ptrA steamId(getStringA(DBKEY_STEAM_ID));
char *who = getStringA(hContact, DBKEY_STEAM_ID);
- SendRequest(
- new ApprovePendingRequest(token, sessionId, steamId, who),
- &CSteamProto::OnPendingApproved,
- who);
-
+ SendRequest(new ApprovePendingRequest(m_szAccessToken, sessionId, m_iSteamId, who), &CSteamProto::OnPendingApproved, who);
return 0;
}
@@ -153,16 +123,9 @@ int CSteamProto::AuthDeny(MEVENT hDbEvent, const wchar_t*)
if (hContact == INVALID_CONTACT_ID)
return 1;
- ptrA token(getStringA("TokenSecret"));
ptrA sessionId(getStringA("SessionID"));
- ptrA steamId(getStringA(DBKEY_STEAM_ID));
char *who = getStringA(hContact, DBKEY_STEAM_ID);
-
- SendRequest(
- new IgnorePendingRequest(token, sessionId, steamId, who),
- &CSteamProto::OnPendingIgnoreded,
- who);
-
+ SendRequest(new IgnorePendingRequest(m_szAccessToken, sessionId, m_iSteamId, who), &CSteamProto::OnPendingIgnoreded, who);
return 0;
}
@@ -173,21 +136,7 @@ int CSteamProto::AuthRequest(MCONTACT hContact, const wchar_t*)
{
if (IsOnline() && hContact) {
UINT hAuth = InterlockedIncrement(&hAuthProcess);
-
- SendAuthParam *param = (SendAuthParam*)mir_calloc(sizeof(SendAuthParam));
- param->hContact = hContact;
- param->hAuth = (HANDLE)hAuth;
-
- ptrA token(getStringA("TokenSecret"));
- ptrA sessionId(getStringA("SessionID"));
- ptrA steamId(getStringA(DBKEY_STEAM_ID));
- ptrA who(getStringA(hContact, DBKEY_STEAM_ID));
-
- SendRequest(
- new AddFriendRequest(token, sessionId, steamId, who),
- &CSteamProto::OnFriendAdded,
- param);
-
+ SendUserAddRequest(GetId(hContact, DBKEY_STEAM_ID));
return hAuth;
}
@@ -202,7 +151,7 @@ INT_PTR CSteamProto::GetCaps(int type, MCONTACT)
case PFLAGNUM_2:
return PF2_ONLINE | PF2_SHORTAWAY | PF2_LONGAWAY | PF2_HEAVYDND | PF2_FREECHAT | PF2_INVISIBLE;
case PFLAGNUM_4:
- return PF4_AVATARS | PF4_NOCUSTOMAUTH | PF4_NOAUTHDENYREASON | PF4_FORCEAUTH | PF4_SUPPORTIDLE | PF4_SUPPORTTYPING;// | PF4_IMSENDOFFLINE;
+ return PF4_AVATARS | PF4_NOCUSTOMAUTH | PF4_NOAUTHDENYREASON | PF4_FORCEAUTH | PF4_SUPPORTIDLE | PF4_SUPPORTTYPING | PF4_SERVERMSGID;
case PFLAGNUM_5:
return PF2_HEAVYDND | PF2_FREECHAT;
case PFLAG_UNIQUEIDTEXT:
@@ -218,7 +167,7 @@ HANDLE CSteamProto::SearchBasic(const wchar_t* id)
return nullptr;
ptrA steamId(mir_u2a(id));
- SendRequest(new GetUserSummariesRequest(this, steamId), &CSteamProto::OnSearchResults, (HANDLE)STEAM_SEARCH_BYID);
+ SendRequest(new GetUserSummariesRequest(m_szAccessToken, steamId), &CSteamProto::OnSearchResults, (HANDLE)STEAM_SEARCH_BYID);
return (HANDLE)STEAM_SEARCH_BYID;
}
@@ -232,11 +181,10 @@ HANDLE CSteamProto::SearchByName(const wchar_t *nick, const wchar_t *firstName,
wchar_t keywordsT[200];
mir_snwprintf(keywordsT, L"%s %s %s", nick, firstName, lastName);
- ptrA token(getStringA("TokenSecret"));
ptrA keywords(mir_utf8encodeW(rtrimw(keywordsT)));
SendRequest(
- new SearchRequest(token, keywords),
+ new SearchRequest(m_szAccessToken, keywords),
&CSteamProto::OnSearchByNameStarted,
(HANDLE)STEAM_SEARCH_BYNAME);
@@ -248,7 +196,15 @@ int CSteamProto::SendMsg(MCONTACT hContact, MEVENT, const char *message)
if (!IsOnline())
return -1;
- return OnSendMessage(hContact, message);
+ UINT hMessage = InterlockedIncrement(&hMessageProcess);
+ auto *pOwn = new COwnMessage(hContact, hMessage);
+ {
+ mir_cslock lck(m_csOwnMessages);
+ m_arOwnMessages.insert(pOwn);
+ }
+
+ SendFriendMessage(EChatEntryType::ChatMsg, GetId(hContact, DBKEY_STEAM_ID), message, pOwn);
+ return hMessage;
}
int CSteamProto::SetStatus(int new_status)
@@ -283,27 +239,31 @@ int CSteamProto::SetStatus(int new_status)
m_iDesiredStatus = new_status;
if (new_status == ID_STATUS_OFFLINE) {
- m_iStatus = m_iDesiredStatus = ID_STATUS_OFFLINE;
-
if (!Miranda_IsTerminated())
SetAllContactStatuses(ID_STATUS_OFFLINE);
+ if (IsOnline())
+ SendLogout();
+
Logout();
}
else if (m_ws == nullptr && !IsStatusConnecting(m_iStatus)) {
m_iStatus = ID_STATUS_CONNECTING;
- ForkThread(&CSteamProto::ServerThread);
-
- Login();
ProtoBroadcastAck(NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)old_status, m_iStatus);
+
+ ForkThread(&CSteamProto::ServerThread);
}
else if (IsOnline()) {
m_iStatus = new_status;
ProtoBroadcastAck(NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)old_status, m_iStatus);
+
+ SendPersonaStatus(m_iStatus);
}
return 0;
}
+/////////////////////////////////////////////////////////////////////////////////////////
+
void CSteamProto::GetAwayMsgThread(void *arg)
{
// Maybe not needed, but better to be sure that this won't happen faster than core handling return value of GetAwayMsg()
@@ -332,15 +292,69 @@ HANDLE CSteamProto::GetAwayMsg(MCONTACT hContact)
return (HANDLE)1;
}
-bool CSteamProto::OnContactDeleted(MCONTACT hContact, uint32_t)
+/////////////////////////////////////////////////////////////////////////////////////////
+
+bool CSteamProto::OnContactDeleted(MCONTACT hContact, uint32_t flags)
{
- // remove only authorized contacts
- if (!getByte(hContact, "Auth", 0)) {
- ptrA token(getStringA("TokenSecret"));
- ptrA sessionId(getStringA("SessionID"));
- ptrA steamId(getStringA(DBKEY_STEAM_ID));
- char *who = getStringA(hContact, DBKEY_STEAM_ID);
- SendRequest(new RemoveFriendRequest(token, sessionId, steamId, who), &CSteamProto::OnFriendRemoved, (void*)who);
- }
+ // react only to the contact deletions from Miranda
+ if (flags & CDF_FROM_SERVER)
+ return true;
+
+ if (Contact::IsGroupChat(hContact) == GCW_CHATROOM)
+ SvcLeaveChat(hContact, 0);
+ else if (!getByte(hContact, "Auth")) // remove only authorized contacts
+ SendUserRemoveRequest(hContact);
+
return true;
}
+
+void CSteamProto::OnEventDeleted(MCONTACT hContact, MEVENT hDbEvent, int flags)
+{
+ if (!hContact || !Contact::IsGroupChat(hContact) || !(flags & CDF_DEL_HISTORY))
+ return;
+
+ DB::EventInfo dbei(hDbEvent, false);
+
+ mir_cslock lck(m_csChats);
+ if (hContact != m_deletedContact && m_deletedContact != INVALID_CONTACT_ID)
+ SendDeleteMessageRequest();
+
+ m_deletedContact = hContact;
+ m_deletedMessages.push_back(dbei.iTimestamp);
+ m_impl.m_deleteMsg.Start(500);
+}
+
+void CSteamProto::OnMarkRead(MCONTACT hContact, MEVENT hDbEvent)
+{
+ if (IsOnline()) {
+ DB::EventInfo dbei(hDbEvent, false);
+
+ if (Contact::IsGroupChat(hContact)) {
+ CChatRoomAckChatMessageNotification request;
+ request.chat_group_id = GetId(hContact, DBKEY_STEAM_ID); request.has_chat_group_id = true;
+ request.chat_id = getDword(hContact, DBKEY_CHAT_ID); request.has_chat_id = true;
+ request.timestamp = dbei.iTimestamp; request.has_timestamp = true;
+ WSSendService(AckChatMessage, request);
+ }
+ else {
+ CFriendMessagesAckMessageNotification request;
+ request.steamid_partner = GetId(hContact, DBKEY_STEAM_ID); request.has_steamid_partner = true;
+ request.timestamp = dbei.iTimestamp; request.has_timestamp = true;
+ WSSendService(FriendAckMessage, request);
+ }
+ }
+}
+
+int CSteamProto::OnPreCreateMessage(WPARAM, LPARAM lParam)
+{
+ MessageWindowEvent *evt = (MessageWindowEvent *)lParam;
+ if (!mir_strcmp(Proto_GetBaseAccountName(evt->hContact), m_szModuleName)) {
+ mir_cslock lck(m_csOwnMessages);
+ if (auto *pOwn = m_arOwnMessages.find((COwnMessage *)&evt->seq)) {
+ evt->dbei->iTimestamp = pOwn->timestamp;
+ m_arOwnMessages.remove(pOwn);
+ }
+ }
+
+ return 0;
+}
diff --git a/protocols/Steam/src/steam_proto.h b/protocols/Steam/src/steam_proto.h
index 18c077e5ae..977f985ab4 100644
--- a/protocols/Steam/src/steam_proto.h
+++ b/protocols/Steam/src/steam_proto.h
@@ -8,14 +8,45 @@
#define STEAM_PROTOCOL_MASK 0x80000000
// Global settings for all accounts: hosts' list
-#define STEAM_MODULE "Steam"
#define DBKEY_HOSTS_COUNT "HostsCount"
#define DBKEY_HOSTS_DATE "HostsDate"
-
-#define DBKEY_CLIENT_ID "ClientID"
-#define DBKEY_STEAM_ID "SteamID"
-#define DBKEY_ACCOUNT_NAME "Username"
-#define DBKEY_MACHINE_ID "MachineId"
+#define DBKEY_LASTMSG "LastMessageTS"
+
+#define DBKEY_CLIENT_ID "ClientID"
+#define DBKEY_STEAM_ID "SteamID"
+#define DBKEY_CHAT_ID "ChatId"
+#define DBKEY_GROUP_ID "GroupId"
+#define DBKEY_ACCOUNT_NAME "Username"
+
+// Steam services
+#define PollAuthSessionStatus "Authentication.PollAuthSessionStatus#1"
+#define GetPasswordRSAPublicKey "Authentication.GetPasswordRSAPublicKey#1"
+#define BeginAuthSessionViaCredentials "Authentication.BeginAuthSessionViaCredentials#1"
+#define UpdateAuthSessionWithSteamGuardCode "Authentication.UpdateAuthSessionWithSteamGuardCode#1"
+
+#define GetOwnAuthorizedDevices "DeviceAuth.GetOwnAuthorizedDevices#1"
+
+#define FriendAckMessage "FriendMessages.AckMessage#1"
+#define FriendSendMessage "FriendMessages.SendMessage#1"
+#define FriendGetActiveSessions "FriendMessages.GetActiveMessageSessions#1"
+#define FriendGetRecentMessages "FriendMessages.GetRecentMessages#1"
+#define FriendGetIncomingMessage "FriendMessagesClient.IncomingMessage#1"
+#define FriendNotifyAckMessage "FriendMessagesClient.NotifyAckMessageEcho#1"
+
+#define GetMyChatRoomGroups "ChatRoom.GetMyChatRoomGroups#1"
+#define GetChatHistory "ChatRoom.GetMessageHistory#1"
+#define SendChatMessage "ChatRoom.SendChatMessage#1"
+#define JoinChatRoomGroup "ChatRoom.JoinChatRoomGroup#1"
+#define LeaveChatGroup "ChatRoom.LeaveChatRoomGroup#1"
+#define AckChatMessage "ChatRoom.AckChatMessage#1"
+#define DeleteChatMessage "ChatRoom.DeleteChatMessages#1"
+
+#define NotifyIncomingChatMessage "ChatRoomClient.NotifyIncomingChatMessage#1"
+#define NotifyAckChatMessageEcho "ChatRoomClient.NotifyAckChatMessageEcho#1"
+#define NotifyModifiedChatMessage "ChatRoomClient.NotifyChatMessageModified#1"
+#define NotifyChatGroupUserStateChanged "ChatRoomClient.NotifyChatGroupUserStateChanged#1"
+
+#define NotificationReceived "SteamNotificationClient.NotificationsReceived#1"
struct SendAuthParam
{
@@ -34,11 +65,12 @@ enum
CMI_BLOCK,
CMI_UNBLOCK,
CMI_JOIN_GAME,
+ CMI_JOIN_CHAT,
CMI_MAX // this item shall be the last one
};
typedef void (CSteamProto::*MsgCallback)(const uint8_t *pBuf, size_t cbLen);
-typedef void (CSteamProto::*HttpCallback)(const HttpResponse &, void *);
+typedef void (CSteamProto::*HttpCallback)(const MHttpResponse &, void *);
typedef void (CSteamProto::*JsonCallback)(const JSONNode &, void *);
struct HttpRequest : public MTHttpRequest<CSteamProto>
@@ -59,8 +91,20 @@ struct ProtoRequest
MsgCallback pCallback;
};
+struct COwnMessage
+{
+ COwnMessage(MCONTACT _1, int _2) :
+ hContact(_1),
+ iMessageId(_2)
+ {}
+
+ int iMessageId, timestamp = 0;
+ MCONTACT hContact;
+};
+
class CSteamProto : public PROTO<CSteamProto>
{
+ friend struct CMPlugin;
friend class CSteamGuardDialog;
friend class CSteamPasswordEditor;
friend class CSteamOptionsMain;
@@ -68,10 +112,46 @@ class CSteamProto : public PROTO<CSteamProto>
friend class PollRequest;
friend class WebSocket<CSteamProto>;
+ class CProtoImpl
+ {
+ friend class CSteamProto;
+ CSteamProto &m_proto;
+
+ CTimer m_heartBeat, m_deleteMsg, m_loginPoll;
+
+ void OnHeartBeat(CTimer *)
+ {
+ m_proto.SendHeartBeat();
+ }
+
+ void OnLoginPoll(CTimer *)
+ {
+ m_proto.SendPollRequest();
+ }
+
+ void OnDeleteMsg(CTimer *)
+ {
+ m_proto.SendDeleteMessageRequest();
+ }
+
+ CProtoImpl(CSteamProto &pro) :
+ m_proto(pro),
+ m_heartBeat(Miranda_GetSystemWindow(), UINT_PTR(&m_heartBeat)),
+ m_deleteMsg(Miranda_GetSystemWindow(), UINT_PTR(&m_deleteMsg)),
+ m_loginPoll(Miranda_GetSystemWindow(), UINT_PTR(&m_loginPoll))
+ {
+ m_heartBeat.OnEvent = Callback(this, &CProtoImpl::OnHeartBeat);
+ m_deleteMsg.OnEvent = Callback(this, &CProtoImpl::OnDeleteMsg);
+ m_loginPoll.OnEvent = Callback(this, &CProtoImpl::OnLoginPoll);
+ }
+ }
+ m_impl;
+
ptrW m_password;
bool m_bTerminated;
- HWND m_hwndGuard;
time_t m_idleTS;
+ uint64_t m_iSteamId, m_iClientId, m_iSessionId;
+ MBinBuffer m_requestId;
int64_t GetId(const char *pszSetting);
void SetId(const char *pszSetting, int64_t id);
@@ -85,59 +165,119 @@ class CSteamProto : public PROTO<CSteamProto>
ULONG hMessageProcess = 1;
mir_cs m_addContactLock;
mir_cs m_setStatusLock;
- std::map<HANDLE, time_t> m_mpOutMessages;
// connection
WebSocket<CSteamProto> *m_ws;
+
+ mir_cs m_csRequestLock;
+ std::map<uint64_t, void *> m_requestInfo;
- void __cdecl ServerThread(void *);
- bool ServerThreadStub(const char *szHost);
+ void SetRequestInfo(uint64_t, void *);
+ void* GetRequestInfo(uint64_t);
- mir_cs m_csRequests;
- OBJLIST<ProtoRequest> m_arRequests;
+ void __cdecl ServerThread(void *);
void ProcessMulti(const uint8_t *buf, size_t cbLen);
void ProcessMessage(const uint8_t *buf, size_t cbLen);
+ void ProcessServiceResponse(const uint8_t *buf, size_t cbLen, const CMsgProtoBufHeader &hdr);
void WSSend(EMsg msgType, const ProtobufCppMessage &msg);
+ void WSSendRaw(EMsg msgType, const MBinBuffer &buf);
+ void WSSendAnon(const char *pszServiceName, const ProtobufCppMessage &msg);
void WSSendHeader(EMsg msgType, const CMsgProtoBufHeader &hdr, const ProtobufCppMessage &msg);
- void WSSendService(const char *pszServiceName, const ProtobufCppMessage &msg, MsgCallback pCallback = 0);
+ void WSSendService(const char *pszServiceName, const ProtobufCppMessage &msg, void *pInfo = nullptr);
// requests
bool SendRequest(HttpRequest *request);
bool SendRequest(HttpRequest *request, HttpCallback callback, void *param = nullptr);
bool SendRequest(HttpRequest *request, JsonCallback callback, void *param = nullptr);
+ void SendAppInfoRequest(uint32_t appId);
+ void SendDeviceListRequest();
+ void SendHeartBeat();
+ void SendLogout();
+ void SendPersonaStatus(int iStatus);
+ void SendPollRequest();
+
// login
+ time_t m_iPollStartTime;
+
bool IsOnline();
- bool IsMe(const char *steamId);
void Login();
- void LoginFailed();
void Logout();
- void OnAuthorization(const uint8_t *buf, size_t cbLen);
- void OnGotRsaKey(const uint8_t *buf, size_t cbLen);
- void OnLoggedOn(const uint8_t *buf, size_t cbLen);
- void OnPollSession(const uint8_t *buf, size_t cbLen);
+ static INT_PTR CALLBACK EnterTotpCode(void *param);
+ static INT_PTR CALLBACK EnterEmailCode(void *param);
- void OnGotCaptcha(const HttpResponse &response, void *arg);
-
- void OnAuthorizationError(const JSONNode &root);
+ void OnBeginSession(const CAuthenticationBeginAuthSessionViaCredentialsResponse &pResponse, const CMsgProtoBufHeader &hdr);
+ void OnClientLogon(const CMsgClientLogonResponse &pResponse, const CMsgProtoBufHeader &hdr);
+ void OnClientLogoff(const CMsgClientLoggedOff &pResponse, const CMsgProtoBufHeader &hdr);
+ void OnGotAppInfo(const CMsgClientPICSProductInfoResponse &pResponse, const CMsgProtoBufHeader &hdr);
+ void OnGotDeviceList(const CDeviceAuthGetOwnAuthorizedDevicesResponse &pResponse, const CMsgProtoBufHeader &hdr);
+ void OnGotRsaKey(const CAuthenticationGetPasswordRSAPublicKeyResponse &pResponse, const CMsgProtoBufHeader &hdr);
+ void OnGotConfirmationCode(const CAuthenticationUpdateAuthSessionWithSteamGuardCodeResponse &pResponse, const CMsgProtoBufHeader &hdr);
+ void OnPollSession(const CAuthenticationPollAuthSessionStatusResponse &pResponse, const CMsgProtoBufHeader &hdr);
void OnGotHosts(const JSONNode &root, void *);
void DeleteAuthSettings();
+ void SendConfirmationCode(bool, const char *pszCode);
+
+ // avatars
+ wchar_t *GetAvatarFilePath(MCONTACT hContact);
+ bool GetDbAvatarInfo(PROTO_AVATAR_INFORMATION &pai);
+ void CheckAvatarChange(MCONTACT hContact, const char *avatarHash);
+
+ INT_PTR __cdecl GetAvatarInfo(WPARAM, LPARAM);
+ INT_PTR __cdecl GetAvatarCaps(WPARAM, LPARAM);
+ INT_PTR __cdecl GetMyAvatar(WPARAM, LPARAM);
+
+ // chats
+ mir_cs m_csChats;
+ std::map<uint64_t, SESSION_INFO*> m_chatContactInfo;
+
+ MCONTACT m_deletedContact = INVALID_CONTACT_ID;
+ std::vector<uint64_t> m_deletedMessages;
+
+ void SendDeleteMessageRequest();
+
+ void SendGetChatsRequest();
+ void OnGetMyChats(const CChatRoomGetMyChatRoomGroupsResponse &pResponse, const CMsgProtoBufHeader &hdr);
+
+ void OnGotClanInfo(const CMsgClientClanState &reply, const CMsgProtoBufHeader &hdr);
+
+ void SendGetChatHistory(MCONTACT hContact, uint32_t iLastMsgId);
+ void OnGetChatHistory(const CChatRoomGetMessageHistoryResponse &reply, const CMsgProtoBufHeader &hdr);
+
+ void OnChatChanged(const ChatRoomClientNotifyChatGroupUserStateChangedNotification &reply, const CMsgProtoBufHeader &hdr);
+ void ProcessGroupChat(const CChatRoomGetChatRoomGroupSummaryResponse *pGroup);
+ void LeaveGroupChat(int64_t chatGroupId);
+
+ void OnGetChatMessage(const CChatRoomIncomingChatMessageNotification &reply, const CMsgProtoBufHeader &hdr);
+
+ INT_PTR __cdecl SvcLeaveChat(WPARAM, LPARAM);
+
+ int __cdecl GcMenuHook(WPARAM, LPARAM);
+ int __cdecl GcEventHook(WPARAM, LPARAM);
+
+ void Chat_LogMenu(GCHOOK *gch);
+ void Chat_SendPrivateMessage(GCHOOK *gch);
// contacts
void SetAllContactStatuses(int status);
void SetContactStatus(MCONTACT hContact, uint16_t status);
+ void SendUserInfoRequest(uint64_t id);
+ void SendUserInfoRequest(const std::vector<uint64_t> &ids);
+
+ void SendUserAddRequest(uint64_t id);
+ void SendUserRemoveRequest(MCONTACT hContact);
+ void SendUserIgnoreRequest(MCONTACT hContact, bool bIgnore);
+
MCONTACT GetContactFromAuthEvent(MEVENT hEvent);
- void UpdateContactDetails(MCONTACT hContact, const JSONNode &data);
- void UpdateContactRelationship(MCONTACT hContact, const JSONNode &data);
- void OnGotAppInfo(const JSONNode &root, void *arg);
+ void UpdateContactRelationship(MCONTACT hContact, uint32_t);
void ContactIsRemoved(MCONTACT hContact);
void ContactIsFriend(MCONTACT hContact);
@@ -145,46 +285,42 @@ class CSteamProto : public PROTO<CSteamProto>
void ContactIsUnblocked(MCONTACT hContact);
void ContactIsAskingAuth(MCONTACT hContact);
- MCONTACT GetContact(const char *steamId);
- MCONTACT AddContact(const char *steamId, const wchar_t *nick = nullptr, bool isTemporary = false);
+ void OnGotFriendList(const CMsgClientFriendsList &reply, const CMsgProtoBufHeader &hdr);
+ void OnGotFriendInfo(const CMsgClientPersonaState &reply, const CMsgProtoBufHeader &hdr);
- void OnGotFriendList(const JSONNode &root, void *);
- void OnGotBlockList(const JSONNode &root, void *);
- void OnGotUserSummaries(const JSONNode &root, void *);
- void OnGotAvatar(const HttpResponse &response, void *arg);
-
- void OnFriendAdded(const HttpResponse &response, void *arg);
- void OnFriendBlocked(const HttpResponse &response, void *arg);
- void OnFriendUnblocked(const HttpResponse &response, void *arg);
- void OnFriendRemoved(const HttpResponse &response, void *arg);
+ MCONTACT GetContact(int64_t steamId);
+ MCONTACT AddContact(int64_t steamId, const wchar_t *nick = nullptr, bool isTemporary = false);
- void OnAuthRequested(const JSONNode &root, void *arg);
+ void OnGotBlockList(const JSONNode &root, void *);
+ void OnGotAvatar(const MHttpResponse &response, void *arg);
void OnPendingApproved(const JSONNode &root, void *arg);
void OnPendingIgnoreded(const JSONNode &root, void *arg);
- void OnSearchResults(const HttpResponse &response, void *arg);
- void OnSearchByNameStarted(const HttpResponse &response, void *arg);
-
- // messages
- int OnSendMessage(MCONTACT hContact, const char *message);
- void OnMessageSent(const HttpResponse &response, void *arg);
- int __cdecl OnPreCreateMessage(WPARAM, LPARAM lParam);
+ void OnSearchResults(const MHttpResponse &response, void *arg);
+ void OnSearchByNameStarted(const MHttpResponse &response, void *arg);
// history
- void OnGotConversations(const JSONNode &root, void *arg);
- void OnGotHistoryMessages(const JSONNode &root, void *);
+ INT_PTR __cdecl SvcLoadServerHistory(WPARAM, LPARAM);
+ INT_PTR __cdecl SvcCanEmptyHistory(WPARAM, LPARAM);
+ INT_PTR __cdecl SvcEmptyHistory(WPARAM, LPARAM);
+
+ void SendHistoryRequest(uint64_t accountId, uint32_t startTime);
+ void OnGotRecentMessages(const CFriendMessagesGetRecentMessagesResponse &reply, const CMsgProtoBufHeader &hdr);
+
+ void OnGotConversations(const CFriendsMessagesGetActiveMessageSessionsResponse &reply, const CMsgProtoBufHeader &hdr);
+ void OnGotHistoryMessages(const CMsgClientChatGetFriendMessageHistoryResponse &reply, const CMsgProtoBufHeader &hdr);
// menus
- static int hChooserMenu;
static HGENMENU contactMenuItems[CMI_MAX];
INT_PTR __cdecl AuthRequestCommand(WPARAM, LPARAM);
INT_PTR __cdecl AuthRevokeCommand(WPARAM, LPARAM);
- int __cdecl BlockCommand(WPARAM, LPARAM);
- int __cdecl UnblockCommand(WPARAM, LPARAM);
- int __cdecl JoinToGameCommand(WPARAM, LPARAM);
+ INT_PTR __cdecl BlockCommand(WPARAM, LPARAM);
+ INT_PTR __cdecl UnblockCommand(WPARAM, LPARAM);
+ INT_PTR __cdecl JoinGameCommand(WPARAM, LPARAM);
+ INT_PTR __cdecl JoinChatCommand(WPARAM, LPARAM);
INT_PTR __cdecl OpenBlockListCommand(WPARAM, LPARAM);
@@ -193,14 +329,20 @@ class CSteamProto : public PROTO<CSteamProto>
void OnInitStatusMenu();
- // avatars
- wchar_t *GetAvatarFilePath(MCONTACT hContact);
- bool GetDbAvatarInfo(PROTO_AVATAR_INFORMATION &pai);
- void CheckAvatarChange(MCONTACT hContact, std::string avatarUrl);
+ // notifications
+ void OnGotNotification(const CSteamNotificationNotificationsReceivedNotification &reply, const CMsgProtoBufHeader &hdr);
- INT_PTR __cdecl GetAvatarInfo(WPARAM, LPARAM);
- INT_PTR __cdecl GetAvatarCaps(WPARAM, LPARAM);
- INT_PTR __cdecl GetMyAvatar(WPARAM, LPARAM);
+ // messages
+ mir_cs m_csOwnMessages;
+ OBJLIST<COwnMessage> m_arOwnMessages;
+
+ void SendFriendMessage(EChatEntryType, int64_t steamId, const char *pszMessage, void *pInfo = nullptr);
+ void OnGotIncomingMessage(const CFriendMessagesIncomingMessageNotification &reply, const CMsgProtoBufHeader &hdr);
+ void OnGotMarkRead(const CFriendMessagesAckMessageNotification &reply, const CMsgProtoBufHeader &hdr);
+ void OnMessageSent(const CFriendMessagesSendMessageResponse &reply, const CMsgProtoBufHeader &hdr);
+ int __cdecl OnPreCreateMessage(WPARAM, LPARAM lParam);
+
+ void SendFriendActiveSessions();
// xstatuses
INT_PTR __cdecl OnGetXStatusEx(WPARAM wParam, LPARAM lParam);
@@ -215,16 +357,13 @@ class CSteamProto : public PROTO<CSteamProto>
int __cdecl OnIdleChanged(WPARAM, LPARAM);
int __cdecl OnOptionsInit(WPARAM wParam, LPARAM lParam);
- // utils
- static uint16_t SteamToMirandaStatus(PersonaState state);
- static PersonaState MirandaToSteamState(int status);
-
- static void ShowNotification(const wchar_t *message, int flags = 0, MCONTACT hContact = NULL);
- static void ShowNotification(const wchar_t *caption, const wchar_t *message, int flags = 0, MCONTACT hContact = NULL);
-
INT_PTR __cdecl OnGetEventTextChatStates(WPARAM wParam, LPARAM lParam);
// helpers
+ void OnDoNothing(const CMsgProtoBufHeader &, const CMsgProtoBufHeader &) {}
+
+ void DecodeBbcodes(SESSION_INFO *si, CMStringA &szText);
+
inline int IdleSeconds()
{
// Based on idle time we report Steam server will mark us as online/away/snooze
@@ -241,20 +380,6 @@ class CSteamProto : public PROTO<CSteamProto>
// return m_idleTS ? time(0) - m_idleTS : 0;
}
- inline const char *AccountIdToSteamId(long long accountId)
- {
- static char steamId[20];
- mir_snprintf(steamId, "%llu", accountId + 76561197960265728ll);
- return steamId;
- }
-
- inline const char *SteamIdToAccountId(long long steamId)
- {
- static char accountId[10];
- mir_snprintf(accountId, "%llu", steamId - 76561197960265728ll);
- return accountId;
- }
-
public:
// constructor
CSteamProto(const char *protoName, const wchar_t *userName);
@@ -287,6 +412,8 @@ public:
bool OnContactDeleted(MCONTACT, uint32_t flags) override;
MWindow OnCreateAccMgrUI(MWindow) override;
+ void OnEventDeleted(MCONTACT hContact, MEVENT hDbEvent, int flags) override;
+ void OnMarkRead(MCONTACT hContact, MEVENT hDbEvent) override;
void OnModulesLoaded() override;
// menus
@@ -297,12 +424,19 @@ struct CMPlugin : public ACCPROTOPLUGIN<CSteamProto>
{
CMPlugin();
+ void InitSteamServices();
+
+ std::map<EMsg, const ProtobufCMessageDescriptor *> messages;
+ std::map<std::string, const ProtobufCServiceDescriptor *> services;
+
+ typedef void (CSteamProto:: *ServiceResponseHandler)(const ProtobufCMessage &msg, const CMsgProtoBufHeader &hdr);
+ std::map<EMsg, ServiceResponseHandler> messageHandlers;
+ std::map<std::string, ServiceResponseHandler> serviceHandlers;
+
int Load() override;
};
int OnReloadIcons(WPARAM wParam, LPARAM lParam);
void SetContactExtraIcon(MCONTACT hContact, int status);
-MBinBuffer RsaEncrypt(const char *pszModulus, const char *exponent, const char *data);
-
#endif //_STEAM_PROTO_H_
diff --git a/protocols/Steam/src/steam_request.cpp b/protocols/Steam/src/steam_request.cpp
index 918e01ca16..47755ab548 100644
--- a/protocols/Steam/src/steam_request.cpp
+++ b/protocols/Steam/src/steam_request.cpp
@@ -2,37 +2,47 @@
bool CSteamProto::SendRequest(HttpRequest *request)
{
- auto *pResp = Netlib_HttpTransaction(m_hNetlibUser, request->Get());
- HttpResponse response(pResp);
- delete request;
- return response.IsSuccess();
+ if (auto *pResp = Netlib_HttpTransaction(m_hNetlibUser, request->Get())) {
+ bool bSuccess = pResp->resultCode == 200;
+ delete pResp;
+ return bSuccess;
+ }
+ return false;
}
bool CSteamProto::SendRequest(HttpRequest *request, HttpCallback callback, void *param)
{
- auto *pResp = Netlib_HttpTransaction(m_hNetlibUser, request->Get());
- HttpResponse response(pResp);
- if (callback)
- (this->*callback)(response, param);
- delete request;
- return response.IsSuccess();
+ if (auto *pResp = Netlib_HttpTransaction(m_hNetlibUser, request->Get())) {
+ bool bSuccess = pResp->resultCode == 200;
+ if (callback)
+ (this->*callback)(*pResp, param);
+ delete request;
+ delete pResp;
+ return bSuccess;
+ }
+ return false;
}
bool CSteamProto::SendRequest(HttpRequest *request, JsonCallback callback, void *param)
{
- auto *pResp = Netlib_HttpTransaction(m_hNetlibUser, request->Get());
- HttpResponse response(pResp);
- if (callback) {
- JSONNode root = JSONNode::parse(response.data());
- (this->*callback)(root, param);
+ if (auto *pResp = Netlib_HttpTransaction(m_hNetlibUser, request->Get())) {
+ bool bSuccess = pResp->resultCode == 200;
+ if (callback) {
+ JSONNode root = JSONNode::parse(pResp->body);
+ (this->*callback)(root, param);
+ }
+ delete request;
+ delete pResp;
+ return bSuccess;
}
- delete request;
- return response.IsSuccess();
+ return false;
}
/////////////////////////////////////////////////////////////////////////////////////////
// HttpRequest
+#define STEAM_USER_AGENT "Valve/Steam HTTP Client 1.0"
+
HttpRequest::HttpRequest(int iRequestType, const char *szUrl)
{
flags = NLHRF_SSL | NLHRF_HTTP11 | NLHRF_REDIRECT | NLHRF_DUMPASTEXT;
diff --git a/protocols/Steam/src/steam_server.cpp b/protocols/Steam/src/steam_server.cpp
index 8dc8274240..1d2b397f47 100644
--- a/protocols/Steam/src/steam_server.cpp
+++ b/protocols/Steam/src/steam_server.cpp
@@ -1,5 +1,5 @@
/*
-Copyright (C) 2012-24 Miranda NG team (https://miranda-ng.org)
+Copyright (C) 2012-25 Miranda NG team (https://miranda-ng.org)
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
@@ -17,153 +17,167 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "stdafx.h"
-void __cdecl CSteamProto::ServerThread(void *)
+void CSteamProto::OnGotNotification(const CSteamNotificationNotificationsReceivedNotification &reply, const CMsgProtoBufHeader &hdr)
{
- // load web socket servers first if needed
- int iTimeDiff = db_get_dw(0, STEAM_MODULE, DBKEY_HOSTS_DATE);
- int iHostCount = db_get_dw(0, STEAM_MODULE, DBKEY_HOSTS_COUNT);
- if (!iHostCount || time(0) - iTimeDiff > 3600 * 24 * 7) { // once a week
- if (!SendRequest(new GetHostsRequest(), &CSteamProto::OnGotHosts)) {
- LoginFailed();
- return;
- }
- }
+ if (hdr.eresult != 1)
+ return;
- srand(time(0));
- m_ws = nullptr;
+ debugLogA("got %d notifications", reply.n_notifications);
- CMStringA szHost;
- do {
- szHost.Format("Host%d", rand() % iHostCount);
- szHost = db_get_sm(0, STEAM_MODULE, szHost);
- szHost.Insert(0, "wss://");
- szHost += "/cmsocket/";
+ for (int i = 0; i < reply.n_notifications; i++) {
+ auto *N = reply.notifications[i];
+ debugLogA("notification type %d: %s", N->notification_type, N->body_data);
}
- while (ServerThreadStub(szHost));
}
-bool CSteamProto::ServerThreadStub(const char *szHost)
-{
- WebSocket<CSteamProto> ws(this);
+/////////////////////////////////////////////////////////////////////////////////////////
- NLHR_PTR pReply(ws.connect(m_hNetlibUser, szHost));
- if (pReply == nullptr) {
- debugLogA("websocket connection failed");
- return false;
- }
+void CSteamProto::SendAppInfoRequest(uint32_t appId)
+{
+ CMsgClientPICSProductInfoRequest__AppInfo appInfo;
+ appInfo.appid = appId; appInfo.has_appid = true;
+ auto *pInfo = &appInfo;
+
+ CMsgClientPICSProductInfoRequest request;
+ request.n_apps = 1;
+ request.apps = &pInfo;
+ WSSend(EMsg::ClientPICSProductInfoRequest, request);
+}
- if (pReply->resultCode != 101) {
- debugLogA("websocket connection failed: %d", pReply->resultCode);
- return false;
- }
+void CSteamProto::OnGotAppInfo(const CMsgClientPICSProductInfoResponse &reply, const CMsgProtoBufHeader &)
+{
+ for (int i = 0; i < reply.n_apps; i++) {
+ auto *pApp = reply.apps[i];
+
+ if (pApp->buffer.len) {
+ std::regex regex("\"name\"\\s*\"(.+?)\"");
+ std::smatch match;
+ std::string content((char *)pApp->buffer.data, pApp->buffer.len);
+ if (std::regex_search(content, match, regex)) {
+ std::string szName = match[1];
+ CMStringA szSetting(FORMAT, "AppInfo_%d", pApp->appid);
+ g_plugin.setUString(szSetting, szName.c_str());
+
+ for (auto &cc : AccContacts()) {
+ if (getDword(cc, "XStatusId") == pApp->appid) {
+ setWString(cc, "XStatusName", TranslateT("Playing"));
+ setUString(cc, "XStatusMsg", szName.c_str());
+} } } } } }
+
+void CSteamProto::SendDeleteMessageRequest()
+{
+ if (m_deletedContact == INVALID_CONTACT_ID)
+ return;
- m_ws = &ws;
+ m_impl.m_deleteMsg.Stop();
- debugLogA("Websocket connection succeeded");
+ MCONTACT hContact;
+ OBJLIST<CChatRoomDeleteChatMessagesRequest__Message> msgs((int)m_deletedMessages.size());
+ {
+ mir_cslock lck(m_csChats);
+ for (auto &it : m_deletedMessages) {
+ CChatRoomDeleteChatMessagesRequest__Message msg;
+ msg.has_server_timestamp = true; msg.server_timestamp = it;
+ msgs.insert(new CChatRoomDeleteChatMessagesRequest__Message(msg));
+ }
- // Send init packets
- Login();
+ hContact = m_deletedContact;
+ m_deletedContact = INVALID_CONTACT_ID;
+ m_deletedMessages.clear();
+ }
- ws.run();
- m_ws = nullptr;
- return false;
+ CChatRoomDeleteChatMessagesRequest request;
+ request.chat_group_id = GetId(hContact, DBKEY_STEAM_ID); request.has_chat_group_id = true;
+ request.chat_id = getDword(hContact, "ChatId"); request.has_chat_id = true;
+ request.messages = msgs.getArray();
+ request.n_messages = msgs.getCount();
+ WSSendService(DeleteChatMessage, request);
}
/////////////////////////////////////////////////////////////////////////////////////////
-void WebSocket<CSteamProto>::process(const uint8_t *buf, size_t cbLen)
+void CSteamProto::SendDeviceListRequest()
{
- uint32_t dwSign = *(uint32_t *)buf;
- EMsg msgType = (EMsg)(dwSign & ~STEAM_PROTOCOL_MASK);
+ CDeviceAuthGetOwnAuthorizedDevicesRequest request;
+ request.steamid = m_iSteamId; request.has_steamid = true;
+ WSSendService(GetOwnAuthorizedDevices, request);
+}
- // now process the body
- if (msgType == EMsg::Multi) {
- buf += 8; cbLen -= 8;
- p->ProcessMulti(buf, cbLen);
- }
- else p->ProcessMessage(buf, cbLen);
+void CSteamProto::OnGotDeviceList(const CDeviceAuthGetOwnAuthorizedDevicesResponse &, const CMsgProtoBufHeader &)
+{
}
-void CSteamProto::ProcessMulti(const uint8_t *buf, size_t cbLen)
+/////////////////////////////////////////////////////////////////////////////////////////
+
+void CSteamProto::SendFriendActiveSessions()
{
- proto::MsgMulti pMulti(buf, cbLen);
- if (pMulti == nullptr) {
- debugLogA("Unable to decode multi message, exiting");
- return;
- }
+ CFriendsMessagesGetActiveMessageSessionsRequest request;
+ request.has_lastmessage_since = true;
+ request.has_only_sessions_with_messages = false; request.only_sessions_with_messages = true;
+ WSSendService(FriendGetActiveSessions, request);
+}
- debugLogA("processing %s multi message of size %d", (pMulti->size_unzipped) ? "zipped" : "normal", pMulti->message_body.len);
-
- ptrA tmp;
- if (pMulti->size_unzipped) {
- tmp = (char *)mir_alloc(pMulti->size_unzipped + 1);
- cbLen = FreeImage_ZLibGUnzip((uint8_t*)tmp.get(), pMulti->size_unzipped, pMulti->message_body.data, (unsigned)pMulti->message_body.len);
- if (!cbLen) {
- debugLogA("Unable to unzip multi message, exiting");
- return;
- }
+/////////////////////////////////////////////////////////////////////////////////////////
- buf = (const uint8_t *)tmp.get();
- }
- else {
- buf = pMulti->message_body.data;
- cbLen = pMulti->message_body.len;
- }
+void CSteamProto::SendPersonaStatus(int status)
+{
+ CMsgClientChangeStatus request;
+ request.persona_state = (int)MirandaToSteamState(status); request.has_persona_state = true;
+ WSSend(EMsg::ClientChangeStatus, request);
+}
- while ((int)cbLen > 0) {
- uint32_t cbPacketLen = *(uint32_t *)buf; buf += sizeof(uint32_t); cbLen -= sizeof(uint32_t);
- ProcessMessage(buf, cbPacketLen);
- buf += cbPacketLen; cbLen -= cbPacketLen;
- }
+/////////////////////////////////////////////////////////////////////////////////////////
+
+void CSteamProto::SendUserInfoRequest(uint64_t id)
+{
+ std::vector<uint64_t> ids;
+ ids.push_back(id & 0xFFFFFFFFll);
+ SendUserInfoRequest(ids);
}
-void CSteamProto::ProcessMessage(const uint8_t *buf, size_t cbLen)
+void CSteamProto::SendUserInfoRequest(const std::vector<uint64_t> &ids)
{
- uint32_t dwSign = *(uint32_t *)buf; buf += sizeof(uint32_t); cbLen -= sizeof(uint32_t);
- EMsg msgType = (EMsg)(dwSign & ~STEAM_PROTOCOL_MASK);
- bool bIsProto = (dwSign & STEAM_PROTOCOL_MASK) != 0;
+ CMsgClientRequestFriendData request;
+ request.persona_state_requested = -1; request.has_persona_state_requested = true;
+ request.n_friends = ids.size();
+ request.friends = (uint64_t*)&*ids.begin();
+ WSSend(EMsg::ClientRequestFriendData, request);
+}
- CMsgProtoBufHeader hdr;
+/////////////////////////////////////////////////////////////////////////////////////////
- if (msgType == EMsg::ChannelEncryptRequest || msgType == EMsg::ChannelEncryptResult) {
- hdr.has_jobid_source = hdr.has_jobid_target = true;
- hdr.jobid_source = *(int64_t *)buf; buf += sizeof(int64_t);
- hdr.jobid_target = *(int64_t *)buf; buf += sizeof(int64_t);
- }
- else if (bIsProto) {
- uint32_t hdrLen = *(uint32_t *)buf; buf += sizeof(uint32_t); cbLen -= sizeof(uint32_t);
- proto::MsgProtoBufHeader tmpHeader(buf, hdrLen);
- if (tmpHeader == nullptr) {
- debugLogA("Unable to decode message header, exiting");
- return;
- }
+void CSteamProto::SendUserAddRequest(uint64_t id)
+{
+ CMsgClientAddFriend request;
+ request.has_steamid_to_add = true; request.steamid_to_add = id;
+ WSSend(EMsg::ClientAddFriend, request);
+}
- memcpy(&hdr, tmpHeader, sizeof(hdr));
- buf += hdrLen; cbLen -= hdrLen;
- }
- else {
- debugLogA("Got unknown header, exiting");
- return;
- }
+void CSteamProto::SendUserRemoveRequest(MCONTACT hContact)
+{
+ CMsgClientRemoveFriend request;
+ request.has_friendid = true; request.friendid = SteamIdToAccountId(GetId(hContact, DBKEY_STEAM_ID));
+ WSSend(EMsg::ClientRemoveFriend, request);
+}
- MsgCallback pCallback = 0;
- {
- mir_cslock lck(m_csRequests);
- if (auto *pReq = m_arRequests.find((ProtoRequest *)&hdr.jobid_target)) {
- pCallback = pReq->pCallback;
- m_arRequests.remove(pReq);
- }
- }
+void CSteamProto::SendUserIgnoreRequest(MCONTACT hContact, bool bIgnore)
+{
+ MBinBuffer payload;
+ payload << m_iSteamId << SteamIdToAccountId(GetId(hContact, DBKEY_STEAM_ID)) << uint8_t(bIgnore);
+ WSSendRaw(EMsg::ClientSetIgnoreFriend, payload);
+}
- if (pCallback) {
- (this->*pCallback)(buf, cbLen);
- return;
- }
+/////////////////////////////////////////////////////////////////////////////////////////
- // persistent callbacks
- switch (msgType) {
- case EMsg::ClientLogOnResponse:
- OnLoggedOn(buf, cbLen);
- break;
- }
+void CSteamProto::SendHeartBeat()
+{
+ CMsgClientHeartBeat packet;
+ packet.has_send_reply = true; packet.send_reply = false;
+ WSSend(EMsg::ClientHeartBeat, packet);
+}
+
+void CSteamProto::SendLogout()
+{
+ CMsgClientLogOff packet;
+ WSSend(EMsg::ClientLogOff, packet);
}
diff --git a/protocols/Steam/src/steam_utils.cpp b/protocols/Steam/src/steam_utils.cpp
index ed90bc5178..2b8c3263db 100644
--- a/protocols/Steam/src/steam_utils.cpp
+++ b/protocols/Steam/src/steam_utils.cpp
@@ -1,65 +1,60 @@
#include "stdafx.h"
-static int64_t getRandomInt()
+uint64_t getRandomInt()
{
- int64_t ret;
+ uint64_t ret;
Utils_GetRandom(&ret, sizeof(ret));
- return (ret >= 0) ? ret : -ret;
+ return ret & INT64_MAX;
}
-void CSteamProto::WSSend(EMsg msgType, const ProtobufCppMessage &msg)
-{
- CMsgProtoBufHeader hdr;
- hdr.has_client_sessionid = hdr.has_steamid = hdr.has_jobid_source = hdr.has_jobid_target = true;
-
- switch (msgType) {
- case EMsg::ClientHello:
- hdr.jobid_source = -1;
- break;
-
- default:
- hdr.jobid_source = getRandomInt();
- break;
- }
-
- hdr.jobid_target = -1;
-
- WSSendHeader(msgType, hdr, msg);
-}
+/////////////////////////////////////////////////////////////////////////////////////////
-void CSteamProto::WSSendHeader(EMsg msgType, const CMsgProtoBufHeader &hdr, const ProtobufCppMessage &msg)
+bool IsNull(const ProtobufCBinaryData &buf)
{
- uint32_t hdrLen = (uint32_t)protobuf_c_message_get_packed_size(&hdr);
- MBinBuffer hdrbuf(hdrLen);
- protobuf_c_message_pack(&hdr, (uint8_t *)hdrbuf.data());
- hdrbuf.appendBefore(&hdrLen, sizeof(hdrLen));
-
- uint32_t type = (uint32_t)msgType;
- type |= STEAM_PROTOCOL_MASK;
- hdrbuf.appendBefore(&type, sizeof(type));
+ for (auto i = 0; i < buf.len; i++)
+ if (buf.data[i] != 0)
+ return false;
- MBinBuffer body(protobuf_c_message_get_packed_size(&msg));
- protobuf_c_message_pack(&msg, body.data());
-
- hdrbuf.append(body);
- m_ws->sendBinary(hdrbuf.data(), hdrbuf.length());
+ return true;
}
-void CSteamProto::WSSendService(const char *pszServiceName, const ProtobufCppMessage &msg, MsgCallback pCallback)
-{
- CMsgProtoBufHeader hdr;
- hdr.has_client_sessionid = hdr.has_steamid = hdr.has_jobid_source = hdr.has_jobid_target = true;
- hdr.jobid_source = getRandomInt();
- hdr.jobid_target = -1;
- hdr.target_job_name = (char*)pszServiceName;
- hdr.realm = 1; hdr.has_realm = true;
-
- if (pCallback) {
- mir_cslock lck(m_csRequests);
- m_arRequests.insert(new ProtoRequest(hdr.jobid_source, pCallback));
- }
+/////////////////////////////////////////////////////////////////////////////////////////
- WSSendHeader(EMsg::ServiceMethodCallFromClientNonAuthed, hdr, msg);
+MBinBuffer createMachineID(const char *accName)
+{
+ uint8_t hashOut[MIR_SHA1_HASH_SIZE];
+ char hashHex[MIR_SHA1_HASH_SIZE * 2 + 1];
+
+ CMStringA _bb3 = CMStringA("SteamUser Hash BB3 ") + accName;
+ CMStringA _ff2 = CMStringA("SteamUser Hash FF2 ") + accName;
+ CMStringA _3b3 = CMStringA("SteamUser Hash 3B3 ") + accName;
+
+ MBinBuffer ret;
+ uint8_t c = 0;
+ ret.append(&c, 1);
+ ret.append("MessageObject", 14);
+
+ c = 1;
+ ret.append(&c, 1);
+ ret.append("BB3", 4);
+ mir_sha1_hash((uint8_t *)_bb3.c_str(), _bb3.GetLength(), hashOut);
+ bin2hex(hashOut, sizeof(hashOut), hashHex);
+ ret.append(hashHex, 41);
+
+ ret.append(&c, 1);
+ ret.append("FF2", 4);
+ mir_sha1_hash((uint8_t *)_ff2.c_str(), _ff2.GetLength(), hashOut);
+ bin2hex(hashOut, sizeof(hashOut), hashHex);
+ ret.append(hashHex, 41);
+
+ ret.append(&c, 1);
+ ret.append("3B3", 4);
+ mir_sha1_hash((uint8_t *)_3b3.c_str(), _3b3.GetLength(), hashOut);
+ bin2hex(hashOut, sizeof(hashOut), hashHex);
+ ret.append(hashHex, 41);
+
+ ret.append("\x08\x08", 2);
+ return ret;
}
/////////////////////////////////////////////////////////////////////////////////////////
@@ -91,8 +86,9 @@ void CSteamProto::SetId(const char *pszSetting, int64_t id)
}
/////////////////////////////////////////////////////////////////////////////////////////
+// Statuses
-uint16_t CSteamProto::SteamToMirandaStatus(PersonaState state)
+int SteamToMirandaStatus(uint32_t state)
{
switch (state) {
case PersonaState::Offline:
@@ -115,7 +111,7 @@ uint16_t CSteamProto::SteamToMirandaStatus(PersonaState state)
}
}
-PersonaState CSteamProto::MirandaToSteamState(int status)
+uint32_t MirandaToSteamState(int status)
{
switch (status) {
case ID_STATUS_OFFLINE:
@@ -137,7 +133,10 @@ PersonaState CSteamProto::MirandaToSteamState(int status)
}
}
-void CSteamProto::ShowNotification(const wchar_t *caption, const wchar_t *message, int flags, MCONTACT hContact)
+/////////////////////////////////////////////////////////////////////////////////////////
+// Popups
+
+void ShowNotification(const wchar_t *caption, const wchar_t *message, int flags, MCONTACT hContact)
{
if (Miranda_IsTerminated())
return;
@@ -147,7 +146,7 @@ void CSteamProto::ShowNotification(const wchar_t *caption, const wchar_t *messag
ppd.lchContact = hContact;
wcsncpy(ppd.lpwzContactName, caption, MAX_CONTACTNAME);
wcsncpy(ppd.lpwzText, message, MAX_SECONDLINE);
- ppd.lchIcon = IcoLib_GetIcon(MODULE"_main");
+ ppd.lchIcon = g_plugin.getIcon(IDI_STEAM);
if (!PUAddPopupW(&ppd))
return;
@@ -156,11 +155,13 @@ void CSteamProto::ShowNotification(const wchar_t *caption, const wchar_t *messag
MessageBox(nullptr, message, caption, MB_OK | flags);
}
-void CSteamProto::ShowNotification(const wchar_t *message, int flags, MCONTACT hContact)
+void ShowNotification(const wchar_t *message, int flags, MCONTACT hContact)
{
- ShowNotification(_A2W(MODULE), message, flags, hContact);
+ ShowNotification(_A2W(MODULENAME), message, flags, hContact);
}
+/////////////////////////////////////////////////////////////////////////////////////////
+
INT_PTR CSteamProto::OnGetEventTextChatStates(WPARAM pEvent, LPARAM datatype)
{
// Retrieves a chat state description from an event
diff --git a/protocols/Steam/src/steam_utils.h b/protocols/Steam/src/steam_utils.h
new file mode 100644
index 0000000000..b89f7ba971
--- /dev/null
+++ b/protocols/Steam/src/steam_utils.h
@@ -0,0 +1,32 @@
+#ifndef _STEAM_UTILS_H_
+#define _STEAM_UTILS_H_
+
+int SteamToMirandaStatus(uint32_t state);
+uint32_t MirandaToSteamState(int status);
+
+void ShowNotification(const wchar_t *message, int flags = 0, MCONTACT hContact = NULL);
+void ShowNotification(const wchar_t *caption, const wchar_t *message, int flags = 0, MCONTACT hContact = NULL);
+
+MBinBuffer RsaEncrypt(const char *pszModulus, const char *exponent, const char *data);
+MBinBuffer createMachineID(const char *accName);
+
+void EncodeBbcodes(SESSION_INFO *si, CMStringW &szText);
+
+#define now() time(0)
+
+bool IsNull(const ProtobufCBinaryData &buf);
+
+uint64_t getRandomInt();
+CMStringA protobuf_c_text_to_string(const ProtobufCMessage &msg);
+
+inline uint64_t AccountIdToSteamId(uint64_t accountId)
+{
+ return accountId | 0x110000100000000ll;
+}
+
+inline uint64_t SteamIdToAccountId(uint64_t steamId)
+{
+ return steamId & 0xFFFFFFFFll;
+}
+
+#endif //_STEAM_UTILS_H_
diff --git a/protocols/Steam/src/steam_ws.cpp b/protocols/Steam/src/steam_ws.cpp
new file mode 100644
index 0000000000..e7c98357d5
--- /dev/null
+++ b/protocols/Steam/src/steam_ws.cpp
@@ -0,0 +1,325 @@
+/*
+Copyright (C) 2012-25 Miranda NG team (https://miranda-ng.org)
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation version 2
+of the License.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#include "stdafx.h"
+
+void __cdecl CSteamProto::ServerThread(void *)
+{
+ // load web socket servers first if needed
+ int iTimeDiff = db_get_dw(0, MODULENAME, DBKEY_HOSTS_DATE);
+ int iHostCount = db_get_dw(0, MODULENAME, DBKEY_HOSTS_COUNT);
+ if (!iHostCount || time(0) - iTimeDiff > 3600 * 24 * 7) { // once a week
+ if (!SendRequest(new GetHostsRequest(), &CSteamProto::OnGotHosts)) {
+ Logout();
+ return;
+ }
+ iHostCount = db_get_dw(0, MODULENAME, DBKEY_HOSTS_COUNT);
+ }
+
+ srand(time(0));
+ m_ws = nullptr;
+
+ CMStringA szHost;
+ szHost.Format("Host%d", rand() % iHostCount);
+ szHost = db_get_sm(0, MODULENAME, szHost);
+ szHost.Insert(0, "wss://");
+ szHost += "/cmsocket/";
+
+ WebSocket<CSteamProto> ws(this);
+
+ NLHR_PTR pReply(ws.connect(m_hNetlibUser, szHost));
+ if (pReply) {
+ if (pReply->resultCode == 101) {
+ m_ws = &ws;
+
+ debugLogA("Websocket connection succeeded");
+
+ // Send init packets
+ Login();
+
+ ws.run();
+ }
+ else debugLogA("websocket connection failed: %d", pReply->resultCode);
+ }
+ else debugLogA("websocket connection failed");
+
+ Logout();
+ m_impl.m_heartBeat.Stop();
+ m_ws = nullptr;
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
+void WebSocket<CSteamProto>::process(const uint8_t *buf, size_t cbLen)
+{
+ p->ProcessMessage(buf, cbLen);
+}
+
+void CSteamProto::ProcessMulti(const uint8_t *buf, size_t cbLen)
+{
+ proto::MsgMulti pMulti(buf, cbLen);
+ if (pMulti == nullptr) {
+ debugLogA("Unable to decode multi message, exiting");
+ return;
+ }
+
+ debugLogA("processing %s multi message of size %d", (pMulti->size_unzipped) ? "zipped" : "normal", pMulti->message_body.len);
+
+ ptrA tmp;
+ if (pMulti->size_unzipped) {
+ tmp = (char *)mir_alloc(pMulti->size_unzipped + 1);
+ cbLen = FreeImage_ZLibGUnzip((uint8_t*)tmp.get(), pMulti->size_unzipped, pMulti->message_body.data, (unsigned)pMulti->message_body.len);
+ if (!cbLen) {
+ debugLogA("Unable to unzip multi message, exiting");
+ return;
+ }
+
+ buf = (const uint8_t *)tmp.get();
+ }
+ else {
+ buf = pMulti->message_body.data;
+ cbLen = pMulti->message_body.len;
+ }
+
+ while ((int)cbLen > 0) {
+ uint32_t cbPacketLen = *(uint32_t *)buf; buf += sizeof(uint32_t); cbLen -= sizeof(uint32_t);
+ ProcessMessage(buf, cbPacketLen);
+ buf += cbPacketLen; cbLen -= cbPacketLen;
+ }
+}
+
+void CSteamProto::ProcessMessage(const uint8_t *buf, size_t cbLen)
+{
+ ptrA szTargetJobName;
+ CMsgProtoBufHeader hdr;
+ uint32_t dwSign = *(uint32_t *)buf; buf += sizeof(uint32_t); cbLen -= sizeof(uint32_t);
+ EMsg msgType = (EMsg)(dwSign & ~STEAM_PROTOCOL_MASK);
+ bool bIsProtobuf = (dwSign & STEAM_PROTOCOL_MASK) != 0;
+
+ if (msgType == EMsg::ChannelEncryptRequest || msgType == EMsg::ChannelEncryptResult) {
+ hdr.has_jobid_source = hdr.has_jobid_target = true;
+ hdr.jobid_source = *(int64_t *)buf; buf += sizeof(int64_t);
+ hdr.jobid_target = *(int64_t *)buf; buf += sizeof(int64_t);
+ debugLogA("Encrypted results cannot be processed, ignoring");
+ return;
+ }
+
+ if (msgType == EMsg::Multi) {
+ buf += sizeof(uint32_t); cbLen -= sizeof(uint32_t);
+ ProcessMulti(buf, cbLen);
+ return;
+ }
+
+ if (bIsProtobuf) {
+ uint32_t hdrLen = *(uint32_t *)buf; buf += sizeof(uint32_t); cbLen -= sizeof(uint32_t);
+ auto *p = cmsg_proto_buf_header__unpack(0, hdrLen, buf);
+ if (p == nullptr) {
+ debugLogA("Unable to decode message header, exiting");
+ return;
+ }
+
+ buf += hdrLen; cbLen -= hdrLen;
+ memcpy(&hdr, p, sizeof(hdr));
+ if (hdr.target_job_name) {
+ szTargetJobName = mir_strdup(hdr.target_job_name);
+ hdr.target_job_name = szTargetJobName;
+ }
+
+ cmsg_proto_buf_header__free_unpacked(p, 0);
+
+ if (hdr.has_client_sessionid)
+ m_iSessionId = hdr.client_sessionid;
+ }
+ else { // non protobuf message
+ buf += 3; // 1 byte for header size (fixed at 36), 2 bytes for header version (fixed at 2)
+ hdr.jobid_target = *(uint64_t *)buf; buf += sizeof(uint64_t);
+ hdr.jobid_source = *(uint64_t *)buf; buf += sizeof(uint64_t);
+ buf++; // 1 byte for header canary (fixed at 239)
+ hdr.steamid = *(uint64_t *)buf; buf += sizeof(uint64_t);
+ hdr.client_sessionid = *(uint32_t *)buf; buf += sizeof(uint32_t);
+ hdr.has_jobid_target = hdr.has_jobid_source = hdr.has_steamid = hdr.has_client_sessionid = true;
+ cbLen -= 30;
+ }
+
+ if (hdr.has_eresult && hdr.eresult != (int)EResult::OK)
+ debugLogA("HDR: error code %d", hdr.eresult);
+
+ // persistent callbacks
+ switch (msgType) {
+ case EMsg::ServiceMethod:
+ case EMsg::ServiceMethodResponse:
+ ProcessServiceResponse(buf, cbLen, hdr);
+ break;
+
+ default:
+ // find message descriptor first, if succeeded, try to find a message handler then
+ auto md = g_plugin.messages.find(msgType);
+ if (md == g_plugin.messages.end()) {
+ debugLogA("Received message of type %d", msgType);
+ Netlib_Dump(m_ws->getConn(), buf, cbLen, false, 0);
+ }
+ else if (auto *pMessage = protobuf_c_message_unpack(md->second, 0, cbLen, buf)) {
+ debugLogA("Received known message:\n%s", protobuf_c_text_to_string(*pMessage).c_str());
+
+ auto mh = g_plugin.messageHandlers.find(msgType);
+ if (mh != g_plugin.messageHandlers.end())
+ (this->*(mh->second))(*pMessage, hdr);
+
+ protobuf_c_message_free_unpacked(pMessage, 0);
+ }
+ }
+}
+
+void CSteamProto::ProcessServiceResponse(const uint8_t *buf, size_t cbLen, const CMsgProtoBufHeader &hdr)
+{
+ char *tmpName = NEWSTR_ALLOCA(hdr.target_job_name);
+ char *p = strchr(tmpName, '.');
+ if (!p) {
+ debugLogA("Invalid service function: %s", hdr.target_job_name);
+ return;
+ }
+
+ *p = 0;
+ auto it = g_plugin.services.find(tmpName);
+ if (it == g_plugin.services.end()) {
+ debugLogA("Unregistered service module: %s", tmpName);
+ return;
+ }
+ *p = '.';
+
+ auto pHandler = g_plugin.serviceHandlers.find(tmpName);
+ if (pHandler == g_plugin.serviceHandlers.end()) {
+ debugLogA("Unsupported service function: %s", hdr.target_job_name);
+ return;
+ }
+
+ if (char *p1 = strchr(++p, '#'))
+ *p1 = 0;
+
+ if (auto *pMethod = protobuf_c_service_descriptor_get_method_by_name(it->second, p)) {
+ auto *pDescr = (hdr.jobid_target == -1) ? pMethod->input : pMethod->output;
+
+ if (auto *pMessage = protobuf_c_message_unpack(pDescr, 0, cbLen, buf)) {
+ debugLogA("Processing service message: %s\n%s", hdr.target_job_name, protobuf_c_text_to_string(*pMessage).c_str());
+
+ (this->*(pHandler->second))(*pMessage, hdr);
+ protobuf_c_message_free_unpacked(pMessage, 0);
+ }
+ }
+ else debugLogA("Unregistered service method: %s", hdr.target_job_name);
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
+void CSteamProto::WSSend(EMsg msgType, const ProtobufCppMessage &msg)
+{
+ CMsgProtoBufHeader hdr;
+ hdr.has_client_sessionid = hdr.has_steamid = hdr.has_jobid_source = hdr.has_jobid_target = true;
+ hdr.steamid = m_iSteamId;
+ hdr.client_sessionid = m_iSessionId;
+
+ switch (msgType) {
+ case EMsg::ClientHello:
+ hdr.jobid_source = -1;
+ break;
+
+ default:
+ hdr.jobid_source = getRandomInt();
+ break;
+ }
+
+ hdr.jobid_target = -1;
+
+ WSSendHeader(msgType, hdr, msg);
+}
+
+void CSteamProto::WSSendRaw(EMsg msgType, const MBinBuffer &body)
+{
+ MBinBuffer payload;
+ payload << (uint32_t)(int)msgType << uint8_t(36) << uint16_t(2) << uint64_t(-1) << getRandomInt()
+ << uint8_t(239) << m_iSteamId << m_iSessionId;
+ payload.append(body);
+
+ if (m_ws)
+ m_ws->sendBinary(payload.data(), payload.length());
+}
+
+void CSteamProto::WSSendHeader(EMsg msgType, const CMsgProtoBufHeader &hdr, const ProtobufCppMessage &msg)
+{
+ debugLogA("Message sent:\n%s", protobuf_c_text_to_string(msg).c_str());
+
+ uint32_t hdrLen = (uint32_t)protobuf_c_message_get_packed_size(&hdr);
+ MBinBuffer hdrbuf(hdrLen);
+ protobuf_c_message_pack(&hdr, hdrbuf.data());
+ hdrbuf.appendBefore(&hdrLen, sizeof(hdrLen));
+
+ uint32_t type = (uint32_t)msgType;
+ type |= STEAM_PROTOCOL_MASK;
+ hdrbuf.appendBefore(&type, sizeof(type));
+
+ MBinBuffer body(protobuf_c_message_get_packed_size(&msg));
+ protobuf_c_message_pack(&msg, body.data());
+
+ hdrbuf.append(body);
+ if (m_ws)
+ m_ws->sendBinary(hdrbuf.data(), hdrbuf.length());
+}
+
+void CSteamProto::WSSendAnon(const char *pszServiceName, const ProtobufCppMessage &msg)
+{
+ CMsgProtoBufHeader hdr;
+ hdr.has_client_sessionid = hdr.has_steamid = hdr.has_jobid_source = hdr.has_jobid_target = true;
+ hdr.jobid_source = getRandomInt();
+ hdr.jobid_target = -1;
+ hdr.target_job_name = (char *)pszServiceName;
+ WSSendHeader(EMsg::ServiceMethodCallFromClientNonAuthed, hdr, msg);
+}
+
+void CSteamProto::WSSendService(const char *pszServiceName, const ProtobufCppMessage &msg, void *pInfo)
+{
+ CMsgProtoBufHeader hdr;
+ hdr.has_client_sessionid = hdr.has_steamid = hdr.has_jobid_source = hdr.has_jobid_target = true;
+ hdr.steamid = m_iSteamId, hdr.client_sessionid = m_iSessionId;
+ hdr.jobid_source = getRandomInt();
+ hdr.jobid_target = -1;
+ hdr.target_job_name = (char *)pszServiceName;
+
+ if (pInfo)
+ SetRequestInfo(hdr.jobid_source, pInfo);
+
+ WSSendHeader(EMsg::ServiceMethodCallFromClient, hdr, msg);
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
+void CSteamProto::SetRequestInfo(uint64_t requestId, void *pInfo)
+{
+ mir_cslock lck(m_csRequestLock);
+ m_requestInfo[requestId] = pInfo;
+}
+
+void* CSteamProto::GetRequestInfo(uint64_t requestId)
+{
+ mir_cslock lck(m_csRequestLock);
+ auto it = m_requestInfo.find(requestId);
+ if (it == m_requestInfo.end())
+ return nullptr;
+
+ void *pRet = it->second;
+ m_requestInfo.erase(it);
+ return pRet;
+}
diff --git a/protocols/Steam/src/steam_xstatus.cpp b/protocols/Steam/src/steam_xstatus.cpp
index 167355f0d2..5ebef439e2 100644
--- a/protocols/Steam/src/steam_xstatus.cpp
+++ b/protocols/Steam/src/steam_xstatus.cpp
@@ -19,10 +19,7 @@ int CSteamProto::GetContactXStatus(MCONTACT hContact)
void SetContactExtraIcon(MCONTACT hContact, int status)
{
- char iconName[100];
- mir_snprintf(iconName, "%s_%s", MODULE, "gaming");
-
- ExtraIcon_SetIcon(hExtraXStatus, hContact, (status > 0) ? IcoLib_GetIconHandle(iconName) : nullptr);
+ ExtraIcon_SetIcon(hExtraXStatus, hContact, (status > 0) ? g_plugin.getIconHandle(IDI_GAMING) : nullptr);
}
INT_PTR CSteamProto::OnGetXStatusEx(WPARAM wParam, LPARAM lParam)
@@ -96,10 +93,7 @@ HICON CSteamProto::GetXStatusIcon(int status, UINT flags)
if (status < 1)
return nullptr;
- char iconName[100];
- mir_snprintf(iconName, "%s_%s", MODULE, "gaming");
-
- HICON icon = IcoLib_GetIcon(iconName, (flags & LR_BIGICON) != 0);
+ HICON icon = g_plugin.getIcon(IDI_GAMING, (flags & LR_BIGICON) != 0);
return (flags & LR_SHARED) ? icon : CopyIcon(icon);
}
diff --git a/protocols/Steam/src/version.h b/protocols/Steam/src/version.h
index a6ea2cad32..f3b523b710 100644
--- a/protocols/Steam/src/version.h
+++ b/protocols/Steam/src/version.h
@@ -1,7 +1,7 @@
#define __MAJOR_VERSION 0
#define __MINOR_VERSION 96
#define __RELEASE_NUM 1
-#define __BUILD_NUM 1
+#define __BUILD_NUM 3
#include <stdver.h>
@@ -10,4 +10,4 @@
#define __DESCRIPTION "Steam protocol support for Miranda NG."
#define __AUTHOR "Miranda NG team, Robert Pösel"
#define __AUTHORWEB "https://miranda-ng.org/p/Steam"
-#define __COPYRIGHT "© 2014-17 Robert Pösel, 2017-24 Miranda NG team"
+#define __COPYRIGHT "© 2014-17 Robert Pösel, 2017-25 Miranda NG team"