X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/359e4b28458d352dc55ac39db7e4b5bb308eb361..95d54ec2f747d0b89fff42965a781689e7d4db1e:/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 d7fb8478..7cdf2475 100644 --- a/stglibs/srvconf.lib/include/stg/servconf_types.h +++ b/stglibs/srvconf.lib/include/stg/servconf_types.h @@ -21,6 +21,14 @@ #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" @@ -31,6 +39,14 @@ #define ENC_MSG_LEN (8) +struct ADMIN_CONF; +struct TARIFF_DATA; +struct SERVICE_CONF; +struct CORP_CONF; + +namespace STG +{ + enum status { st_ok = 0, @@ -55,4 +71,136 @@ confLoginCipher, confData }; +namespace SIMPLE +{ + +typedef void (* CALLBACK)(bool result, const std::string & reason, void * data); + +} // namespace SIMPLE + +namespace GET_CONTAINER +{ + +template +struct CALLBACK +{ +typedef void (* TYPE)(bool result, const std::string & reason, const std::vector & info, void * data); +}; + +} + +namespace AUTH_BY +{ + +typedef std::vector INFO; +typedef void (* CALLBACK)(bool result, const std::string & reason, const INFO & info, void * data); + +} // namespace AUTH_BY + +namespace SERVER_INFO +{ + +struct INFO +{ + std::string version; + int tariffNum; + int tariffType; + int usersNum; + std::string uname; + int dirNum; + ARRAY dirName; +}; +typedef void (* CALLBACK)(bool result, const std::string & reason, const INFO & info, void * data); + +} // namespace SERVER_INFO + +namespace RAW_XML +{ + +typedef void (* CALLBACK)(bool result, const std::string & reason, const std::string & response, void * data); + +} + +namespace GET_USER +{ + +struct STAT +{ + ARRAY su; + ARRAY sd; + ARRAY mu; + ARRAY md; + double freeMb; +}; + +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; + STAT stat; + time_t pingTime; + time_t lastActivityTime; + ARRAY userData; + 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_TARIFF +{ + +typedef TARIFF_DATA INFO; +typedef void (* CALLBACK)(bool result, const std::string & reason, const INFO & info, void * data); + +} + +namespace GET_SERVICE +{ + +typedef SERVICE_CONF INFO; +typedef void (* CALLBACK)(bool result, const std::string & reason, const INFO & info, void * data); + +} + +namespace GET_CORP +{ + +typedef CORP_CONF INFO; +typedef void (* CALLBACK)(bool result, const std::string & reason, const INFO & info, void * data); + +} + +} // namespace STG + #endif