// SMsgDirG2ClearDataObjects::Unpack // Virtual method from SmallMessage. Extracts data from message buffer. void SMsgDirG2ClearDataObjects::Unpack(void) { WTRACE("SMsgDirG2ClearDataObjects::Unpack"); mClearTypes.clear(); mKeyType = (GetMessageType() == WONMsg::DirG2ServiceClearDataObjects ? KT_SERVICE : KT_DIRECTORY); SMsgDirG2UpdateBase::Unpack(); if ((GetServiceType() != WONMsg::SmallDirServerG2) || ((GetMessageType() != WONMsg::DirG2DirectoryClearDataObjects) && (GetMessageType() != WONMsg::DirG2ServiceClearDataObjects))) { WDBG_AH("SMsgDirG2ClearDataObjects::Unpack Not a DirG2ClearDataObjects message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a DirG2ClearDataObjects message."); } UnpackKey(*this); unsigned short aCt = ReadShort(); WDBG_LL("SMsgDirG2ClearDataObjects::Unpack Reading " << aCt << " entries."); for (int i=0; i < aCt; i++) { DataObject anObj; unsigned char aLen = ReadByte(); if (aLen > 0) anObj.GetDataType().assign(reinterpret_cast<const unsigned char*>(ReadBytes(aLen)), aLen); mClearTypes.insert(anObj); } UnpackPeerData(); }
void MMsgRoutingUnsubscribeDataObject::Unpack(void) { WTRACE("MMsgRoutingUnsubscribeDataObject::Unpack"); RoutingServerMessage::Unpack(); if (GetServiceType() != WONMsg::MiniRoutingServer || GetMessageType() != WONMsg::RoutingUnsubscribeDataObject) { WDBG_AH("MMsgRoutingUnsubscribeDataObject::Unpack Not a RoutingUnsubscribeDataObject message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a RoutingUnsubscribeDataObject message."); } // read in the client/group id mLinkId = ReadClientOrGroupId(); // read in the datatype length followed by the datatype itself unsigned char aDataTypeSize = ReadByte(); mDataType.assign((unsigned char*)ReadBytes(aDataTypeSize), aDataTypeSize); // read in the flags unsigned char aFlags = ReadByte(); mExactOrRecursiveFlag = ((aFlags & 0x01) != 0); mGroupOrMembersFlag = ((aFlags & 0x02) != 0); WDBG_LL("MMsgRoutingUnsubscribeDataObject::Unpack Reading message data"); }
//[输入]buffer:待解析的数据,opt_num:选项数量 //[输出]无 void ParseBody(char *buffer, int opt_num) { // int m; // printf("body...\n"); // for(m=0;m++;m<=32) // { // printf("%s",buffer[m]); // } // printf(".............\n"); //首先判断服务类型 char *service = NULL; service = GetServiceType(buffer); if (service != NULL) { // cout<<"应用层数据解析OK!"<<endl; // cout<<"服务类型 :"<<service<<endl; if (strcmp(service, "SERVICE_HTTP") == 0) { // HttpParse(buffer, opt_num); } else if (strcmp(service, "SERVICE_SMTP") == 0) { cout<<"应用层数据解析OK!"<<endl; cout<<"服务类型 :"<<service<<endl; SmtpParse(buffer, opt_num); cout<<"-----------------------解析完成 !"<<endl; } else //其它应用层数据类型 { // cout << "-----其它类型应用层数据------" << endl; } // cout<<"-----------------------解析完成 !"<<endl; } free(service); }
// TMsgCommQueryOptions::unpack // Virtual method from TMessage. Extracts data from message buffer. void TMsgCommQueryOptions::Unpack(void) { WTRACE("TMsgCommQueryOptions::Unpack"); mOptionList.clear(); TMessage::Unpack(); if ((GetServiceType() != WONMsg::CommonService) || (GetMessageType() != WONMsg::CommQueryOptions)) { WDBG_AH("TMsgCommRehupOptions::Unpack Not a CommQueryOptions message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a CommQueryOptions message."); } // Get num options unsigned short aCt = ReadShort(); WDBG_LL("TMsgCommQueryOptions::Unpack Reading " << aCt << "entries."); for (int i=0; i < aCt; i++) { string aBuf; ReadString(aBuf); mOptionList.push_back(aBuf); } }
// TMsgDirGetDirContents::Unpack // Virtual method from TMessage. Extracts data from message buffer. void TMsgDirGetDirContentsReply::Unpack(void) { WTRACE("TMsgDirGetDirContentsReply::Unpack"); TMessage::Unpack(); if ((GetServiceType() != WONMsg::DirServer) || (GetMessageType() != WONMsg::DirGetDirContentsReply)) { WDBG_AH("TMsgDirGetDirContentsReply::Unpack Not a DirGetDirContentsReply message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a DirGetDirContentsReply message."); } WDBG_LL("TMsgDirGetDirContentsReply::Unpack Reading message data"); mStatus = static_cast<ServerStatus>(static_cast<short>(ReadShort())); unsigned short anEntryCt = ReadShort(); WDBG_LL("TMsgDirGetDirContentsReply::Unpack Reading " << anEntryCt << "entries."); mEntries.clear(); for (int i=0; i < anEntryCt; i++) { DirServerEntry anEntry; UnpackEntry(anEntry); mEntries.push_back(anEntry); } }
void MMsgRoutingModifyDataObject::Unpack(void) { WTRACE("MMsgRoutingModifyDataObject::Unpack"); RoutingServerMessage::Unpack(); if (GetServiceType() != WONMsg::MiniRoutingServer || GetMessageType() != WONMsg::RoutingModifyDataObject) { WDBG_AH("MMsgRoutingModifyDataObject::Unpack Not a RoutingModifyDataObject message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a RoutingModifyDataObject message."); } // read in the client/group id mLinkId = ReadClientOrGroupId(); // read in the datatype size and then the datatype itself unsigned char aDataTypeSize = ReadByte(); mDataType.assign((unsigned char*)ReadBytes(aDataTypeSize), aDataTypeSize); // read in the offset mOffset = ReadShort(); // read in the IsInsert flag mIsInsert = ReadBool(); // read in the data length followed by the data itself unsigned short aDataSize = ReadShort(); mData.assign((unsigned char*)ReadBytes(aDataSize), aDataSize); WDBG_LL("MMsgRoutingModifyDataObject::Unpack Reading message data"); }
// TMsgDirFindServiceReply::Unpack // Virtual method from TMessage. Extracts data from message buffer. void TMsgDirFindServiceReply::Unpack(void) { WTRACE("TMsgDirFindServiceReply::Unpack"); TMessage::Unpack(); if ((GetServiceType() != WONMsg::DirServer) || (GetMessageType() != WONMsg::DirFindServiceReply)) { WDBG_AH("TMsgDirFindServiceReply::Unpack Not a DirFindServiceReply message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a DirFindServiceReply message."); } WDBG_LL("TMsgDirFindServiceReply::Unpack Reading message data"); mStatus = static_cast<ServerStatus>(static_cast<short>(ReadShort())); // Service data only present if status is success if (mStatus == WONMsg::StatusCommon_Success) { mService.mType = DirServerEntry::EntryTypeService; ReadWString(mService.mPath); ReadWString(mService.mName); ReadWString(mService.mDisplayName); ReadWString(mService.mVersion); ReadWString(mService.mProtoName); ReadWString(mService.mProtoVersion); ReadWString(mService.mNetAddress); mService.mLifespan = ReadLong(); mService.mCreated = ReadLong(); unsigned short aLen = ReadShort(); mService.SetBlob(ReadBytes(aLen), aLen); } }
void MMsgRoutingGetUserListReply::Unpack(void) { WTRACE("MMsgRoutingGetUserListReply::Unpack"); RoutingServerMessage::Unpack(); if (GetServiceType() != WONMsg::MiniRoutingServer || GetMessageType() != WONMsg::RoutingGetUserListReply) { WDBG_AH("MMsgRoutingGetUserListReply::Unpack Not a RoutingGetUserListReply message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a RoutingGetUserListReply message."); } WDBG_LL("MMsgRoutingGetUserListReply::Unpack Reading message data"); // read in the status mStatus = ReadShort(); // read in the user count unsigned short aNumUsers = ReadShort(); // read in the user list mUserList.clear(); for (int iUser = 0; iUser < aNumUsers; iUser++) { UserData aUser; ReadUserName(aUser.mUserName); mUserList.push_back(aUser); } }
void MMsgRoutingSendData::Unpack(void) { WTRACE("MMsgRoutingSendData::Unpack"); RoutingServerMessage::Unpack(); if (GetServiceType() != WONMsg::MiniRoutingServer || GetMessageType() != WONMsg::RoutingSendData) { WDBG_AH("MMsgRoutingSendData::Unpack Not a RoutingSendData message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a RoutingSendData message."); } WDBG_LL("MMsgRoutingSendData::Unpack Reading message data"); // read in the flags unsigned char aFlags = ReadByte(); mShouldSendReply = ((aFlags & 0x01) != 0); mIncludeExcludeFlag = ((aFlags & 0x02) != 0); // read in the message data unsigned short aDataSize = ReadShort(); mData.assign(reinterpret_cast<const unsigned char*>(ReadBytes(aDataSize)), aDataSize); // read in the address list ReadAddresseeList(this); }
// TMsgCommPingReply::unpack // Virtual method from TMessage. Extracts data from message buffer. void TMsgCommQueryOptReply::Unpack(void) { WTRACE("TMsgCommQueryOptReply::Unpack"); mOptionMap.clear(); TMessage::Unpack(); if ((GetServiceType() != WONMsg::CommonService) || (GetMessageType() != WONMsg::CommQueryOptionsReply)) { WDBG_AH("TMsgCommQueryOptReply::Unpack Not a CommQueryOptionsReply message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a CommQueryOptionsReply message."); } unsigned short aCt = ReadShort(); WDBG_LL("TMsgCommQueryOptReply::Unpack reading " << aCt << " entries"); for (int i=0; i < aCt; i++) { OptionDef aDef; string anOpt; ReadString(anOpt); aDef.first = static_cast<OptionStatus>(ReadByte()); ReadWString(aDef.second); mOptionMap[anOpt] = aDef; } if (BytesLeftToRead() >= 2) mStatus = static_cast<WONMsg::ServerStatus>(static_cast<short>(ReadShort())); }
// MMsgObsSubscribeById::Unpack // Virtual method from MiniMessage. Extracts data from message buffer. void MMsgObsSubscribeById::Unpack(void) { WTRACE("MMsgObsSubscribeById::Unpack"); MiniMessage::Unpack(); if ((GetServiceType() != WONMsg::MiniObsServer) || (GetMessageType() != WONMsg::ObsMsg_SubscribeById)) { WDBG_AH("MMsgObsSubscribeById::Unpack Not a ObsSubscribeById message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a ObsSubscribeById message."); } WDBG_LL("MMsgObsSubscribeById::Unpack Reading message data"); mPublicationId = ReadLong(); mSubscriberId = ReadLong(); if (!mSubscriberId) // Optional parameters follow { ReadString(mSubscriberName); ReadWString(mSubscriberDescription); mConnectionType = (ConnectionTypeEnum)ReadShort(); ReadString(mSubscriberAddress); } }
// SMsgDirG2ModifyService::Unpack // Virtual method from SmallMessage. Extracts data from message buffer. void SMsgDirG2ModifyService::Unpack(void) { WTRACE("SMsgDirG2ModifyService::Unpack"); SetKeyType(KT_SERVICE); SetExtended((GetMessageType() != WONMsg::DirG2ModifyService), (GetMessageType() == WONMsg::DirG2ModifyServiceEx)); SMsgDirG2UpdateExtendBase::Unpack(); if ((GetServiceType() != WONMsg::SmallDirServerG2) || ((GetMessageType() != WONMsg::DirG2ModifyService) && (GetMessageType() != WONMsg::DirG2ModifyServiceEx) && (GetMessageType() != WONMsg::DirG2ModifyServiceExObsolete))) { WDBG_AH("SMsgDirG2ModifyService::Unpack Not a DirG2ModifyService(Ex) message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a DirG2ModifyService(Ex) message."); } mEntityFlags = ReadByte(); UnpackKey(*this); ReadWString(mNewName); unsigned char aLen = ReadByte(); WDBG_LL("SMsgDirG2ModifyService::Unpack Read New Addr len=" << aLen); if (aLen > 0) mNewNetAddress.assign(reinterpret_cast<const unsigned char*>(ReadBytes(aLen)), aLen); ReadWString(mNewDisplayName); mNewLifespan = ReadLong(); UnpackExtended(); UnpackPeerData(); }
void MMsgRoutingCreateGroup::Unpack(void) { WTRACE("MMsgRoutingCreateGroup::Unpack"); RoutingServerMessage::Unpack(); if (GetServiceType() != WONMsg::MiniRoutingServer || GetMessageType() != WONMsg::RoutingCreateGroup) { WDBG_AH("MMsgRoutingCreateGroup::Unpack Not a RoutingCreateGroup message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a RoutingCreateGroup message."); } WDBG_LL("MMsgRoutingCreateGroup::Unpack Reading message data"); // read in group name ReadGroupName(mGroupName); // read in flags unsigned char aFlags = ReadByte(); mIsPublic = ((aFlags & 0x01) != 0); mAnnounceGroupChanges = ((aFlags & 0x02) != 0); // read in client count unsigned short aNumClients = ReadShort(); // read in client list mClientList.clear(); for (int iClient = 0; iClient < aNumClients; iClient++) mClientList.push_back(ReadClientId()); }
// SMsgDirG2GetNumEntitiesReply::Unpack // Virtual method from SmallMessage. Extracts data from message buffer. void SMsgDirG2GetNumEntitiesReply::Unpack(void) { WTRACE("SMsgDirG2GetNumEntitiesReply::Unpack"); SmallMessage::Unpack(); if ((GetServiceType() != WONMsg::SmallDirServerG2) || (GetMessageType() != WONMsg::DirG2GetNumEntitiesReply)) { WDBG_AH("SMsgDirG2GetNumEntitiesReply::Unpack Not a DirG2GetNumEntitiesReply message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a DirG2GetNumEntitiesReply message."); } WDBG_LL("SMsgDirG2GetNumEntitiesReply::Unpack Reading message data"); unsigned short anEntryCt = ReadShort(); WDBG_LL("SMsgDirG2GetNumEntitiesReply::Unpack Reading " << anEntryCt << " entries."); mEntries.clear(); for (int i=0; i < anEntryCt; i++) { NumEntriesData anEntry; mEntries.push_back(anEntry); mEntries.back().first = static_cast<short>(ReadShort()); mEntries.back().second = ReadShort(); } }
// SMsgDirG2GetNumEntities::Unpack // Virtual method from SmallMessage. Extracts data from message buffer. void SMsgDirG2GetNumEntities::Unpack(void) { WTRACE("SMsgDirG2GetNumEntities::Unpack"); SmallMessage::Unpack(); if ((GetServiceType() != WONMsg::SmallDirServerG2) || (GetMessageType() != WONMsg::DirG2GetNumEntities)) { WDBG_AH("SMsgDirG2GetNumEntities::Unpack Not a DirG2GetNumEntities message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a DirG2GetNumEntities message."); } WDBG_LL("SMsgDirG2GetNumEntities::Unpack Reading message data"); unsigned short aPathCt = ReadShort(); WDBG_LL("SMsgDirG2GetNumEntities::Unpack Reading " << aPathCt << " entries."); mPaths.clear(); for (int i=0; i < aPathCt; i++) { DirPathData anEntry; mPaths.push_back(anEntry); ReadWString(mPaths.back().mPath); mPaths.back().mMode = static_cast<DirGetMode>(ReadShort()); } }
void SMsgCommDumpStatistics::Unpack(void) { WTRACE("SMsgCommDumpStatistics::Unpack"); SmallMessage::Unpack(); if (GetServiceType() != WONMsg::SmallCommonService || GetMessageType() != WONMsg::SmallCommDumpStatistics) { WDBG_AH("SMsgCommDumpStatistics::Unpack Not a SMsgCommDumpStatistics message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a SMsgCommDumpStatistics message."); } }
void MMsgRoutingBecomeModerator::Unpack(void) { WTRACE("MMsgRoutingBecomeModerator::Unpack"); RoutingServerClientIdFlagMessage::Unpack(); if (GetServiceType() != WONMsg::MiniRoutingServer || GetMessageType() != WONMsg::RoutingBecomeModerator) { WDBG_AH("MMsgRoutingBecomeModerator::Unpack Not a RoutingBecomeModerator message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a RoutingBecomeModerator message."); } }
//-------------------------------------------------------------------------------- BOOL CNTService::InstallService() { AFX_MANAGE_STATE_IF_DLL TCHAR szPath[1024]; if(GetModuleFileName( 0, szPath, 1023 ) == 0 ) return FALSE; BOOL bRet = FALSE; SC_HANDLE schSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS); if(schSCManager != NULL) { DWORD nServiceType = GetServiceType(); DWORD nStartType = GetStartType(); SC_HANDLE schService = CreateService( schSCManager, GetServiceName(), GetDisplayName(), GetDesiredAccess(), nServiceType, nStartType, GetErrorControl(), szPath, GetLoadOrderGroup(), ((nServiceType == SERVICE_KERNEL_DRIVER || nServiceType == SERVICE_FILE_SYSTEM_DRIVER) && (nStartType == SERVICE_BOOT_START || nStartType == SERVICE_SYSTEM_START)) ? &m_dwTagID : NULL, GetDependencies(), GetUserName(), GetPassword() ); if(schService != NULL) { CloseServiceHandle(schService); bRet = TRUE; } CloseServiceHandle(schSCManager); } if(bRet) // installation succeeded. Now register the message file RegisterApplicationLog(szPath, EVENTLOG_ERROR_TYPE | EVENTLOG_WARNING_TYPE | EVENTLOG_INFORMATION_TYPE); return bRet; }
void MMsgRoutingInviteClient::Unpack(void) { WTRACE("MMsgRoutingInviteClient::Unpack"); RoutingServerClientNameFlagMessage::Unpack(); if (GetServiceType() != WONMsg::MiniRoutingServer || GetMessageType() != WONMsg::RoutingInviteClient) { WDBG_AH("MMsgRoutingInviteClient::Unpack Not a RoutingInviteClient message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a RoutingInviteClient message."); } }
// MMsgCommNoOp::unpack // Virtual method from TMessage. Extracts data from message buffer. void MMsgCommNoOp::Unpack(void) { WTRACE("MMsgCommNoOp::Unpack"); MiniMessage::Unpack(); if ((GetServiceType() != WONMsg::MiniCommonService) || (GetMessageType() != WONMsg::MiniCommNoOp)) { WDBG_AH("MMsgCommNoOp::Unpack Not a CommNoOp message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a CommNoOp message."); } }
void MMsgRoutingKeepAlive::Unpack(void) { WTRACE("MMsgRoutingKeepAlive::Unpack"); RoutingServerMessage::Unpack(); if (GetServiceType() != WONMsg::MiniRoutingServer || GetMessageType() != WONMsg::RoutingKeepAlive) { WDBG_AH("MMsgRoutingKeepAlive::Unpack Not a RoutingKeepAlive message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a RoutingKeepAlive message."); } WDBG_LL("MMsgRoutingKeepAlive::Unpack Reading message data"); }
// TMsgDirLoadFromSource::Unpack // Virtual method from TMessage. Extracts data from message buffer. void TMsgDirLoadFromSource::Unpack(void) { WTRACE("TMsgDirLoadFromSource::Unpack"); TMessage::Unpack(); if ((GetServiceType() != WONMsg::DirServer) || (GetMessageType() != WONMsg::DirLoadFromSource)) { WDBG_AH("TMsgDirLoadFromSource::Unpack Not a DirLoadFromSource message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a DirLoadFromSource message."); } }
/// Creates a UPnpService and adds it to the UPnpDevice's list of services. void UPnpServiceImpl::RegisterService(UPnpDevice *pDevice) { if (pDevice != NULL) { UPnpService *pService = new UPnpService(); pService->m_sServiceType = GetServiceType(); pService->m_sServiceId = GetServiceId(); pService->m_sSCPDURL = GetServiceDescURL(); pService->m_sControlURL = GetServiceControlURL(); pService->m_sEventSubURL = GetServiceEventURL(); pDevice->m_listServices.push_back(pService); } }
void MMsgRoutingRemoveSuccessor::Unpack(void) { WTRACE("MMsgRoutingRemoveSuccessor::Unpack"); RoutingServerMessage::Unpack(); if (GetServiceType() != WONMsg::MiniRoutingServer || GetMessageType() != WONMsg::RoutingRemoveSuccessor) { WDBG_AH("MMsgRoutingRemoveSuccessor::Unpack Not a RoutingRemoveSuccessor message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a RoutingRemoveSuccessor message."); } WDBG_LL("MMsgRoutingRemoveSuccessor::Unpack Reading message data"); mClientId = ReadClientId(); }
// TMsgAuth1LoginRequest2::Unpack // Virtual method from TMessage. Extracts data from message buffer. // Note: call ForceRawBufOwn() to force ownership of the data buffers. void TMsgAuth1LoginRequest2::Unpack(void) { WTRACE("TMsgAuth1LoginRequest2::Unpack"); TMsgAuth1LoginBase2::Unpack(); if ((GetServiceType() != WONMsg::Auth1Login) || (GetMessageType() != WONMsg::Auth1LoginRequest2 && GetMessageType() != WONMsg::Auth1LoginRequest223 )) { WDBG_AH("TMsgAuth1LoginRequest2::Unpack Not a Auth1LoginRequest message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a Auth1LoginRequest2 message."); } }
void TMsgCommProtocolReject::Unpack() { WTRACE("TMsgCommProtocolReject::Unpack"); TMessage::Unpack(); if ((GetServiceType() != WONMsg::CommonService) || (GetMessageType() != WONMsg::CommProtocolReject)) { WDBG_AH("TMsgCommProtocol::Unpack Not a CommProtocolReject message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a CommProtocolReject message."); } WDBG_LL("TMsgCommProtocolReject::Unpack Reading message data"); mProtocolType = MsgProtocolType( ReadByte() ); }
void MMsgRoutingGetUserList::Unpack(void) { WTRACE("MMsgRoutingGetUserList::Unpack"); RoutingServerMessage::Unpack(); if (GetServiceType() != WONMsg::MiniRoutingServer || GetMessageType() != WONMsg::RoutingGetUserList) { WDBG_AH("MMsgRoutingGetUserList::Unpack Not a RoutingGetUserList message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a RoutingGetUserList message."); } mUserListType = ReadByte(); if (mUserListType > USERLISTTYPE_MAX) mUserListType = USERLISTTYPE_INVALID; }
void SMsgFactGetDir::Unpack(void) { WTRACE("SMsgFactGetDir::Unpack"); SmallMessage::Unpack(); if (GetServiceType() != WONMsg::SmallFactoryServer || GetMessageType() != WONMsg::FactGetDir) { WDBG_AH("SMsgFactGetDir::Unpack Not a FactGetDir message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a FactGetDir message!"); } WDBG_LL("SMsgFactGetDir::Unpack Reading message data"); ReadString(mFilePath); }
void MMsgRoutingClientChangeEx::Unpack(void) { WTRACE("MMsgRoutingClientChangeEx::Unpack"); RoutingServerMessage::Unpack(); if (GetServiceType() != WONMsg::MiniRoutingServer || GetMessageType() != WONMsg::RoutingClientChangeEx) { WDBG_AH("MMsgRoutingClientChangeEx::Unpack Not a RoutingClientChangeEx message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a RoutingClientChangeEx message."); } WDBG_LL("MMsgRoutingClientChangeEx::Unpack Reading message data"); MMsgRoutingClientChange::SimpleUnpack(); ChangeInfo::Unpack(this); }
void MMsgRoutingCreateGroupReply::Unpack(void) { WTRACE("MMsgRoutingCreateGroupReply::Unpack"); RoutingServerMessage::Unpack(); if (GetServiceType() != WONMsg::MiniRoutingServer || GetMessageType() != WONMsg::RoutingCreateGroupReply) { WDBG_AH("MMsgRoutingCreateGroupReply::Unpack Not a RoutingCreateGroupReply message!"); throw WONMsg::BadMsgException(*this, __LINE__, __FILE__, "Not a RoutingCreateGroupReply message."); } WDBG_LL("MMsgRoutingCreateGroupReply::Unpack Reading message data"); mStatus = ReadShort(); mGroupId = (mStatus == WONMsg::StatusCommon_Success) ? ReadGroupId() : 0; }