X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/5f1252496dfef1724c21421ea470a04d09af7ad0..8c6fa3fbaccc22127280bf77a48fab5a3ee0716e:/stglibs/srvconf.lib/include/stg/servconf_types.h diff --git a/stglibs/srvconf.lib/include/stg/servconf_types.h b/stglibs/srvconf.lib/include/stg/servconf_types.h index 21abf0ed..167b8091 100644 --- a/stglibs/srvconf.lib/include/stg/servconf_types.h +++ b/stglibs/srvconf.lib/include/stg/servconf_types.h @@ -21,20 +21,18 @@ #ifndef __STG_STGLIBS_SRVCONF_TYPES_H__ #define __STG_STGLIBS_SRVCONF_TYPES_H__ +#include "stg/array.h" #include "stg/const.h" // DIR_NUM +#include "stg/os_int.h" // uint32_t, etc... #include #include +#include -#define STG_HEADER "SG04" -#define OK_HEADER "OKHD" -#define ERR_HEADER "ERHD" -#define OK_LOGIN "OKLG" -#define ERR_LOGIN "ERLG" -#define OK_LOGINS "OKLS" -#define ERR_LOGINS "ERLS" - -#define ENC_MSG_LEN (8) +struct ADMIN_CONF; +struct TARIFF_DATA; +struct SERVICE_CONF; +struct CORP_CONF; namespace STG { @@ -55,14 +53,24 @@ st_xml_parse_error, st_data_error }; -enum CONF_STATE +namespace SIMPLE +{ + +typedef void (* CALLBACK)(bool result, const std::string & reason, void * data); + +} // namespace SIMPLE + +namespace GET_CONTAINER { -confHdr = 0, -confLogin, -confLoginCipher, -confData + +template +struct CALLBACK +{ +typedef void (* TYPE)(bool result, const std::string & reason, const std::vector & info, void * data); }; +} // namespace GET_CONTAINER + namespace AUTH_BY { @@ -82,18 +90,100 @@ struct INFO int usersNum; std::string uname; int dirNum; - std::string dirName[DIR_NUM]; + ARRAY dirName; }; typedef void (* CALLBACK)(bool result, const std::string & reason, const INFO & info, void * data); } // namespace SERVER_INFO -namespace CHECK_USER +namespace RAW_XML { -typedef int (* CALLBACK)(bool result, const std::string & reason, void * data); +typedef void (* CALLBACK)(bool result, const std::string & reason, const std::string & response, void * data); + +} // namespace RAW_XML + +namespace GET_USER +{ + +struct STAT +{ + ARRAY su; + ARRAY sd; + ARRAY mu; + ARRAY md; +}; + +struct INFO +{ + std::string login; + std::string password; + double cash; + double credit; + time_t creditExpire; + double lastCashAdd; + double lastCashAddTime; + time_t lastTimeCash; + double prepaidTraff; + int disabled; + int passive; + int disableDetailStat; + int connected; + int alwaysOnline; + uint32_t ip; + std::string ips; + std::string tariff; + std::string group; + std::string note; + std::string email; + std::string name; + std::string address; + std::string phone; + std::string corp; + STAT stat; + time_t pingTime; + time_t lastActivityTime; + ARRAY userData; + std::vector services; + std::vector authBy; +}; + +typedef void (* CALLBACK)(bool result, const std::string & reason, const INFO & info, void * data); + +} // namespace GET_USER + +namespace GET_ADMIN +{ + +typedef ADMIN_CONF INFO; +typedef void (* CALLBACK)(bool result, const std::string & reason, const INFO & info, void * data); + +} // namespace GET_ADMIN + +namespace GET_TARIFF +{ + +typedef TARIFF_DATA INFO; +typedef void (* CALLBACK)(bool result, const std::string & reason, const INFO & info, void * data); + +} // namespace GET_TARIFF + +namespace GET_SERVICE +{ + +typedef SERVICE_CONF INFO; +typedef void (* CALLBACK)(bool result, const std::string & reason, const INFO & info, void * data); + +} // namespace GET_SERVICE + +namespace GET_CORP +{ + +typedef CORP_CONF INFO; +typedef void (* CALLBACK)(bool result, const std::string & reason, const INFO & info, void * data); + +} // namespace GET_CORP -} } // namespace STG #endif