fred-mod-eppd
Classes | Macros | Typedefs | Enumerations | Functions
/build/mod-eppd-2.21.1/epp_common.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  epp_context
 
struct  epp_error
 
struct  qitem
 
struct  qhead
 
struct  epp_status
 
struct  epp_postalInfo
 
struct  epp_discl
 
struct  epp_controlled_privacy_data_mask
 
struct  eppd_server_xml_conf
 
struct  epp_ns
 
struct  epp_dnskey
 
struct  epp_avail
 
struct  epp_zonecredit
 
struct  epp_ext_enum
 
struct  epp_mailingAddr
 
struct  epp_ext_mailingAddr_remove
 
struct  epp_ext_mailingAddr
 
struct  epp_ext_item
 
struct  epp_testResult
 
struct  epps_login
 
struct  epps_check
 
struct  epps_info_contact
 
struct  epps_info_domain
 
struct  epps_info_nsset
 
struct  epps_info_keyset
 
struct  epps_poll_req
 
struct  epps_poll_ack
 
struct  epps_create_contact
 
struct  epps_create_domain
 
struct  epps_create_nsset
 
struct  epps_create_keyset
 
struct  epps_delete
 
struct  epps_renew
 
struct  epps_update_contact
 
struct  epps_update_domain
 
struct  epps_update_nsset
 
struct  epps_update_keyset
 
struct  epps_transfer
 
struct  epps_sendAuthInfo
 
struct  epps_creditInfo
 
struct  epps_test
 
struct  epps_list
 
struct  epps_info
 
struct  epp_command_data
 

Macros

#define q_length(_qhead)   ((_qhead).count)
 
#define q_next(_qhead)   ((_qhead)->cur = ((_qhead)->cur) ? (_qhead)->cur->next : NULL)
 
#define q_content(_qhead)   ((_qhead)->cur->content)
 
#define q_reset(_qhead)   ((_qhead)->cur = (_qhead)->body)
 
#define q_foreach(_qhead)   for ((_qhead)->cur = (_qhead)->body; (_qhead)->cur != NULL; (_qhead)->cur = (_qhead)->cur->next)
 

Typedefs

typedef struct qitem qitem
 
typedef epp_mailingAddr epp_ext_mailingAddr_set
 
typedef epp_mailingAddr epp_ext_mailingAddr_info
 

Enumerations

enum  epp_loglevel {
  EPP_FATAL = 1, EPP_ERROR, EPP_WARNING, EPP_INFO,
  EPP_DEBUG
}
 
enum  epp_DataCollectionPolicyAccess { dcpa_all, dcpa_none }
 
enum  epp_command_type {
  EPP_UNKNOWN_CMD = 0, EPP_DUMMY, EPP_LOGIN, EPP_LOGOUT,
  EPP_CHECK_CONTACT, EPP_CHECK_DOMAIN, EPP_CHECK_NSSET, EPP_CHECK_KEYSET,
  EPP_INFO_CONTACT, EPP_INFO_DOMAIN, EPP_INFO_NSSET, EPP_INFO_KEYSET,
  EPP_LIST_CONTACT, EPP_LIST_DOMAIN, EPP_LIST_NSSET, EPP_LIST_KEYSET,
  EPP_POLL_REQ, EPP_POLL_ACK, EPP_CREATE_CONTACT, EPP_CREATE_DOMAIN,
  EPP_CREATE_NSSET, EPP_CREATE_KEYSET, EPP_DELETE_CONTACT, EPP_DELETE_DOMAIN,
  EPP_DELETE_NSSET, EPP_DELETE_KEYSET, EPP_UPDATE_CONTACT, EPP_UPDATE_DOMAIN,
  EPP_UPDATE_NSSET, EPP_UPDATE_KEYSET, EPP_TRANSFER_CONTACT, EPP_TRANSFER_DOMAIN,
  EPP_TRANSFER_NSSET, EPP_TRANSFER_KEYSET, EPP_RENEW_DOMAIN, EPP_SENDAUTHINFO_CONTACT,
  EPP_SENDAUTHINFO_DOMAIN, EPP_SENDAUTHINFO_NSSET, EPP_SENDAUTHINFO_KEYSET, EPP_TEST_NSSET,
  EPP_CREDITINFO, EPP_INFO_LIST_CONTACTS, EPP_INFO_LIST_DOMAINS, EPP_INFO_LIST_NSSETS,
  EPP_INFO_LIST_KEYSETS, EPP_INFO_DOMAINS_BY_NSSET, EPP_INFO_DOMAINS_BY_KEYSET, EPP_INFO_DOMAINS_BY_CONTACT,
  EPP_INFO_NSSETS_BY_CONTACT, EPP_INFO_NSSETS_BY_NS, EPP_INFO_KEYSETS_BY_CONTACT, EPP_INFO_GET_RESULTS
}
 
enum  epp_ext_type { EPP_EXT_ENUMVAL, EPP_EXT_MAILING_ADDR }
 
enum  epp_object_type {
  EPP_UNKNOWN_OBJ = 0, EPP_CONTACT, EPP_DOMAIN, EPP_NSSET,
  EPP_KEYSET
}
 
enum  epp_lang { LANG_EN = 0, LANG_CS }
 
enum  epp_errorspec {
  errspec_poll_msgID = 0, errspec_contact_handle, errspec_contact_cc, errspec_nsset_handle,
  errspec_nsset_tech, errspec_nsset_dns_name, errspec_nsset_dns_addr, errspec_nsset_dns_name_add,
  errspec_nsset_dns_name_rem, errspec_nsset_tech_add, errspec_nsset_tech_rem, errspec_keyset_handle,
  errspec_keyset_tech, errspec_keyset_dnskey, errspec_keyset_dnskey_add, errspec_keyset_dnskey_rem,
  errspec_keyset_tech_add, errspec_keyset_tech_rem, errspec_registrar_author, errspec_domain_fqdn,
  errspec_domain_registrant, errspec_domain_nsset, errspec_domain_keyset, errspec_domain_period,
  errspec_domain_admin, errspec_domain_tmpcontact, errspec_domain_ext_valDate, errspec_domain_ext_valDate_missing,
  errspec_domain_curExpDate, errspec_domain_admin_add, errspec_domain_admin_rem, errspec_not_valid,
  errspec_poll_msgID_missing, errspec_contact_identtype_missing, errspec_transfer_op
}
 
enum  epp_action_type {
  incorrect_epp_action_type = 0, ClientLogin = 100, ClientLogout = 101, ClientGreeting = 105,
  PollAcknowledgement = 120, PollResponse = 121, ContactCheck = 200, ContactInfo = 201,
  ContactDelete = 202, ContactUpdate = 203, ContactCreate = 204, ContactTransfer = 205,
  NSsetCheck = 400, NSsetInfo = 401, NSsetDelete = 402, NSsetUpdate = 403,
  NSsetCreate = 404, NSsetTransfer = 405, DomainCheck = 500, DomainInfo = 501,
  DomainDelete = 502, DomainUpdate = 503, DomainCreate = 504, DomainTransfer = 505,
  DomainRenew = 506, DomainTrade = 507, KeysetCheck = 600, KeysetInfo = 601,
  KeysetDelete = 602, KeysetUpdate = 603, KeysetCreate = 604, KeysetTransfer = 605,
  UnknownAction = 1000, ListContact = 1002, ListNSset = 1004, ListDomain = 1005,
  ListKeySet = 1006, ClientCredit = 1010, nssetTest = 1012, ContactSendAuthInfo = 1101,
  NSSetSendAuthInfo = 1102, DomainSendAuthInfo = 1103, KeySetSendAuthInfo = 1106, InfoListContacts = 1200,
  InfoListDomains = 1201, InfoListNssets = 1202, InfoListKeysets = 1203, InfoDomainsByNsset = 1204,
  InfoDomainsByKeyset = 1205, InfoDomainsByContact = 1206, InfoNssetsByContact = 1207, InfoNssetsByNs = 1208,
  InfoKeysetsByContact = 1209, InfoGetResults = 1210
}
 
enum  epp_PrivacyPolicy { public_data, private_data, unused_privacy_policy }
 
enum  epp_identType {
  ident_UNKNOWN, ident_OP, ident_PASSPORT, ident_MPSV,
  ident_ICO, ident_BIRTHDAY
}
 
enum  epp_timeunit { TIMEUNIT_MONTH, TIMEUNIT_YEAR }
 
enum  epp_mailingAddrCommand { mailing_addr_info, mailing_addr_set, mailing_addr_remove }
 
enum  epp_pollType {
  pt_transfer_contact, pt_delete_contact, pt_transfer_nsset, pt_delete_nsset,
  pt_transfer_keyset, pt_delete_keyset, pt_techcheck, pt_transfer_domain,
  pt_impexpiration, pt_expiration, pt_impvalidation, pt_validation,
  pt_outzone, pt_delete_domain, pt_lowcredit, pt_request_fee_info,
  pt_update_contact, pt_update_domain, pt_update_nsset, pt_update_keyset
}
 

Functions

int q_add (void *pool, qhead *head, void *data)
 
void epplog (epp_context *epp_ctx, epp_loglevel level, const char *fmt,...)
 
void * epp_malloc (void *pool, unsigned size)
 
void * epp_calloc (void *pool, unsigned size)
 
char * epp_strdup (void *pool, const char *str)
 
char * epp_strcat (void *pool, const char *str1, const char *str2)
 
char * epp_sprintf (void *pool, const char *fmt,...)
 

Detailed Description

The most important structures, function definitions and routine declarations are found in this file. Since they are used by all components of mod_eppd, they are most important and should be read first when trying to understand to the module's code.

Enumeration Type Documentation

◆ epp_action_type

EPP action types for now only a copy of current enum_action

TODO out of date - now in database. here it should contain only EPP actions

◆ epp_command_type

Enumeration of codes of all EPP commands this module is able to handle. The object specific commands are written as EPP_{command}_{object}.

◆ epp_errorspec

In case that central repository finds out that some parameter is bad, there has to be way how to propagate this information back to client. The standard requires that client provided value has to be surrounded with xml tags, of which the central repository is not aware. Therefore exact specification of errors is needed.

◆ epp_ext_type

Enumeration of implemented extensions.

◆ epp_identType

Type of identification number used in contact object.

Enumerator
ident_UNKNOWN 

Unknown value can also mean undefined.

ident_OP 

Number of ID card.

ident_PASSPORT 

Number of passport.

ident_MPSV 

Number assigned by "ministry of work and ...".

ident_ICO 

ICO.

ident_BIRTHDAY 

Date of birth.

◆ epp_lang

enum epp_lang

definition of languages (english is default)

◆ epp_loglevel

Log levels used for logging to eppd log file.

Enumerator
EPP_FATAL 

Error, the module is not in operational state.

EPP_ERROR 

Error caused usually by client, module is operational.

EPP_WARNING 

Errors which are not serious but should be logged.

EPP_INFO 

This is the default log level.

EPP_DEBUG 

Contents of requests and responses are logged.

◆ epp_object_type

Enumeration of EPP objects which this server operates on.

◆ epp_pollType

Type of poll message.

Enumerator
pt_transfer_contact 

Contact was transferred.

pt_delete_contact 

Contact was deleted because not used.

pt_transfer_nsset 

Nsset was transferred.

pt_delete_nsset 

Nsset was deleted because not used.

pt_transfer_keyset 

KeySet was transferred.

pt_delete_keyset 

KeySet was deleted because not used.

pt_techcheck 

Technical check results.

pt_transfer_domain 

Domain was transferred.

pt_impexpiration 

Domain will expire in near future.

pt_expiration 

Domain expired.

pt_impvalidation 

Domain validation will expire soon.

pt_validation 

Domain validation expired.

pt_outzone 

Domain was outaged from zone.

pt_delete_domain 

Domain was deleted.

pt_lowcredit 

Credit of registrator is low.

pt_request_fee_info 

Requests price/count info

pt_update_contact 

Contact changed

pt_update_domain 

Domain changed

pt_update_nsset 

NSSet changed

pt_update_keyset 

KeySet changed

Function Documentation

◆ epplog()

void epplog ( epp_context epp_ctx,
epp_loglevel  level,
const char *  fmt,
  ... 
)

Write a log message to eppd log file.

Parameters
epp_ctxEPP context structure (connection, pool and session id).
levelLog level.
fmtPrintf-style format string.