* Author : Maxim Mamontov <faust@stargazer.dp.ua>
*/
-#ifndef __STG_SGCONFIG_CONN_H__
-#define __STG_SGCONFIG_CONN_H__
+#pragma once
#include "parser.h"
#include "dumphelpers.h"
-#include "stg/os_int.h"
#include "stg/const.h"
#include <stdexcept>
#include <string>
+#include <cstdint>
#include <expat.h>
#include <netinet/in.h>
-class SETTINGS;
-class ADMINS;
-class USERS;
-class TARIFFS;
-class ADMIN;
-class BASE_PARSER;
-class PLUGIN_LOGGER;
-
namespace STG
{
+struct Settings;
+struct Admins;
+struct Users;
+struct Tariffs;
+struct Admin;
+class PluginLogger;
+
class DECRYPT_STREAM;
class Conn
};
Conn(const BASE_PARSER::REGISTRY & registry,
- ADMINS & admins, int sock, const sockaddr_in& addr,
- PLUGIN_LOGGER & logger);
+ Admins & admins, int sock, const sockaddr_in& addr,
+ PluginLogger & logger);
~Conn();
int Sock() const { return m_sock; }
- uint32_t IP() const { return *(uint32_t *)(&m_addr.sin_addr); }
+ uint32_t IP() const { return *reinterpret_cast<const uint32_t *>(&m_addr.sin_addr); }
uint16_t Port() const { return ntohs(m_addr.sin_port); }
- std::string endpoint() const { return inet_ntostring(IP()) + ":" + x2str(Port()); }
+ std::string endpoint() const { return inet_ntostring(IP()) + ":" + std::to_string(Port()); }
bool Read();
const BASE_PARSER::REGISTRY & m_registry;
- ADMINS & m_admins;
+ Admins & m_admins;
- ADMIN * m_admin;
+ Admin * m_admin;
int m_sock;
sockaddr_in m_addr;
char m_cryptoLogin[ADM_LOGIN_LEN]; // Without \0
char m_data[1024];
STG::DECRYPT_STREAM * m_stream;
- PLUGIN_LOGGER & m_logger;
+ PluginLogger & m_logger;
BASE_PARSER * GetParser(const std::string & tag) const;
};
}
-
-#endif