Classes | Public Member Functions | Public Attributes

c_dcc_client Class Reference

Stores DCC state of user. More...

#include <dcc_internal.h>

Collaboration diagram for c_dcc_client:

List of all members.

Classes

struct  c_dcc_client_send
 Stores data about temporary file being uploaded via DCC SEND. More...
struct  c_fs
 Stores data about file from the filesystem. More...

Public Member Functions

 c_dcc_client ()
 ~c_dcc_client ()
void destroy ()

Public Attributes

bool access_grant_apply
 Can this user grant accesst to .apply command to other user?
bool access_grant_backup
 Can this user grant/deny access to .backup command to other user?
bool access_grant_can_send_all_users
 Can this user grant right to send message / file to all users?
bool access_grant_can_send_unknown_users
 Can this user grant right to send message / file to unknown?
vector< string > access_grant_channel
 List of channels that user can add/exclude users to/from.
bool access_grant_die
 Can this user grant access to .die command to other user?
bool access_grant_filesystem
 Can this user grant access to .filesystem command to other user?
vector< string > access_grant_groups
 List of groups that user can add/exclude users to.
bool access_grant_partyline
 Can user grant other user access to partyline?
bool access_grant_plusproc
 Can this user (or bot) grant creatoin new procedure to other user?
bool access_grant_plususer
 Can this user (or bot) grant creatoin new user to other user?
bool access_grant_private
 Has user right to grant to other user access to private query definitions?
vector< string > access_grant_proc
 List of procedures that user can grant access to.
vector< string > access_grant_proc_groups
 List of groups of procedures that user can grant access to.
bool access_grant_rehash
 Can this user grant/deny access to .rehash command to other user?
bool access_grant_replication
 Can this user grant access to modify replication parameters?
bool access_grant_restart
 Can this user grant access to .restart command to other user?
bool access_grant_upgrade
 Can this user grant accesst to .upgrade command to other user?
bool access_to_apply
 Has user access to .apply command?
bool access_to_backup
 Can this user use .backup command?
bool access_to_can_send_all_users
 Can this user send message / file to all users?
bool access_to_can_send_unknown_users
 Can this user send message / file to unknown users?
vector< string > access_to_chan_defs
 List of channels that user has access to their definitions.
vector< string > access_to_channel
 List of channels that user has access to.
bool access_to_die
 Can this user use .die command?
bool access_to_filesystem
 Can this user use .filesystem command?
vector< string > access_to_groups
 List of groups that user has access to.
bool access_to_plusproc
 Can this user (or bot) create new procedure?
bool access_to_plususer
 Can this user (or bot) create new user?
bool access_to_private
 Has user access to private query definitions?
vector< string > access_to_proc_groups
 List of groups of procedures that user has access to.
vector< string > access_to_procs
bool access_to_rehash
 Can this user use .rehash command?
bool access_to_replication
 Can this user modify replication parameters?
bool access_to_restart
 Can this user use .restart command?
bool access_to_upgrade
 Has user access to .upgrade command?
vector< string > access_to_users
 List of users that user has access to.
vector< string > access_to_users_also_terminators
 List of users that user has access to (also terminator users).
vector< string > access_usage_proc
 List of procedures that user can add/exclude events to.
vector< string > access_usage_proc_groups
 List of procedure groups that user can add/exclude events to.
string as_in_logic
 Contains name of user (as in logic.txt file).
bool b_repl_chandef
 Are we editing replication for channel definitions?
bool b_repl_func
 Are we editing replication for function?
bool b_repl_private
 Are we editing replication for private query events?
bool b_repl_proc
 Are we editing replication for procedure?
bool b_repl_user
 Are we editing replication for user?
bool b_repl_user_template
 Are we editing replication for user template?
bool chat
 Is this connection a DCC-CHAT-type connection?
vector< c_channelchs
 User's channels.
log_client_id_t client_id
 ID of client (for logs).
threaded_connect_id connect_id
 Thread's connect ID.
my_time_t connect_time
 Time when client has connected to us.
struct
c_dcc_client::c_dcc_client_send 
dcc_send
 Stores data about temporary file being uploaded via DCC SEND.
string dynbanc_channel
 Name of channel for .dynbans command.
int dynbans
 Context state of .dynbans command.
int edit_chan
 Number of state of editing channel definitions.
int edit_channel_num
 Number of channel which is edited for edited user.
string edit_pasc_user
 Name of user.
int edit_pass
 Number of state: .pass command.
int edit_proc
 Number of procedure-editing state.
int edit_proc_addafter_line
 Number of line of current-edited procedure to add after (-1 for none).
int edit_proc_addbefore_line
 Number of line of current-edited procedure to add before (-1 for none).
int edit_proc_replace_line
 Number of line of current-edited procedure to replace (-1 for none).
int edit_rproc
 Number of remote procedure callability editing state.
int edit_user
 Number of state in editting of user.
bool edit_user_from_template
 Is this a new user from template?
int filesystem
 Number of state in managing of the filesystem.
tm filesystem_expiration
 Current edited expiration of object in the filesystem.
struct c_dcc_client::c_fs fs
 Stores data about file from the filesystem.
string fullname
 Full name of user at initiation of connection.
int got_passwd
 Has user enterred password yet?
bool got_user_name
 If we know user name as in "logic.txt", will be set to false on requesting nick name if "dcc_always_want_nick" from "conf.txt" file is non-zero.
string host
 Host of user at initiation of connection.
string hostname
 Contains host of user.
string ident
 Ident of user at initiation of connection.
string in_buff
 Contains buffer for reading from DCC connection.
bool is_ssl_client
 true for SSL server
bool it_is_func
 true for function, false for procedure
string lang
 Contains code of language which to speak with user.
int language
 Context state of .lang command.
my_time_t last_filesys_lookup
 Timestamp of last filesystem lookup for notifies.
my_time_t last_flood
 Timestamp of last flood warning message sent.
my_time_t last_input
 Timestamp of last socket read (non-zero bytes).
string local
 Local IP.
unsigned short local_port
 Local port (or zero if it is outgoing).
int msg
 Number of state in send message.
string msg_content
 Stores content of the message.
my_time_t msg_expiration
 Expiration of the message.
vector< c_flood_historymsg_flood_hist
 History for partline flood detection.
int new_user
 Number of state in adding of new user.
string nick
 Nick of user at initiation of connection.
int num_not_configured_channels
 Number of non-configured channels for new user.
string partyline_channel
 Name of partyline channel that user is on, or an empty string for none.
c_flood partyline_msg_flood
 This user: message flood on partylien channels.
bool plus_proc
 Are we processing a ".+proc" command?
c_private private_
 Current-edited private query messages.
int private_edit
 Context state of .private command.
list< string > proc_commands
 List of commands for current-edited procedure.
string proc_decl
 Declaration of current-edite procedure.
string proc_error
 Syntax error string in current-edited procedure.
vector< string > proc_groups
 List of groups which is current-edited procedure member of.
string proc_name
 Name of current-edited procedure.
vector< c_replicationproc_repl
 List of replications.
string proc_to_delete
 Name and full declaration of procedure to MY_DELETE((after replace of procedure by .+proc to existing procedure)).
string remote
 Remote host/IP.
vector< string > remote_call
 List of bots with remote call privilege.
unsigned short remote_port
 Remote port (or zero if it is incomming).
c_replication repl_add
 Current-edited object's new replication parameters.
c_channel_def repl_chandef
 Current-edited replication properties if we are editing channel definitions.
c_functionrepl_func
 Current-edited replication properties if we are editing a function.
c_private repl_private
 Current-edited replication properties if we are editing private query events.
c_procedure repl_proc
 Current-edited replication properties if we are editing a procedure.
c_user repl_user
 Current-edited replication properties if we are editing an user.
c_user repl_user_template
 Current-edited replication properties if we are editing an user template.
int replication
 Context state of .replication command.
bool replication_partner
 Is this a replication partner?
long long resume_pos
vector< c_rprocrproc
 List of remote bots that can call this current-editing procedure remotely (BOTNET).
bool send
 Is this connection a DCC-SEND-type connection?
c_dcc_send_file send_file
 File that is sending.
bool send_from_filesystem
 Is this connection a DCC-SEND-type connection? (sending file to remote user).
c_socket server_socket
 Socket handle of DCC server connection.
my_time_t session_start
 Timestamp of while when socket was open (for pre-auth timeout).
c_socket socket
 Socket handle of DCC connection.
c_sslssl
 If there is a SSL connection, descriptor is here.
bool ssl_connection
 Is this a SSL connection?
string supposed_to_be
 Contains name of user (as in logic.txt file) - set, before "as_in_logic" is cleaned.
bool telnet
 Is this connection a telnet server?
bool telnet_botnet_called
 Have we called botnet function to process telnet input buffer?
char telnet_buffer [5 *1024]
 Input buffer for telnet connection.
size_t telnet_buffer_pos
 Position in input buffer for telnet connection.
int terminator
 Context state of .terminator command.
string terminator_user
 Name of current-edited user in .terminator command.
c_user u
 User's descriptor.
bool user_access_grant_apply
 Can this user grant accesst to .apply command to other user?
bool user_access_grant_backup
 Can edited/new user grant/deny access to .backup command to other user?
bool user_access_grant_can_send_all_users
 Can current-edited user grant right to send message / file to all users?
bool user_access_grant_can_send_unknown_users
 Can current-edited user grant right to send message / file to unknown?
vector< string > user_access_grant_channel
 List of channels that new user can add/exclude users to/from.
bool user_access_grant_die
 Can edited/new user grant/deny access to .die command to other user?
bool user_access_grant_filesystem
 Can edited/new user grant/deny access to .filesystem command to other user?
vector< string > user_access_grant_groups
 List of groups that new user can add/exclude users to.
bool user_access_grant_partyline
 Has new user access to grant access to partyline to other user?
bool user_access_grant_plusproc
 Can current-edite user (or bot) grant creatoin new procedure to other user?
bool user_access_grant_plususer
 Can current-edite user (or bot) grant creatoin new user to other user?
bool user_access_grant_private
 Has current-edited user right to grant to other user access to private query definitions?
vector< string > user_access_grant_proc_groups
 List of groups of procedures that new user has access to.
bool user_access_grant_rehash
 Can edited/new user grant/deny access to .rehash command to other user?
bool user_access_grant_replication
 Can current-edited user grant access to modify replication parameters?
bool user_access_grant_restart
 Can edited/new user grant/deny access to .restart command to other user?
bool user_access_grant_upgrade
 Can this user grant accesst to .upgrade command to other user?
bool user_access_to_apply
 Has user access to .apply command?
bool user_access_to_backup
 Can edited/new user use .backup command?
bool user_access_to_can_send_all_users
 Can current-edited user send message / file to all users?
bool user_access_to_can_send_unknown_users
 Can current-edited user send message / file to unknown?
vector< string > user_access_to_channel
 List of channels that new user has access to.
bool user_access_to_die
 Can edited/new user use .die command?
bool user_access_to_filesystem
 Can edited/new user use .filesystem command?
vector< string > user_access_to_groups
 List of groups that new user has access to.
bool user_access_to_partyline
 Has new user access to partyline?
bool user_access_to_plusproc
 Can current-edited user (or bot) create new procedure?
bool user_access_to_plususer
 Can current-edited user (or bot) create new user?
bool user_access_to_private
 Has current-edited user access to private query definitions?
vector< string > user_access_to_proc_groups
 List of groups of procedures that new user has access to.
bool user_access_to_rehash
 Can edited/new user use .rehash command?
bool user_access_to_replication
 Can current-edited user modify replication parameters?
bool user_access_to_restart
 Can edited/new user use .restart command?
bool user_access_to_upgrade
 Has user access to .upgrade command?
vector< string > user_access_usage_proc_groups
 List of groups of procedures that new user can assign events to.
c_channel user_channel
 Current-edited channel configuration for new user.
c_dynamic_rule user_channel_allow_dynamic
 Current-edited user's current-edited dynamic rule.
c_channel_def user_channel_def
 Current-edited channel definition.
vector< c_channeluser_channels
 List of channels for new user.
c_dcc_host user_dcc_host
 Current-edited DCC host of new user.
vector< c_dcc_hostuser_dcc_hosts
 List of DCC hosts of new user.
vector< string > user_fullnames
 List of full names of new user.
vector< string > user_hosts
 List of hosts of new user.
vector< string > user_member_of
 List of groups which is new user member of.
map< string, string > user_meta
 Meta data for current-edited user.
string user_name
 Name of new user.
c_flood user_partyline_msg_flood
 Current-edited user: message flood on partylien channels.

Detailed Description

Stores DCC state of user.

Author:
VooDooMan
Version:
1
Date:
2004

Definition at line 144 of file dcc_internal.h.


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

Generated on Sat Aug 7 2010 15:28:27 for VooDoo cIRCle by doxygen 1.7.1

Get VooDoo cIRCle at SourceForge.net. Fast, secure and Free Open Source software downloads