fred-mod-eppd-2.18.0
epp_common.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2007 CZ.NIC, z.s.p.o.
3  *
4  * This file is part of FRED.
5  *
6  * FRED is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation, version 2 of the License.
9  *
10  * FRED is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with FRED. If not, see <http://www.gnu.org/licenses/>.
17  */
27 #ifndef EPP_COMMON_H
28 #define EPP_COMMON_H
29 
31 typedef enum {
32  EPP_FATAL = 1,
37 } epp_loglevel;
38 
44 typedef struct
45 {
46  void *pool;
47  void *conn;
48  int session;
49 } epp_context;
50 
55 typedef enum {
56  EPP_UNKNOWN_CMD = 0,
57  /*
58  * 'dummy' is not a command from point of view of epp client, but is
59  * command from central repository's point of view
60  */
61  EPP_DUMMY,
62  /* session commands */
63  EPP_LOGIN,
64  EPP_LOGOUT,
65  /* query commands */
66  EPP_CHECK_CONTACT,
67  EPP_CHECK_DOMAIN,
68  EPP_CHECK_NSSET,
69  EPP_CHECK_KEYSET,
70  EPP_INFO_CONTACT,
71  EPP_INFO_DOMAIN,
72  EPP_INFO_NSSET,
73  EPP_INFO_KEYSET,
74  EPP_LIST_CONTACT,
75  EPP_LIST_DOMAIN,
76  EPP_LIST_NSSET,
77  EPP_LIST_KEYSET,
78  EPP_POLL_REQ,
79  EPP_POLL_ACK,
80  /* transform commands */
81  EPP_CREATE_CONTACT,
82  EPP_CREATE_DOMAIN,
83  EPP_CREATE_NSSET,
84  EPP_CREATE_KEYSET,
85  EPP_DELETE_CONTACT,
86  EPP_DELETE_DOMAIN,
87  EPP_DELETE_NSSET,
88  EPP_DELETE_KEYSET,
89  EPP_UPDATE_CONTACT,
90  EPP_UPDATE_DOMAIN,
91  EPP_UPDATE_NSSET,
92  EPP_UPDATE_KEYSET,
93  EPP_TRANSFER_CONTACT,
94  EPP_TRANSFER_DOMAIN,
95  EPP_TRANSFER_NSSET,
96  EPP_TRANSFER_KEYSET,
97  EPP_RENEW_DOMAIN,
98  /* protocol extensions */
99  EPP_SENDAUTHINFO_CONTACT,
100  EPP_SENDAUTHINFO_DOMAIN,
101  EPP_SENDAUTHINFO_NSSET,
102  EPP_SENDAUTHINFO_KEYSET,
103  EPP_TEST_NSSET,
104  EPP_CREDITINFO,
105  /* info functions */
106  EPP_INFO_LIST_CONTACTS,
107  EPP_INFO_LIST_DOMAINS,
108  EPP_INFO_LIST_NSSETS,
109  EPP_INFO_LIST_KEYSETS,
110  EPP_INFO_DOMAINS_BY_NSSET,
111  EPP_INFO_DOMAINS_BY_KEYSET,
112  EPP_INFO_DOMAINS_BY_CONTACT,
113  EPP_INFO_NSSETS_BY_CONTACT,
114  EPP_INFO_NSSETS_BY_NS,
115  EPP_INFO_KEYSETS_BY_CONTACT,
116  EPP_INFO_GET_RESULTS
118 
122 typedef enum { EPP_EXT_ENUMVAL, EPP_EXT_MAILING_ADDR } epp_ext_type;
123 
127 typedef enum {
128  EPP_UNKNOWN_OBJ = 0,
129  EPP_CONTACT,
130  EPP_DOMAIN,
131  EPP_NSSET,
132  EPP_KEYSET
134 
138 typedef enum {
139  LANG_EN = 0,
140  LANG_CS,
141 } epp_lang;
142 
150 typedef enum {
151  errspec_poll_msgID = 0,
152  errspec_contact_handle,
153  errspec_contact_cc,
154  errspec_nsset_handle,
155  errspec_nsset_tech,
156  errspec_nsset_dns_name,
157  errspec_nsset_dns_addr,
158  errspec_nsset_dns_name_add,
159  errspec_nsset_dns_name_rem,
160  errspec_nsset_tech_add,
161  errspec_nsset_tech_rem,
162  errspec_keyset_handle,
163  errspec_keyset_tech,
164  errspec_keyset_dnskey,
165  errspec_keyset_dnskey_add,
166  errspec_keyset_dnskey_rem,
167  errspec_keyset_tech_add,
168  errspec_keyset_tech_rem,
169  errspec_registrar_author,
170  errspec_domain_fqdn,
171  errspec_domain_registrant,
172  errspec_domain_nsset,
173  errspec_domain_keyset,
174  errspec_domain_period,
175  errspec_domain_admin,
176  errspec_domain_tmpcontact,
177  errspec_domain_ext_valDate,
178  errspec_domain_ext_valDate_missing,
179  errspec_domain_curExpDate,
180  errspec_domain_admin_add,
181  errspec_domain_admin_rem,
182  /* input errors */
183  errspec_not_valid,
184  errspec_poll_msgID_missing,
185  errspec_contact_identtype_missing,
186  errspec_transfer_op
187 } epp_errorspec;
188 
196 typedef struct
197 {
199  char *value;
214  char *reason;
216  int position;
217 } epp_error;
218 
225 typedef enum
226 {
227  incorrect_epp_action_type = 0,
228  ClientLogin = 100,
229  ClientLogout = 101,
230  ClientGreeting = 105,
231  PollAcknowledgement = 120,
232  PollResponse = 121,
233  ContactCheck = 200,
234  ContactInfo = 201,
235  ContactDelete = 202,
236  ContactUpdate = 203,
237  ContactCreate = 204,
238  ContactTransfer = 205,
239  NSsetCheck = 400,
240  NSsetInfo = 401,
241  NSsetDelete = 402,
242  NSsetUpdate = 403,
243  NSsetCreate = 404,
244  NSsetTransfer = 405,
245  DomainCheck = 500,
246  DomainInfo = 501,
247  DomainDelete = 502,
248  DomainUpdate = 503,
249  DomainCreate = 504,
250  DomainTransfer = 505,
251  DomainRenew = 506,
252  DomainTrade = 507,
253  KeysetCheck = 600,
254  KeysetInfo = 601,
255  KeysetDelete = 602,
256  KeysetUpdate = 603,
257  KeysetCreate = 604,
258  KeysetTransfer = 605,
259  UnknownAction = 1000,
260  ListContact = 1002,
261  ListNSset = 1004,
262  ListDomain = 1005,
263  ListKeySet = 1006,
264  ClientCredit = 1010,
265  nssetTest = 1012,
266  ContactSendAuthInfo = 1101,
267  NSSetSendAuthInfo = 1102,
268  DomainSendAuthInfo = 1103,
269  KeySetSendAuthInfo = 1106,
270  InfoListContacts = 1200,
271  InfoListDomains = 1201,
272  InfoListNssets = 1202,
273  InfoListKeysets = 1203,
274  InfoDomainsByNsset = 1204,
275  InfoDomainsByKeyset = 1205,
276  InfoDomainsByContact = 1206,
277  InfoNssetsByContact = 1207,
278  InfoNssetsByNs = 1208,
279  InfoKeysetsByContact = 1209,
280  InfoGetResults = 1210
282 
291 typedef struct qitem
292 {
293  struct qitem *next;
294  void *content;
295 } qitem;
296 
302 typedef struct
303 {
304  int count;
307 } qhead;
308 
310 #define q_length(_qhead) ((_qhead).count)
311 
312 #define q_next(_qhead) ((_qhead)->cur = ((_qhead)->cur) ? (_qhead)->cur->next : NULL)
313 
314 #define q_content(_qhead) ((_qhead)->cur->content)
315 
316 #define q_reset(_qhead) ((_qhead)->cur = (_qhead)->body)
317 
321 #define q_foreach(_qhead) \
322  for ((_qhead)->cur = (_qhead)->body; (_qhead)->cur != NULL; (_qhead)->cur = (_qhead)->cur->next)
323 
331 int q_add(void *pool, qhead *head, void *data);
332 
336 /* ********************************************************************* */
337 
338 
342 typedef struct
343 {
344  char *value;
345  char *text;
346 } epp_status;
347 
351 typedef struct
352 {
353  char *name;
354  char *org;
356  char *city;
357  char *sp;
358  char *pc;
359  char *cc;
361 
370 typedef struct
371 {
380  char flag;
381  unsigned char name;
382  unsigned char org;
383  unsigned char addr;
384  unsigned char voice;
385  unsigned char fax;
386  unsigned char email;
387  unsigned char vat;
388  unsigned char ident;
390  unsigned char notifyEmail;
391 } epp_discl;
392 
396 typedef struct
397 {
398  char *name;
400 } epp_ns;
401 
403 typedef struct
404 {
405  unsigned short flags;
406  unsigned char protocol;
407  unsigned char alg;
408  char *public_key;
409 } epp_dnskey;
410 
412 typedef enum {
419 } epp_identType;
420 
421 typedef enum { TIMEUNIT_MONTH, TIMEUNIT_YEAR } epp_timeunit;
422 
424 typedef struct
425 {
426  int avail;
427  char *reason;
428 } epp_avail;
429 
431 typedef struct
432 {
433  char *zone;
434  char *credit;
436 
437 typedef struct
438 {
439  char *ext_enumval;
440  int publish;
442 } epp_ext_enum;
443 
444 typedef struct
445 {
446  char *Street1;
447  char *Street2;
448  char *Street3;
449  char *City;
451  char *PostalCode;
452  char *CountryCode;
454 
455 typedef enum { mailing_addr_info, mailing_addr_set, mailing_addr_remove } epp_mailingAddrCommand;
456 
459 typedef struct
460 {
462 
463 typedef struct
464 {
465  epp_mailingAddrCommand command;
466  union
467  {
471  } data;
473 
474 
475 typedef struct
476 {
478  union
479  {
482  } ext;
483 } epp_ext_item;
484 
486 typedef enum {
507 } epp_pollType;
508 
510 typedef struct
511 {
512  char *testname;
513  int status;
514  char *note;
516 
517 /* ********************************************************************* */
518 
519 
521 typedef struct
522 {
523  char *clID;
524  char *pw;
525  char *newPW;
528  unsigned lang;
529 } epps_login;
530 
532 typedef struct
533 {
536 } epps_check;
537 
539 typedef struct
540 {
541  char *id;
542  char *handle;
543  char *roid;
546  char *voice;
547  char *fax;
548  char *email;
549  char *clID;
550  char *crID;
551  char *crDate;
552  char *upID;
553  char *upDate;
554  char *trDate;
555  char *authInfo;
557  char *vat;
558  char *ident;
560  char *notify_email;
563 
565 typedef struct
566 {
567  char *name;
568  char *handle;
569  char *roid;
571  char *registrant;
574  char *nsset;
575  char *keyset;
576  char *clID;
577  char *crID;
578  char *crDate;
579  char *exDate;
580  char *upID;
581  char *upDate;
582  char *trDate;
583  char *authInfo;
586 
588 typedef struct
589 {
590  char *id;
591  char *handle;
592  char *roid;
594  char *clID;
595  char *crID;
596  char *crDate;
597  char *upID;
598  char *upDate;
599  char *trDate;
600  char *authInfo;
603  int level;
605 
607 typedef struct
608 {
609  char *id;
610  char *handle;
611  char *roid;
613  char *clID;
614  char *crID;
615  char *crDate;
616  char *upID;
617  char *upDate;
618  char *trDate;
619  char *authInfo;
623 
625 typedef struct
626 {
627  unsigned long long count;
628  char *msgid;
629  char *qdate;
631  union
632  {
633  char *handle;
634  struct
635  {
636  char *handle;
637  char *date;
638  char *clID;
639  } hdt;
640  struct
641  {
642  char *handle;
643  char *date;
644  } hd;
645  struct
646  {
647  char *handle;
648  qhead fqdns;
649  qhead tests;
650  } tc;
651  struct
652  {
653  char *zone;
654  char *limit;
655  char *credit;
656  } lc;
657  struct
658  {
659  char *period_from;
660  char *period_to;
661  unsigned long long total_free_count;
662  unsigned long long used_count;
663  char *price;
664  } rfi;
665  struct
666  {
667  char *optrid;
668  unsigned long long pollid;
669  epps_info_contact old_data;
670  epps_info_contact new_data;
671  } upc;
672  struct
673  {
674  char *optrid;
675  unsigned long long pollid;
676  epps_info_domain old_data;
677  epps_info_domain new_data;
678  } upd;
679  struct
680  {
681  char *optrid;
682  unsigned long long pollid;
683  epps_info_nsset old_data;
684  epps_info_nsset new_data;
685  } upn;
686  struct
687  {
688  char *optrid;
689  unsigned long long pollid;
690  epps_info_keyset old_data;
691  epps_info_keyset new_data;
692  } upk;
693  } msg;
694 } epps_poll_req;
695 
697 typedef struct
698 {
699  char *msgid;
700  unsigned long long count;
701  char *newmsgid;
702 } epps_poll_ack;
703 
705 typedef struct
706 {
707  char *id;
709  char *voice;
710  char *fax;
711  char *email;
712  char *authInfo;
714  char *vat;
715  char *ident;
717  char *notify_email;
718  char *crDate;
721 
723 typedef struct
724 {
725  char *name;
726  char *registrant;
728  char *nsset;
729  char *keyset;
730  int period;
731  epp_timeunit unit;
732  char *authInfo;
734  char *crDate;
735  char *exDate;
737 
739 typedef struct
740 {
741  char *id;
742  char *authInfo;
745  char *crDate;
746  int level;
748 
750 typedef struct
751 {
752  char *id;
753  char *authInfo;
756  char *crDate;
758 
760 typedef struct
761 {
762  char *id;
763 } epps_delete;
764 
766 typedef struct
767 {
768  char *name;
769  char *curExDate;
770  int period;
771  epp_timeunit unit;
773  char *exDate;
774 } epps_renew;
775 
777 typedef struct
778 {
779  char *id;
781  char *voice;
782  char *fax;
783  char *email;
784  char *authInfo;
786  char *vat;
787  char *ident;
789  char *notify_email;
792 
794 typedef struct
795 {
796  char *name;
797  char *registrant;
801  char *nsset;
802  char *keyset;
803  char *authInfo;
806 
808 typedef struct
809 {
810  char *id;
815  char *authInfo;
816  int level;
818 
820 typedef struct
821 {
822  char *id;
827  char *authInfo;
829 
831 typedef struct
832 {
833  char *id;
834  char *authInfo;
835 } epps_transfer;
836 
838 typedef struct
839 {
840  char *id;
842 
844 typedef struct
845 {
848 
850 typedef struct
851 {
852  char *id;
854  int level;
855 } epps_test;
856 
858 typedef struct
859 {
861 } epps_list;
862 
868 typedef struct
869 {
870  char *handle;
871  unsigned int count;
872 } epps_info;
873 
883 typedef struct
884 {
885  char *clTRID;
886  char *svTRID;
887  int rc;
888  char *msg;
889  char *xml_in;
891  /* parsed_doc and xpath_ctx are needed for error reporting. */
892  void *parsed_doc;
893  void *xpath_ctx;
895  short noresdata;
898 
908  void *data;
910 
911 
912 /* ********************************************************************* */
913 
921 void epplog(epp_context *epp_ctx, epp_loglevel level, const char *fmt, ...);
922 
939 void *epp_malloc(void *pool, unsigned size);
940 
948 void *epp_calloc(void *pool, unsigned size);
949 
958 char *epp_strdup(void *pool, const char *str);
959 
972 char *epp_strcat(void *pool, const char *str1, const char *str2);
973 
981 char *epp_sprintf(void *pool, const char *fmt, ...);
982 
987 #endif /* EPP_COMMON_H */
qhead tech
List of technical contacts for keyset.
Definition: epp_common.h:755
char * id
Id of wanted contact (input).
Definition: epp_common.h:541
unsigned char alg
algorithm type
Definition: epp_common.h:407
Queue item type.
Definition: epp_common.h:291
char * credit
Credit.
Definition: epp_common.h:434
Definition: epp_common.h:463
epp_identType identtype
Type of unique ident.
Definition: epp_common.h:788
qhead admin
Admin contact for domain.
Definition: epp_common.h:727
char * Street2
street - line #2
Definition: epp_common.h:447
char * xml_in
XML as it is received from client.
Definition: epp_common.h:889
char flag
Value 1 means following items are exception to server policy, which is assumed to be private (hide al...
Definition: epp_common.h:380
char * crDate
Creation date of nsset.
Definition: epp_common.h:745
char * authInfo
Authorization information.
Definition: epp_common.h:619
ICO.
Definition: epp_common.h:417
qhead extensions
List of extensions.
Definition: epp_common.h:561
char * authInfo
Authorization information.
Definition: epp_common.h:732
The struct represents one epp error in ExtValue element.
Definition: epp_common.h:196
char * clID
Owner&#39;s ID.
Definition: epp_common.h:594
unsigned int count
Count of results.
Definition: epp_common.h:871
char * zone
True if object is available, false otherwise.
Definition: epp_common.h:433
Contact changed.
Definition: epp_common.h:503
Technical check results.
Definition: epp_common.h:493
char * msg
Text message coresponding to return code.
Definition: epp_common.h:888
char * city
City.
Definition: epp_common.h:356
Number of passport.
Definition: epp_common.h:415
char * authInfo
Authorization information.
Definition: epp_common.h:784
char * reason
If object is not available, here is the reason.
Definition: epp_common.h:427
qhead extensions
List of domain extensions.
Definition: epp_common.h:584
int period
Renew period.
Definition: epp_common.h:770
char * exDate
Expiration date of domain.
Definition: epp_common.h:735
epp_ext_mailingAddr ext_mailing_addr
Extensions for mailing contact addresses.
Definition: epp_common.h:481
char * id
Id of wanted keyset (input).
Definition: epp_common.h:752
Domain changed.
Definition: epp_common.h:504
Delete parameters.
Definition: epp_common.h:760
qitem * cur
Currently selected item.
Definition: epp_common.h:306
qhead rem_tech
Technical contacts to be removed.
Definition: epp_common.h:824
qhead extensions
List of domain extensions.
Definition: epp_common.h:772
Errors which are not serious but should be logged.
Definition: epp_common.h:34
qhead status
Keyset&#39;s status.
Definition: epp_common.h:612
Definition: epp_common.h:475
char * upID
ID of last updater.
Definition: epp_common.h:552
Info nsset parameters.
Definition: epp_common.h:588
char * nsset
Nsset of domain.
Definition: epp_common.h:728
qhead tech
List of technical contacts for nsset.
Definition: epp_common.h:602
char * roid
ROID of object.
Definition: epp_common.h:611
Error, the module is not in operational state.
Definition: epp_common.h:32
char * curExDate
Current expiration date.
Definition: epp_common.h:769
char * epp_strdup(void *pool, const char *str)
Duplicate string from argument, the memory will be allocated from memory pool.
Definition: mod_eppd.c:402
int publish
Flag determining if this domain can be published in the ENUM dictionary.
Definition: epp_common.h:440
char * svTRID
server&#39;s TRID
Definition: epp_common.h:886
qhead zonecredits
List of credits for individual zones.
Definition: epp_common.h:846
qhead addr
List of ip addresses.
Definition: epp_common.h:399
Domain expired.
Definition: epp_common.h:496
unsigned char org
Contact&#39;s organization is exceptional.
Definition: epp_common.h:382
qhead handles
List of handles.
Definition: epp_common.h:860
char * id
Id of wanted nsset (input).
Definition: epp_common.h:741
char * registrant
Registrant of domain.
Definition: epp_common.h:571
This is the default log level.
Definition: epp_common.h:35
char * name
FQDN of wanted domain (input).
Definition: epp_common.h:796
char * nsset
Nsset of domain.
Definition: epp_common.h:801
Credit of registrator is low.
Definition: epp_common.h:501
void * conn
Connection handler.
Definition: epp_common.h:47
unsigned long long count
Count of waiting messages.
Definition: epp_common.h:627
Poll acknoledge parameters.
Definition: epp_common.h:697
qhead tech
List of technical contacts for keyset.
Definition: epp_common.h:621
char * upDate
Last updated.
Definition: epp_common.h:553
unsigned long long count
Count of waiting messages.
Definition: epp_common.h:700
char * upDate
Last updated.
Definition: epp_common.h:598
epp_postalInfo pi
Postal info.
Definition: epp_common.h:708
char * value
Status name.
Definition: epp_common.h:344
epp_postalInfo pi
Postal info.
Definition: epp_common.h:545
Structure for holding status&#39; names and values.
Definition: epp_common.h:342
char * vat
VAT tax ID.
Definition: epp_common.h:714
char * ext_enumval
Domain validation.
Definition: epp_common.h:439
epp_ext_type
Enumeration of implemented extensions.
Definition: epp_common.h:122
char * fax
Fax number.
Definition: epp_common.h:782
char * name
Name.
Definition: epp_common.h:353
qhead extensions
List of extensions.
Definition: epp_common.h:790
int position
Position of faulty element if it is part of list.
Definition: epp_common.h:216
epp_discl discl
Disclose information section.
Definition: epp_common.h:713
This structure is central to the concept of the whole module.
Definition: epp_common.h:883
qhead rem_admin
Admin contacts to be removed.
Definition: epp_common.h:799
char * notify_email
Notification email.
Definition: epp_common.h:560
char * voice
Telephone number.
Definition: epp_common.h:546
Domain was deleted.
Definition: epp_common.h:500
char * exDate
Expiration date.
Definition: epp_common.h:579
char * crDate
Creation date.
Definition: epp_common.h:615
Structure holding answer to EPP check command.
Definition: epp_common.h:424
Error caused usually by client, module is operational.
Definition: epp_common.h:33
unsigned char email
Contact&#39;s email address is exceptional.
Definition: epp_common.h:386
char * trDate
Last transfered.
Definition: epp_common.h:599
Domain validation will expire soon.
Definition: epp_common.h:497
Info keyset parameters.
Definition: epp_common.h:607
char * upDate
Last updated.
Definition: epp_common.h:617
char * authInfo
Authorization information.
Definition: epp_common.h:834
epp_action_type
EPP action types for now only a copy of current enum_action.
Definition: epp_common.h:225
qhead exturi
currently not used
Definition: epp_common.h:527
epp_timeunit unit
Registration period&#39;s unit.
Definition: epp_common.h:731
Structure holding answer to EPP creditInfo command.
Definition: epp_common.h:431
char * authInfo
Authorization information.
Definition: epp_common.h:742
Requests price/count info.
Definition: epp_common.h:502
Create nsset parameters.
Definition: epp_common.h:739
char * handle
Id of wanted nsset (output).
Definition: epp_common.h:591
char * Street3
street - line #3
Definition: epp_common.h:448
Contact was deleted because not used.
Definition: epp_common.h:488
void * xpath_ctx
XPath context.
Definition: epp_common.h:893
qhead keys
List of DNS Key records.
Definition: epp_common.h:620
Domain validation expired.
Definition: epp_common.h:498
Date of birth.
Definition: epp_common.h:418
unsigned short flags
key properties.
Definition: epp_common.h:405
char * upDate
Last updated.
Definition: epp_common.h:581
char * registrant
Registrant of domain.
Definition: epp_common.h:726
epp_identType
Type of identification number used in contact object.
Definition: epp_common.h:412
char * id
Handle of object.
Definition: epp_common.h:840
char * crDate
Creation date.
Definition: epp_common.h:596
qhead extensions
List of extensions.
Definition: epp_common.h:719
char * reason
Human readable reason of error.
Definition: epp_common.h:214
qhead tech
List of technical contacts for nsset.
Definition: epp_common.h:744
char * crDate
Creation date of contact.
Definition: epp_common.h:718
char * id
Id of transfered object.
Definition: epp_common.h:833
char * roid
ROID of object.
Definition: epp_common.h:543
char * id
Id of wanted nsset (input).
Definition: epp_common.h:590
char * PostalCode
postal code
Definition: epp_common.h:451
char * authInfo
Authorization information.
Definition: epp_common.h:583
char * clTRID
client&#39;s TRID
Definition: epp_common.h:885
char * ident
Contact&#39;s unique ident.
Definition: epp_common.h:787
char * msgid
ID of acknoledged message.
Definition: epp_common.h:699
char * trDate
Last transfered.
Definition: epp_common.h:554
Create contact parameters.
Definition: epp_common.h:705
char * epp_strcat(void *pool, const char *str1, const char *str2)
Concatenate two strings in arguments, the memory will be allocated from memory pool.
Definition: mod_eppd.c:420
unsigned lang
Language.
Definition: epp_common.h:528
char * handle
Search key.
Definition: epp_common.h:870
char * keyset
Keyset for domain.
Definition: epp_common.h:575
Nsset was transferred.
Definition: epp_common.h:489
int level
Report level.
Definition: epp_common.h:603
Domain was transferred.
Definition: epp_common.h:494
char * voice
Telephone number.
Definition: epp_common.h:709
qhead errors
List of validation errors or errors from central repository.
Definition: epp_common.h:897
char * trDate
Last transfered.
Definition: epp_common.h:582
Test parameters.
Definition: epp_common.h:850
Update contact parameters.
Definition: epp_common.h:777
KeySet was transferred.
Definition: epp_common.h:491
char * id
Id of wanted contact (input).
Definition: epp_common.h:707
KeySet was deleted because not used.
Definition: epp_common.h:492
int level
Report level.
Definition: epp_common.h:746
NSSet changed.
Definition: epp_common.h:505
Number of ID card.
Definition: epp_common.h:414
epp_ext_enum ext_enum
Extensions for ENUM.
Definition: epp_common.h:480
qhead extensions
List of domain extensions.
Definition: epp_common.h:733
Definition: epp_common.h:459
char * id
Id of wanted keyset (input).
Definition: epp_common.h:822
char * cc
Country code.
Definition: epp_common.h:359
char * qdate
Date of message submission.
Definition: epp_common.h:629
KeySet changed.
Definition: epp_common.h:506
char * id
Id of wanted keyset (input).
Definition: epp_common.h:609
qhead ns
List of nameservers.
Definition: epp_common.h:743
epp_identType identtype
Type of unique ident.
Definition: epp_common.h:559
char * handle
Id of wanted keyset (output).
Definition: epp_common.h:610
char * id
ID of tested nsset.
Definition: epp_common.h:852
char * notify_email
Notification email.
Definition: epp_common.h:789
void * epp_calloc(void *pool, unsigned size)
Allocate memory from memory pool and prezero it.
Definition: mod_eppd.c:384
Create domain parameters.
Definition: epp_common.h:723
unsigned char protocol
= 3
Definition: epp_common.h:406
DNS Key record - http://rfc-ref.org/RFC-TEXTS/4034/chapter2.html.
Definition: epp_common.h:403
char * pw
Password.
Definition: epp_common.h:524
Contact was transferred.
Definition: epp_common.h:487
Parameters of obsolete command &#39;list&#39; and getResults command.
Definition: epp_common.h:858
Login parameters.
Definition: epp_common.h:521
void * pool
Pool for allocations.
Definition: epp_common.h:46
char * id
ID of object to be deleted.
Definition: epp_common.h:762
SendAuthInfo parameters.
Definition: epp_common.h:838
char * roid
ROID of object.
Definition: epp_common.h:569
char * epp_sprintf(void *pool, const char *fmt,...)
Print formatted string.
Definition: mod_eppd.c:437
char * clID
Owner&#39;s ID.
Definition: epp_common.h:613
epp_pollType
Type of poll message.
Definition: epp_common.h:486
Structure gathers postal info about contact.
Definition: epp_common.h:351
Update keyset parameters.
Definition: epp_common.h:820
epp_timeunit unit
Registration period&#39;s unit.
Definition: epp_common.h:771
char * exDate
New expiration date.
Definition: epp_common.h:773
qhead ids
IDs of checked objects.
Definition: epp_common.h:534
qhead add_ns
Nameservers to be added.
Definition: epp_common.h:813
char * authInfo
Authorization information.
Definition: epp_common.h:803
char * City
city
Definition: epp_common.h:449
Check contact, domain and nsset parameters.
Definition: epp_common.h:532
qhead names
Fqdns of domains to be tested with nsset.
Definition: epp_common.h:853
Info contact parameters.
Definition: epp_common.h:539
epp_ext_type extType
Identifier of extension.
Definition: epp_common.h:477
char * org
Organization.
Definition: epp_common.h:354
EPP context is a group of variables used often together.
Definition: epp_common.h:44
char * crDate
Creation date of domain.
Definition: epp_common.h:734
char * StateOrProvince
state or province
Definition: epp_common.h:450
unsigned char vat
Contact&#39;s VAT is exceptional.
Definition: epp_common.h:387
epp_discl discl
Disclose information section.
Definition: epp_common.h:785
Update domain parameters.
Definition: epp_common.h:794
char * vat
VAT tax ID.
Definition: epp_common.h:786
char * email
Email address.
Definition: epp_common.h:783
void * parsed_doc
Parsed XML document tree.
Definition: epp_common.h:892
char * Street1
street - line #1
Definition: epp_common.h:446
epp_lang
definition of languages (english is default)
Definition: epp_common.h:138
char * crID
ID of creator.
Definition: epp_common.h:577
char * fax
Fax number.
Definition: epp_common.h:710
Disclose information of contact.
Definition: epp_common.h:370
epp_errorspec spec
Specification of surrounding XML tags.
Definition: epp_common.h:205
int level
Report level.
Definition: epp_common.h:816
unsigned char voice
Contact&#39;s voice (tel.
Definition: epp_common.h:384
qhead rem_tmpcontact
Temporary contact used for migration.
Definition: epp_common.h:800
epp_identType identtype
Type of unique ident.
Definition: epp_common.h:716
qhead streets
3x street.
Definition: epp_common.h:355
char * authInfo
Authorization information.
Definition: epp_common.h:555
epp_errorspec
In case that central repository finds out that some parameter is bad, there has to be way how to prop...
Definition: epp_common.h:150
unsigned char ident
Contact&#39;s ident is exceptional.
Definition: epp_common.h:388
char * email
Email address.
Definition: epp_common.h:711
qhead add_dnskey
DNSKEYs to be added.
Definition: epp_common.h:825
char * handle
FQDN of wanted domain (output).
Definition: epp_common.h:568
char * CountryCode
country code - 2 char ISO country code
Definition: epp_common.h:452
qhead rem_ns
Nameservers to be removed.
Definition: epp_common.h:814
char * crDate
Creation date.
Definition: epp_common.h:551
Number assigned by "ministry of work and ...".
Definition: epp_common.h:416
char * registrant
Registrant of domain.
Definition: epp_common.h:797
char * voice
Telephone number.
Definition: epp_common.h:781
char * clID
Owner&#39;s ID.
Definition: epp_common.h:549
qhead add_tech
Technical contacts to be added.
Definition: epp_common.h:811
unsigned char notifyEmail
Contact&#39;s notification emai is exceptional.
Definition: epp_common.h:390
Renew domain parameters.
Definition: epp_common.h:766
short noresdata
True if there should be no resdata section or msgQ section.
Definition: epp_common.h:895
char * authInfo
Authorization information.
Definition: epp_common.h:712
char * newmsgid
ID of first message in a queue.
Definition: epp_common.h:701
char * sp
State or province.
Definition: epp_common.h:357
epp_command_type
Enumeration of codes of all EPP commands this module is able to handle.
Definition: epp_common.h:55
void * content
Pointer to content of item.
Definition: epp_common.h:294
char * trDate
Last transfered.
Definition: epp_common.h:618
char * clID
Client ID.
Definition: epp_common.h:523
char * pc
Postal code.
Definition: epp_common.h:358
Nsset was deleted because not used.
Definition: epp_common.h:490
char * crDate
Creation date of keyset.
Definition: epp_common.h:756
char * crID
ID of creator.
Definition: epp_common.h:614
Domain was outaged from zone.
Definition: epp_common.h:499
unsigned char fax
Contact&#39;s fax number is exceptional.
Definition: epp_common.h:385
qhead tmpcontact
Temporary contact used for migration.
Definition: epp_common.h:572
char * authInfo
Authorization information.
Definition: epp_common.h:753
char * name
FQDN of wanted domain (input).
Definition: epp_common.h:567
char * crID
ID of creator.
Definition: epp_common.h:550
void epplog(epp_context *epp_ctx, epp_loglevel level, const char *fmt,...)
Write a log message to eppd log file.
Definition: mod_eppd.c:473
Definition: epp_common.h:437
struct qitem qitem
Queue item type.
int level
Level of tests (-1 if not overriden).
Definition: epp_common.h:854
char * upID
ID of last updater.
Definition: epp_common.h:597
qhead admin
Admin contact for domain.
Definition: epp_common.h:573
qhead ns
List of nameservers.
Definition: epp_common.h:601
Poll request parameters.
Definition: epp_common.h:625
void * epp_malloc(void *pool, unsigned size)
Allocate memory from memory pool.
qhead rem_tech
Technical contacts to be removed.
Definition: epp_common.h:812
char * id
Id of wanted nsset (input).
Definition: epp_common.h:810
char * email
Email address.
Definition: epp_common.h:548
char * nsset
Nsset of domain.
Definition: epp_common.h:574
epp_command_type type
Identification of epp command.
Definition: epp_common.h:903
Nameserver has a name and possibly more than one ip address.
Definition: epp_common.h:396
char * vat
VAT tax ID.
Definition: epp_common.h:557
char * name
fqdn of nameserver.
Definition: epp_common.h:398
qhead status
Nsset&#39;s status.
Definition: epp_common.h:593
char * newPW
New password.
Definition: epp_common.h:525
qhead avails
Booleans + reasons.
Definition: epp_common.h:535
All Info functions, which accept single key on input and count on output (domainsByNsset, domainsByContact, nssetsByContact, nssetsByNs).
Definition: epp_common.h:868
qhead rem_dnskey
DNSKEYs to be removed.
Definition: epp_common.h:826
qhead keys
List of DNS Key records.
Definition: epp_common.h:754
int avail
True if object is available, false otherwise.
Definition: epp_common.h:426
int rc
EPP return code defined in standard.
Definition: epp_common.h:887
char * text
Status value.
Definition: epp_common.h:345
int q_add(void *pool, qhead *head, void *data)
Add new item to a queue (the item will be enqueued at the end of queue).
Definition: epp_common.c:30
unsigned char name
Contact&#39;s name is exceptional.
Definition: epp_common.h:381
qhead status
Domain&#39;s status.
Definition: epp_common.h:570
Contents of requests and responses are logged.
Definition: epp_common.h:36
Domain will expire in near future.
Definition: epp_common.h:495
Info domain parameters.
Definition: epp_common.h:565
Create keyset parameters.
Definition: epp_common.h:750
char * value
Client provided input which caused the error.
Definition: epp_common.h:199
char * authInfo
Authorization information.
Definition: epp_common.h:815
epp_object_type
Enumeration of EPP objects which this server operates on.
Definition: epp_common.h:127
char * name
FQDN of wanted domain (input).
Definition: epp_common.h:725
char * clID
Owner&#39;s ID.
Definition: epp_common.h:576
void * data
Command data (Input + output parameters for all possible epp commands).
Definition: epp_common.h:908
epp_postalInfo * pi
Postal info.
Definition: epp_common.h:780
char * msgid
ID of next message in a queue.
Definition: epp_common.h:628
char * handle
Id of wanted contact (output).
Definition: epp_common.h:542
char * name
Name of renewed domain.
Definition: epp_common.h:768
qhead add_admin
Admin contacts to be added.
Definition: epp_common.h:798
Queue structure used on countless places throughout the program.
Definition: epp_common.h:302
char * keyset
Keyset for domain.
Definition: epp_common.h:729
char * id
Id of wanted contact (input).
Definition: epp_common.h:779
Definition: epp_common.h:444
Update nsset parameters.
Definition: epp_common.h:808
char * upID
ID of last updater.
Definition: epp_common.h:616
char * notify_email
Notification email.
Definition: epp_common.h:717
char * ident
Contact&#39;s unique ident.
Definition: epp_common.h:558
char * crDate
Creation date.
Definition: epp_common.h:578
epp_loglevel
Log levels used for logging to eppd log file.
Definition: epp_common.h:31
qhead add_tech
Technical contacts to be added.
Definition: epp_common.h:823
qitem * body
Items in a queue.
Definition: epp_common.h:305
CreditInfo parameters.
Definition: epp_common.h:844
char * upID
ID of last updater.
Definition: epp_common.h:580
unsigned char addr
Contact&#39;s address is exceptional.
Definition: epp_common.h:383
char * authInfo
Authorization information.
Definition: epp_common.h:827
int count
Optimization for length() function.
Definition: epp_common.h:304
char * roid
ROID of object.
Definition: epp_common.h:592
struct qitem * next
Link to next item in a queue.
Definition: epp_common.h:293
int period
Registration period in months.
Definition: epp_common.h:730
qhead objuri
currently not used
Definition: epp_common.h:526
qhead status
Contact&#39;s status.
Definition: epp_common.h:544
char * authInfo
Authorization information.
Definition: epp_common.h:600
char * public_key
base64 encoded public key
Definition: epp_common.h:408
qhead extensions
List of domain extensions.
Definition: epp_common.h:804
char * crID
ID of creator.
Definition: epp_common.h:595
char * keyset
Keyset of domain.
Definition: epp_common.h:802
Unknown value can also mean undefined.
Definition: epp_common.h:413
Structure containing result of one technical test.
Definition: epp_common.h:510
Transfer parameters.
Definition: epp_common.h:831
char * ident
Contact&#39;s unique ident.
Definition: epp_common.h:715
char * fax
Fax number.
Definition: epp_common.h:547
epp_discl discl
Disclose information section.
Definition: epp_common.h:556
epp_pollType type
Type of poll message.
Definition: epp_common.h:630