Horizon Official Technical Documentation
Horizon::Auth::AC_REFUSE_LOGIN Class Reference

Main object for the aegis packet: AC_REFUSE_LOGIN. More...

#include <TransmittedPackets.hpp>

+ Inheritance diagram for Horizon::Auth::AC_REFUSE_LOGIN:
+ Collaboration diagram for Horizon::Auth::AC_REFUSE_LOGIN:

Public Member Functions

 AC_REFUSE_LOGIN (std::shared_ptr< AuthSession > s)
 
virtual ~AC_REFUSE_LOGIN ()
 
void deliver (login_error_codes error_code, char *block_date, std::size_t bd_size)
 AC_REFUSE_LOGIN. More...
 
ByteBufferserialize ()
 
- Public Member Functions inherited from Horizon::Base::NetworkPacket< AuthSession >
 NetworkPacket (uint16_t packet_id, std::shared_ptr< AuthSession > s)
 
virtual ~NetworkPacket ()
 
void set_packet_id (uint16_t id)
 
uint16_t get_packet_id ()
 
ByteBufferbuf ()
 
std::shared_ptr< AuthSession > get_session ()
 Retrieves the session from this handler instance. More...
 
virtual void handle (ByteBuffer &&buf)
 
virtual void deserialize (ByteBuffer &buf)
 
void transmit ()
 Send an Asynchronous packet by queueing a buffer of a particular size to the connected session. More...
 
void transmit (std::size_t size)
 Send an Asynchronous packet by queueing a buffer of a particular size to the connected session. More...
 

Public Attributes

uint8_t _error_code { 0 }
 Error code. More...
 
char _block_date [20] { 0 }
 Ban expiration date. More...
 

Additional Inherited Members

- Protected Attributes inherited from Horizon::Base::NetworkPacket< AuthSession >
ByteBuffer _buffer
 Buffer storage facility for the packet stream. More...
 
uint16_t _packet_id
 ID of the network packet. More...
 

Detailed Description

Main object for the aegis packet: AC_REFUSE_LOGIN.

Constructor & Destructor Documentation

◆ AC_REFUSE_LOGIN()

Horizon::Auth::AC_REFUSE_LOGIN::AC_REFUSE_LOGIN ( std::shared_ptr< AuthSession s)
inline
884 : NetworkPacket<AuthSession>(ID_AC_REFUSE_LOGIN, s)
885 {}
@ ID_AC_REFUSE_LOGIN
Definition: TransmittedPackets.hpp:862

◆ ~AC_REFUSE_LOGIN()

virtual Horizon::Auth::AC_REFUSE_LOGIN::~AC_REFUSE_LOGIN ( )
inlinevirtual
886{}

Member Function Documentation

◆ deliver()

void AC_REFUSE_LOGIN::deliver ( login_error_codes  error_code,
char *  block_date,
std::size_t  bd_size 
)

AC_REFUSE_LOGIN.

125{
126 _error_code = (uint8_t)error_code;
127
128 if (bd_size <= sizeof(_block_date))
129 strncpy(_block_date, block_date, bd_size);
130
131 serialize();
132
133 transmit();
134}
uint8_t _error_code
Error code.
Definition: TransmittedPackets.hpp:892
char _block_date[20]
Ban expiration date.
Definition: TransmittedPackets.hpp:893
ByteBuffer & serialize()
Definition: TransmittedPackets.cpp:136
void transmit()
Send an Asynchronous packet by queueing a buffer of a particular size to the connected session.
Definition: NetworkPacket.hpp:94

References _block_date, _error_code, serialize(), and Horizon::Base::NetworkPacket< AuthSession >::transmit().

Referenced by Horizon::Auth::AuthClientInterface::process_login().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ serialize()

ByteBuffer & AC_REFUSE_LOGIN::serialize ( )
137{
138 buf() << _packet_id;
139 buf() << _error_code;
140 buf().append(_block_date, sizeof(_block_date));
141 return buf();
142}
void append(T value)
Definition: ByteBuffer.hpp:140
uint16_t _packet_id
ID of the network packet.
Definition: NetworkPacket.hpp:87
ByteBuffer & buf()
Definition: NetworkPacket.hpp:59

References _block_date, _error_code, Horizon::Base::NetworkPacket< AuthSession >::_packet_id, ByteBuffer::append(), and Horizon::Base::NetworkPacket< AuthSession >::buf().

Referenced by deliver().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ _block_date

char Horizon::Auth::AC_REFUSE_LOGIN::_block_date[20] { 0 }

Ban expiration date.

Referenced by deliver(), and serialize().

◆ _error_code

uint8_t Horizon::Auth::AC_REFUSE_LOGIN::_error_code { 0 }

Error code.

Referenced by deliver(), and serialize().


The documentation for this class was generated from the following files: