fred-mod-eppd-2.19.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 
51 typedef enum
52 {
53  dcpa_all,
54  dcpa_none,
55 } epp_DataCollectionPolicyAccess;
56 
61 typedef enum {
62  EPP_UNKNOWN_CMD = 0,
63  /*
64  * 'dummy' is not a command from point of view of epp client, but is
65  * command from central repository's point of view
66  */
67  EPP_DUMMY,
68  /* session commands */
69  EPP_LOGIN,
70  EPP_LOGOUT,
71  /* query commands */
72  EPP_CHECK_CONTACT,
73  EPP_CHECK_DOMAIN,
74  EPP_CHECK_NSSET,
75  EPP_CHECK_KEYSET,
76  EPP_INFO_CONTACT,
77  EPP_INFO_DOMAIN,
78  EPP_INFO_NSSET,
79  EPP_INFO_KEYSET,
80  EPP_LIST_CONTACT,
81  EPP_LIST_DOMAIN,
82  EPP_LIST_NSSET,
83  EPP_LIST_KEYSET,
84  EPP_POLL_REQ,
85  EPP_POLL_ACK,
86  /* transform commands */
87  EPP_CREATE_CONTACT,
88  EPP_CREATE_DOMAIN,
89  EPP_CREATE_NSSET,
90  EPP_CREATE_KEYSET,
91  EPP_DELETE_CONTACT,
92  EPP_DELETE_DOMAIN,
93  EPP_DELETE_NSSET,
94  EPP_DELETE_KEYSET,
95  EPP_UPDATE_CONTACT,
96  EPP_UPDATE_DOMAIN,
97  EPP_UPDATE_NSSET,
98  EPP_UPDATE_KEYSET,
99  EPP_TRANSFER_CONTACT,
100  EPP_TRANSFER_DOMAIN,
101  EPP_TRANSFER_NSSET,
102  EPP_TRANSFER_KEYSET,
103  EPP_RENEW_DOMAIN,
104  /* protocol extensions */
105  EPP_SENDAUTHINFO_CONTACT,
106  EPP_SENDAUTHINFO_DOMAIN,
107  EPP_SENDAUTHINFO_NSSET,
108  EPP_SENDAUTHINFO_KEYSET,
109  EPP_TEST_NSSET,
110  EPP_CREDITINFO,
111  /* info functions */
112  EPP_INFO_LIST_CONTACTS,
113  EPP_INFO_LIST_DOMAINS,
114  EPP_INFO_LIST_NSSETS,
115  EPP_INFO_LIST_KEYSETS,
116  EPP_INFO_DOMAINS_BY_NSSET,
117  EPP_INFO_DOMAINS_BY_KEYSET,
118  EPP_INFO_DOMAINS_BY_CONTACT,
119  EPP_INFO_NSSETS_BY_CONTACT,
120  EPP_INFO_NSSETS_BY_NS,
121  EPP_INFO_KEYSETS_BY_CONTACT,
122  EPP_INFO_GET_RESULTS
124 
128 typedef enum { EPP_EXT_ENUMVAL, EPP_EXT_MAILING_ADDR } epp_ext_type;
129 
133 typedef enum {
134  EPP_UNKNOWN_OBJ = 0,
135  EPP_CONTACT,
136  EPP_DOMAIN,
137  EPP_NSSET,
138  EPP_KEYSET
140 
144 typedef enum {
145  LANG_EN = 0,
146  LANG_CS,
147 } epp_lang;
148 
156 typedef enum {
157  errspec_poll_msgID = 0,
158  errspec_contact_handle,
159  errspec_contact_cc,
160  errspec_nsset_handle,
161  errspec_nsset_tech,
162  errspec_nsset_dns_name,
163  errspec_nsset_dns_addr,
164  errspec_nsset_dns_name_add,
165  errspec_nsset_dns_name_rem,
166  errspec_nsset_tech_add,
167  errspec_nsset_tech_rem,
168  errspec_keyset_handle,
169  errspec_keyset_tech,
170  errspec_keyset_dnskey,
171  errspec_keyset_dnskey_add,
172  errspec_keyset_dnskey_rem,
173  errspec_keyset_tech_add,
174  errspec_keyset_tech_rem,
175  errspec_registrar_author,
176  errspec_domain_fqdn,
177  errspec_domain_registrant,
178  errspec_domain_nsset,
179  errspec_domain_keyset,
180  errspec_domain_period,
181  errspec_domain_admin,
182  errspec_domain_tmpcontact,
183  errspec_domain_ext_valDate,
184  errspec_domain_ext_valDate_missing,
185  errspec_domain_curExpDate,
186  errspec_domain_admin_add,
187  errspec_domain_admin_rem,
188  /* input errors */
189  errspec_not_valid,
190  errspec_poll_msgID_missing,
191  errspec_contact_identtype_missing,
192  errspec_transfer_op
193 } epp_errorspec;
194 
202 typedef struct
203 {
205  char *value;
220  char *reason;
222  int position;
223 } epp_error;
224 
231 typedef enum
232 {
233  incorrect_epp_action_type = 0,
234  ClientLogin = 100,
235  ClientLogout = 101,
236  ClientGreeting = 105,
237  PollAcknowledgement = 120,
238  PollResponse = 121,
239  ContactCheck = 200,
240  ContactInfo = 201,
241  ContactDelete = 202,
242  ContactUpdate = 203,
243  ContactCreate = 204,
244  ContactTransfer = 205,
245  NSsetCheck = 400,
246  NSsetInfo = 401,
247  NSsetDelete = 402,
248  NSsetUpdate = 403,
249  NSsetCreate = 404,
250  NSsetTransfer = 405,
251  DomainCheck = 500,
252  DomainInfo = 501,
253  DomainDelete = 502,
254  DomainUpdate = 503,
255  DomainCreate = 504,
256  DomainTransfer = 505,
257  DomainRenew = 506,
258  DomainTrade = 507,
259  KeysetCheck = 600,
260  KeysetInfo = 601,
261  KeysetDelete = 602,
262  KeysetUpdate = 603,
263  KeysetCreate = 604,
264  KeysetTransfer = 605,
265  UnknownAction = 1000,
266  ListContact = 1002,
267  ListNSset = 1004,
268  ListDomain = 1005,
269  ListKeySet = 1006,
270  ClientCredit = 1010,
271  nssetTest = 1012,
272  ContactSendAuthInfo = 1101,
273  NSSetSendAuthInfo = 1102,
274  DomainSendAuthInfo = 1103,
275  KeySetSendAuthInfo = 1106,
276  InfoListContacts = 1200,
277  InfoListDomains = 1201,
278  InfoListNssets = 1202,
279  InfoListKeysets = 1203,
280  InfoDomainsByNsset = 1204,
281  InfoDomainsByKeyset = 1205,
282  InfoDomainsByContact = 1206,
283  InfoNssetsByContact = 1207,
284  InfoNssetsByNs = 1208,
285  InfoKeysetsByContact = 1209,
286  InfoGetResults = 1210
288 
297 typedef struct qitem
298 {
299  struct qitem *next;
300  void *content;
301 } qitem;
302 
308 typedef struct
309 {
310  int count;
313 } qhead;
314 
316 #define q_length(_qhead) ((_qhead).count)
317 
318 #define q_next(_qhead) ((_qhead)->cur = ((_qhead)->cur) ? (_qhead)->cur->next : NULL)
319 
320 #define q_content(_qhead) ((_qhead)->cur->content)
321 
322 #define q_reset(_qhead) ((_qhead)->cur = (_qhead)->body)
323 
327 #define q_foreach(_qhead) \
328  for ((_qhead)->cur = (_qhead)->body; (_qhead)->cur != NULL; (_qhead)->cur = (_qhead)->cur->next)
329 
337 int q_add(void *pool, qhead *head, void *data);
338 
342 /* ********************************************************************* */
343 
344 
348 typedef struct
349 {
350  char *value;
351  char *text;
352 } epp_status;
353 
357 typedef struct
358 {
359  char *name;
360  char *org;
362  char *city;
363  char *sp;
364  char *pc;
365  char *cc;
367 
368 typedef enum
369 {
370  public_data,
371  private_data,
372  unused_privacy_policy
373 } epp_PrivacyPolicy;
374 
378 typedef struct
379 {
380  epp_PrivacyPolicy name;
381  epp_PrivacyPolicy organization;
382  epp_PrivacyPolicy address;
383  epp_PrivacyPolicy telephone;
384  epp_PrivacyPolicy fax;
385  epp_PrivacyPolicy email;
386  epp_PrivacyPolicy vat;
387  epp_PrivacyPolicy ident;
388  epp_PrivacyPolicy notify_email;
389 } epp_discl;
390 
391 typedef struct
392 {
393  unsigned name:1;
394  unsigned organization:1;
395  unsigned address:1;
396  unsigned telephone:1;
397  unsigned fax:1;
398  unsigned email:1;
399  unsigned vat:1;
400  unsigned ident:1;
401  unsigned notify_email:1;
403 
407 typedef struct
408 {
410  epp_DataCollectionPolicyAccess data_collection_policy_access;
411  epp_controlled_privacy_data_mask contact_info_available_disclose_elements;
412  epp_controlled_privacy_data_mask contact_create_available_disclose_elements;
413  epp_controlled_privacy_data_mask contact_update_available_disclose_elements;
415 
419 typedef struct
420 {
421  char *name;
423 } epp_ns;
424 
426 typedef struct
427 {
428  unsigned short flags;
429  unsigned char protocol;
430  unsigned char alg;
431  char *public_key;
432 } epp_dnskey;
433 
435 typedef enum
436 {
443 } epp_identType;
444 
445 typedef enum { TIMEUNIT_MONTH, TIMEUNIT_YEAR } epp_timeunit;
446 
448 typedef struct
449 {
450  int avail;
451  char *reason;
452 } epp_avail;
453 
455 typedef struct
456 {
457  char *zone;
458  char *credit;
460 
461 typedef struct
462 {
463  char *ext_enumval;
464  int publish;
466 } epp_ext_enum;
467 
468 typedef struct
469 {
470  char *Street1;
471  char *Street2;
472  char *Street3;
473  char *City;
475  char *PostalCode;
476  char *CountryCode;
478 
479 typedef enum { mailing_addr_info, mailing_addr_set, mailing_addr_remove } epp_mailingAddrCommand;
480 
483 typedef struct
484 {
486 
487 typedef struct
488 {
489  epp_mailingAddrCommand command;
490  union
491  {
495  } data;
497 
498 
499 typedef struct
500 {
502  union
503  {
506  } ext;
507 } epp_ext_item;
508 
510 typedef enum {
531 } epp_pollType;
532 
534 typedef struct
535 {
536  char *testname;
537  int status;
538  char *note;
540 
541 /* ********************************************************************* */
542 
543 
545 typedef struct
546 {
547  char *clID;
548  char *pw;
549  char *newPW;
552  unsigned lang;
553 } epps_login;
554 
556 typedef struct
557 {
560 } epps_check;
561 
563 typedef struct
564 {
565  char *id;
566  char *handle;
567  char *roid;
570  char *voice;
571  char *fax;
572  char *email;
573  char *clID;
574  char *crID;
575  char *crDate;
576  char *upID;
577  char *upDate;
578  char *trDate;
579  char *authInfo;
581  char *vat;
582  char *ident;
584  char *notify_email;
587 
589 typedef struct
590 {
591  char *name;
592  char *handle;
593  char *roid;
595  char *registrant;
598  char *nsset;
599  char *keyset;
600  char *clID;
601  char *crID;
602  char *crDate;
603  char *exDate;
604  char *upID;
605  char *upDate;
606  char *trDate;
607  char *authInfo;
610 
612 typedef struct
613 {
614  char *id;
615  char *handle;
616  char *roid;
618  char *clID;
619  char *crID;
620  char *crDate;
621  char *upID;
622  char *upDate;
623  char *trDate;
624  char *authInfo;
627  int level;
629 
631 typedef struct
632 {
633  char *id;
634  char *handle;
635  char *roid;
637  char *clID;
638  char *crID;
639  char *crDate;
640  char *upID;
641  char *upDate;
642  char *trDate;
643  char *authInfo;
647 
649 typedef struct
650 {
651  unsigned long long count;
652  char *msgid;
653  char *qdate;
655  union
656  {
657  char *handle;
658  struct
659  {
660  char *handle;
661  char *date;
662  char *clID;
663  } hdt;
664  struct
665  {
666  char *handle;
667  char *date;
668  } hd;
669  struct
670  {
671  char *handle;
672  qhead fqdns;
673  qhead tests;
674  } tc;
675  struct
676  {
677  char *zone;
678  char *limit;
679  char *credit;
680  } lc;
681  struct
682  {
683  char *period_from;
684  char *period_to;
685  unsigned long long total_free_count;
686  unsigned long long used_count;
687  char *price;
688  } rfi;
689  struct
690  {
691  char *optrid;
692  unsigned long long pollid;
693  epps_info_contact old_data;
694  epps_info_contact new_data;
695  } upc;
696  struct
697  {
698  char *optrid;
699  unsigned long long pollid;
700  epps_info_domain old_data;
701  epps_info_domain new_data;
702  } upd;
703  struct
704  {
705  char *optrid;
706  unsigned long long pollid;
707  epps_info_nsset old_data;
708  epps_info_nsset new_data;
709  } upn;
710  struct
711  {
712  char *optrid;
713  unsigned long long pollid;
714  epps_info_keyset old_data;
715  epps_info_keyset new_data;
716  } upk;
717  } msg;
718 } epps_poll_req;
719 
721 typedef struct
722 {
723  char *msgid;
724  unsigned long long count;
725  char *newmsgid;
726 } epps_poll_ack;
727 
729 typedef struct
730 {
731  char *id;
733  char *voice;
734  char *fax;
735  char *email;
736  char *authInfo;
738  char *vat;
739  char *ident;
741  char *notify_email;
742  char *crDate;
745 
747 typedef struct
748 {
749  char *name;
750  char *registrant;
752  char *nsset;
753  char *keyset;
754  int period;
755  epp_timeunit unit;
756  char *authInfo;
758  char *crDate;
759  char *exDate;
761 
763 typedef struct
764 {
765  char *id;
766  char *authInfo;
769  char *crDate;
770  int level;
772 
774 typedef struct
775 {
776  char *id;
777  char *authInfo;
780  char *crDate;
782 
784 typedef struct
785 {
786  char *id;
787 } epps_delete;
788 
790 typedef struct
791 {
792  char *name;
793  char *curExDate;
794  int period;
795  epp_timeunit unit;
797  char *exDate;
798 } epps_renew;
799 
801 typedef struct
802 {
803  char *id;
805  char *voice;
806  char *fax;
807  char *email;
808  char *authInfo;
809  unsigned char discl_update;
811  char *vat;
812  char *ident;
814  char *notify_email;
817 
819 typedef struct
820 {
821  char *name;
822  char *registrant;
826  char *nsset;
827  char *keyset;
828  char *authInfo;
831 
833 typedef struct
834 {
835  char *id;
840  char *authInfo;
841  int level;
843 
845 typedef struct
846 {
847  char *id;
852  char *authInfo;
854 
856 typedef struct
857 {
858  char *id;
859  char *authInfo;
860 } epps_transfer;
861 
863 typedef struct
864 {
865  char *id;
867 
869 typedef struct
870 {
873 
875 typedef struct
876 {
877  char *id;
879  int level;
880 } epps_test;
881 
883 typedef struct
884 {
886 } epps_list;
887 
893 typedef struct
894 {
895  char *handle;
896  unsigned int count;
897 } epps_info;
898 
908 typedef struct
909 {
910  char *clTRID;
911  char *svTRID;
912  int rc;
913  char *msg;
914  char *xml_in;
916  /* parsed_doc and xpath_ctx are needed for error reporting. */
917  void *parsed_doc;
918  void *xpath_ctx;
920  short noresdata;
923 
934  void *data;
936 
937 
938 /* ********************************************************************* */
939 
947 void epplog(epp_context *epp_ctx, epp_loglevel level, const char *fmt, ...);
948 
965 void *epp_malloc(void *pool, unsigned size);
966 
974 void *epp_calloc(void *pool, unsigned size);
975 
984 char *epp_strdup(void *pool, const char *str);
985 
998 char *epp_strcat(void *pool, const char *str1, const char *str2);
999 
1007 char *epp_sprintf(void *pool, const char *fmt, ...);
1008 
1013 #endif /* EPP_COMMON_H */
qhead tech
List of technical contacts for keyset.
Definition: epp_common.h:779
char * id
Id of wanted contact (input).
Definition: epp_common.h:565
unsigned char alg
algorithm type
Definition: epp_common.h:430
Queue item type.
Definition: epp_common.h:297
char * credit
Credit.
Definition: epp_common.h:458
Definition: epp_common.h:487
epp_identType identtype
Type of unique ident.
Definition: epp_common.h:813
qhead admin
Admin contact for domain.
Definition: epp_common.h:751
char * Street2
street - line #2
Definition: epp_common.h:471
char * xml_in
XML as it is received from client.
Definition: epp_common.h:914
char * crDate
Creation date of nsset.
Definition: epp_common.h:769
char * authInfo
Authorization information.
Definition: epp_common.h:643
ICO.
Definition: epp_common.h:441
qhead extensions
List of extensions.
Definition: epp_common.h:585
char * authInfo
Authorization information.
Definition: epp_common.h:756
Definition: epp_common.h:391
The struct represents one epp error in ExtValue element.
Definition: epp_common.h:202
char * clID
Owner&#39;s ID.
Definition: epp_common.h:618
unsigned int count
Count of results.
Definition: epp_common.h:896
char * zone
True if object is available, false otherwise.
Definition: epp_common.h:457
Contact changed.
Definition: epp_common.h:527
Technical check results.
Definition: epp_common.h:517
char * msg
Text message coresponding to return code.
Definition: epp_common.h:913
char * city
City.
Definition: epp_common.h:362
Number of passport.
Definition: epp_common.h:439
char * authInfo
Authorization information.
Definition: epp_common.h:808
char * reason
If object is not available, here is the reason.
Definition: epp_common.h:451
qhead extensions
List of domain extensions.
Definition: epp_common.h:608
int period
Renew period.
Definition: epp_common.h:794
char * exDate
Expiration date of domain.
Definition: epp_common.h:759
epp_ext_mailingAddr ext_mailing_addr
Extensions for mailing contact addresses.
Definition: epp_common.h:505
char * id
Id of wanted keyset (input).
Definition: epp_common.h:776
Domain changed.
Definition: epp_common.h:528
Delete parameters.
Definition: epp_common.h:784
qitem * cur
Currently selected item.
Definition: epp_common.h:312
qhead rem_tech
Technical contacts to be removed.
Definition: epp_common.h:849
qhead extensions
List of domain extensions.
Definition: epp_common.h:796
Errors which are not serious but should be logged.
Definition: epp_common.h:34
qhead status
Keyset&#39;s status.
Definition: epp_common.h:636
Definition: epp_common.h:499
char * upID
ID of last updater.
Definition: epp_common.h:576
Info nsset parameters.
Definition: epp_common.h:612
char * nsset
Nsset of domain.
Definition: epp_common.h:752
qhead tech
List of technical contacts for nsset.
Definition: epp_common.h:626
char * roid
ROID of object.
Definition: epp_common.h:635
Error, the module is not in operational state.
Definition: epp_common.h:32
char * curExDate
Current expiration date.
Definition: epp_common.h:793
char * epp_strdup(void *pool, const char *str)
Duplicate string from argument, the memory will be allocated from memory pool.
Definition: mod_eppd.c:403
int publish
Flag determining if this domain can be published in the ENUM dictionary.
Definition: epp_common.h:464
char * svTRID
server&#39;s TRID
Definition: epp_common.h:911
qhead zonecredits
List of credits for individual zones.
Definition: epp_common.h:871
qhead addr
List of ip addresses.
Definition: epp_common.h:422
Domain expired.
Definition: epp_common.h:520
qhead handles
List of handles.
Definition: epp_common.h:885
char * id
Id of wanted nsset (input).
Definition: epp_common.h:765
char * registrant
Registrant of domain.
Definition: epp_common.h:595
This is the default log level.
Definition: epp_common.h:35
char * name
FQDN of wanted domain (input).
Definition: epp_common.h:821
char * nsset
Nsset of domain.
Definition: epp_common.h:826
Credit of registrator is low.
Definition: epp_common.h:525
void * conn
Connection handler.
Definition: epp_common.h:47
unsigned long long count
Count of waiting messages.
Definition: epp_common.h:651
Poll acknoledge parameters.
Definition: epp_common.h:721
qhead tech
List of technical contacts for keyset.
Definition: epp_common.h:645
char * upDate
Last updated.
Definition: epp_common.h:577
unsigned long long count
Count of waiting messages.
Definition: epp_common.h:724
char * upDate
Last updated.
Definition: epp_common.h:622
epp_postalInfo pi
Postal info.
Definition: epp_common.h:732
char * value
Status name.
Definition: epp_common.h:350
epp_postalInfo pi
Postal info.
Definition: epp_common.h:569
Structure for holding status&#39; names and values.
Definition: epp_common.h:348
char * vat
VAT tax ID.
Definition: epp_common.h:738
char * ext_enumval
Domain validation.
Definition: epp_common.h:463
epp_ext_type
Enumeration of implemented extensions.
Definition: epp_common.h:128
char * fax
Fax number.
Definition: epp_common.h:806
char * name
Name.
Definition: epp_common.h:359
qhead extensions
List of extensions.
Definition: epp_common.h:815
int position
Position of faulty element if it is part of list.
Definition: epp_common.h:222
epp_discl discl
Disclose information section.
Definition: epp_common.h:737
This structure is central to the concept of the whole module.
Definition: epp_common.h:908
qhead rem_admin
Admin contacts to be removed.
Definition: epp_common.h:824
char * notify_email
Notification email.
Definition: epp_common.h:584
char * voice
Telephone number.
Definition: epp_common.h:570
Domain was deleted.
Definition: epp_common.h:524
char * exDate
Expiration date.
Definition: epp_common.h:603
char * crDate
Creation date.
Definition: epp_common.h:639
Structure holding answer to EPP check command.
Definition: epp_common.h:448
Error caused usually by client, module is operational.
Definition: epp_common.h:33
char * trDate
Last transfered.
Definition: epp_common.h:623
Domain validation will expire soon.
Definition: epp_common.h:521
Info keyset parameters.
Definition: epp_common.h:631
char * upDate
Last updated.
Definition: epp_common.h:641
char * authInfo
Authorization information.
Definition: epp_common.h:859
epp_action_type
EPP action types for now only a copy of current enum_action.
Definition: epp_common.h:231
qhead exturi
currently not used
Definition: epp_common.h:551
epp_timeunit unit
Registration period&#39;s unit.
Definition: epp_common.h:755
Structure holding answer to EPP creditInfo command.
Definition: epp_common.h:455
char * authInfo
Authorization information.
Definition: epp_common.h:766
Requests price/count info.
Definition: epp_common.h:526
Create nsset parameters.
Definition: epp_common.h:763
char * handle
Id of wanted nsset (output).
Definition: epp_common.h:615
char * Street3
street - line #3
Definition: epp_common.h:472
Contact was deleted because not used.
Definition: epp_common.h:512
void * xpath_ctx
XPath context.
Definition: epp_common.h:918
qhead keys
List of DNS Key records.
Definition: epp_common.h:644
Domain validation expired.
Definition: epp_common.h:522
Date of birth.
Definition: epp_common.h:442
unsigned short flags
key properties.
Definition: epp_common.h:428
char * upDate
Last updated.
Definition: epp_common.h:605
char * registrant
Registrant of domain.
Definition: epp_common.h:750
epp_identType
Type of identification number used in contact object.
Definition: epp_common.h:435
char * id
Handle of object.
Definition: epp_common.h:865
char * crDate
Creation date.
Definition: epp_common.h:620
qhead extensions
List of extensions.
Definition: epp_common.h:743
char * reason
Human readable reason of error.
Definition: epp_common.h:220
qhead tech
List of technical contacts for nsset.
Definition: epp_common.h:768
char * crDate
Creation date of contact.
Definition: epp_common.h:742
char * id
Id of transfered object.
Definition: epp_common.h:858
char * roid
ROID of object.
Definition: epp_common.h:567
eppd_server_xml_conf xml_schema
Entities enabled in xml schemas.
Definition: epp_common.h:929
char * id
Id of wanted nsset (input).
Definition: epp_common.h:614
char * PostalCode
postal code
Definition: epp_common.h:475
char * authInfo
Authorization information.
Definition: epp_common.h:607
char * clTRID
client&#39;s TRID
Definition: epp_common.h:910
char * ident
Contact&#39;s unique ident.
Definition: epp_common.h:812
char * msgid
ID of acknoledged message.
Definition: epp_common.h:723
char * trDate
Last transfered.
Definition: epp_common.h:578
Create contact parameters.
Definition: epp_common.h:729
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:421
unsigned lang
Language.
Definition: epp_common.h:552
char * handle
Search key.
Definition: epp_common.h:895
char * keyset
Keyset for domain.
Definition: epp_common.h:599
Nsset was transferred.
Definition: epp_common.h:513
int level
Report level.
Definition: epp_common.h:627
Domain was transferred.
Definition: epp_common.h:518
char * voice
Telephone number.
Definition: epp_common.h:733
qhead errors
List of validation errors or errors from central repository.
Definition: epp_common.h:922
char * trDate
Last transfered.
Definition: epp_common.h:606
Test parameters.
Definition: epp_common.h:875
Update contact parameters.
Definition: epp_common.h:801
KeySet was transferred.
Definition: epp_common.h:515
char * id
Id of wanted contact (input).
Definition: epp_common.h:731
KeySet was deleted because not used.
Definition: epp_common.h:516
int level
Report level.
Definition: epp_common.h:770
NSSet changed.
Definition: epp_common.h:529
Number of ID card.
Definition: epp_common.h:438
epp_ext_enum ext_enum
Extensions for ENUM.
Definition: epp_common.h:504
qhead extensions
List of domain extensions.
Definition: epp_common.h:757
Definition: epp_common.h:483
char * id
Id of wanted keyset (input).
Definition: epp_common.h:847
char * cc
Country code.
Definition: epp_common.h:365
char * qdate
Date of message submission.
Definition: epp_common.h:653
KeySet changed.
Definition: epp_common.h:530
char * id
Id of wanted keyset (input).
Definition: epp_common.h:633
qhead ns
List of nameservers.
Definition: epp_common.h:767
epp_identType identtype
Type of unique ident.
Definition: epp_common.h:583
char * handle
Id of wanted keyset (output).
Definition: epp_common.h:634
char * id
ID of tested nsset.
Definition: epp_common.h:877
char * notify_email
Notification email.
Definition: epp_common.h:814
void * epp_calloc(void *pool, unsigned size)
Allocate memory from memory pool and prezero it.
Definition: mod_eppd.c:385
Create domain parameters.
Definition: epp_common.h:747
unsigned char protocol
= 3
Definition: epp_common.h:429
DNS Key record - http://rfc-ref.org/RFC-TEXTS/4034/chapter2.html.
Definition: epp_common.h:426
char * pw
Password.
Definition: epp_common.h:548
Contact was transferred.
Definition: epp_common.h:511
Parameters of obsolete command &#39;list&#39; and getResults command.
Definition: epp_common.h:883
Login parameters.
Definition: epp_common.h:545
void * pool
Pool for allocations.
Definition: epp_common.h:46
char * id
ID of object to be deleted.
Definition: epp_common.h:786
SendAuthInfo parameters.
Definition: epp_common.h:863
char * roid
ROID of object.
Definition: epp_common.h:593
char * epp_sprintf(void *pool, const char *fmt,...)
Print formatted string.
Definition: mod_eppd.c:438
char * clID
Owner&#39;s ID.
Definition: epp_common.h:637
epp_pollType
Type of poll message.
Definition: epp_common.h:510
Structure gathers postal info about contact.
Definition: epp_common.h:357
Update keyset parameters.
Definition: epp_common.h:845
epp_timeunit unit
Registration period&#39;s unit.
Definition: epp_common.h:795
char * exDate
New expiration date.
Definition: epp_common.h:797
Configuration of entities enabled in xml schemas.
Definition: epp_common.h:407
qhead ids
IDs of checked objects.
Definition: epp_common.h:558
qhead add_ns
Nameservers to be added.
Definition: epp_common.h:838
char * authInfo
Authorization information.
Definition: epp_common.h:828
char * City
city
Definition: epp_common.h:473
Check contact, domain and nsset parameters.
Definition: epp_common.h:556
qhead names
Fqdns of domains to be tested with nsset.
Definition: epp_common.h:878
Info contact parameters.
Definition: epp_common.h:563
epp_ext_type extType
Identifier of extension.
Definition: epp_common.h:501
char * org
Organization.
Definition: epp_common.h:360
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:758
char * StateOrProvince
state or province
Definition: epp_common.h:474
epp_discl discl
Disclose information section.
Definition: epp_common.h:810
Update domain parameters.
Definition: epp_common.h:819
char * vat
VAT tax ID.
Definition: epp_common.h:811
char * email
Email address.
Definition: epp_common.h:807
void * parsed_doc
Parsed XML document tree.
Definition: epp_common.h:917
char * Street1
street - line #1
Definition: epp_common.h:470
epp_lang
definition of languages (english is default)
Definition: epp_common.h:144
char * crID
ID of creator.
Definition: epp_common.h:601
char * fax
Fax number.
Definition: epp_common.h:734
Disclose information of contact.
Definition: epp_common.h:378
epp_errorspec spec
Specification of surrounding XML tags.
Definition: epp_common.h:211
int level
Report level.
Definition: epp_common.h:841
qhead rem_tmpcontact
Temporary contact used for migration.
Definition: epp_common.h:825
epp_identType identtype
Type of unique ident.
Definition: epp_common.h:740
qhead streets
3x street.
Definition: epp_common.h:361
char * authInfo
Authorization information.
Definition: epp_common.h:579
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:156
char * email
Email address.
Definition: epp_common.h:735
qhead add_dnskey
DNSKEYs to be added.
Definition: epp_common.h:850
char * handle
FQDN of wanted domain (output).
Definition: epp_common.h:592
char * CountryCode
country code - 2 char ISO country code
Definition: epp_common.h:476
qhead rem_ns
Nameservers to be removed.
Definition: epp_common.h:839
char * crDate
Creation date.
Definition: epp_common.h:575
Number assigned by &quot;ministry of work and ...&quot;.
Definition: epp_common.h:440
char * registrant
Registrant of domain.
Definition: epp_common.h:822
char * voice
Telephone number.
Definition: epp_common.h:805
char * clID
Owner&#39;s ID.
Definition: epp_common.h:573
qhead add_tech
Technical contacts to be added.
Definition: epp_common.h:836
Renew domain parameters.
Definition: epp_common.h:790
short noresdata
True if there should be no resdata section or msgQ section.
Definition: epp_common.h:920
char * authInfo
Authorization information.
Definition: epp_common.h:736
char * newmsgid
ID of first message in a queue.
Definition: epp_common.h:725
char * sp
State or province.
Definition: epp_common.h:363
epp_command_type
Enumeration of codes of all EPP commands this module is able to handle.
Definition: epp_common.h:61
void * content
Pointer to content of item.
Definition: epp_common.h:300
char * trDate
Last transfered.
Definition: epp_common.h:642
char * clID
Client ID.
Definition: epp_common.h:547
char * pc
Postal code.
Definition: epp_common.h:364
Nsset was deleted because not used.
Definition: epp_common.h:514
char * crDate
Creation date of keyset.
Definition: epp_common.h:780
char * crID
ID of creator.
Definition: epp_common.h:638
Domain was outaged from zone.
Definition: epp_common.h:523
qhead tmpcontact
Temporary contact used for migration.
Definition: epp_common.h:596
unsigned char discl_update
Use disclose information section.
Definition: epp_common.h:809
char * authInfo
Authorization information.
Definition: epp_common.h:777
char * name
FQDN of wanted domain (input).
Definition: epp_common.h:591
char * crID
ID of creator.
Definition: epp_common.h:574
void epplog(epp_context *epp_ctx, epp_loglevel level, const char *fmt,...)
Write a log message to eppd log file.
Definition: mod_eppd.c:474
Definition: epp_common.h:461
struct qitem qitem
Queue item type.
int level
Level of tests (-1 if not overriden).
Definition: epp_common.h:879
char * upID
ID of last updater.
Definition: epp_common.h:621
qhead admin
Admin contact for domain.
Definition: epp_common.h:597
qhead ns
List of nameservers.
Definition: epp_common.h:625
Poll request parameters.
Definition: epp_common.h:649
void * epp_malloc(void *pool, unsigned size)
Allocate memory from memory pool.
qhead rem_tech
Technical contacts to be removed.
Definition: epp_common.h:837
char * id
Id of wanted nsset (input).
Definition: epp_common.h:835
char * email
Email address.
Definition: epp_common.h:572
char * nsset
Nsset of domain.
Definition: epp_common.h:598
epp_command_type type
Identification of epp command.
Definition: epp_common.h:928
Nameserver has a name and possibly more than one ip address.
Definition: epp_common.h:419
char * vat
VAT tax ID.
Definition: epp_common.h:581
char * name
fqdn of nameserver.
Definition: epp_common.h:421
qhead status
Nsset&#39;s status.
Definition: epp_common.h:617
char * newPW
New password.
Definition: epp_common.h:549
qhead avails
Booleans + reasons.
Definition: epp_common.h:559
All Info functions, which accept single key on input and count on output (domainsByNsset, domainsByContact, nssetsByContact, nssetsByNs).
Definition: epp_common.h:893
qhead rem_dnskey
DNSKEYs to be removed.
Definition: epp_common.h:851
qhead keys
List of DNS Key records.
Definition: epp_common.h:778
int avail
True if object is available, false otherwise.
Definition: epp_common.h:450
int rc
EPP return code defined in standard.
Definition: epp_common.h:912
char * text
Status value.
Definition: epp_common.h:351
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
qhead status
Domain&#39;s status.
Definition: epp_common.h:594
Contents of requests and responses are logged.
Definition: epp_common.h:36
Domain will expire in near future.
Definition: epp_common.h:519
Info domain parameters.
Definition: epp_common.h:589
Create keyset parameters.
Definition: epp_common.h:774
char * value
Client provided input which caused the error.
Definition: epp_common.h:205
char * authInfo
Authorization information.
Definition: epp_common.h:840
epp_object_type
Enumeration of EPP objects which this server operates on.
Definition: epp_common.h:133
char * name
FQDN of wanted domain (input).
Definition: epp_common.h:749
char * clID
Owner&#39;s ID.
Definition: epp_common.h:600
void * data
Command data (Input + output parameters for all possible epp commands).
Definition: epp_common.h:934
epp_postalInfo * pi
Postal info.
Definition: epp_common.h:804
char * msgid
ID of next message in a queue.
Definition: epp_common.h:652
char * handle
Id of wanted contact (output).
Definition: epp_common.h:566
char * name
Name of renewed domain.
Definition: epp_common.h:792
qhead add_admin
Admin contacts to be added.
Definition: epp_common.h:823
Queue structure used on countless places throughout the program.
Definition: epp_common.h:308
char * keyset
Keyset for domain.
Definition: epp_common.h:753
char * id
Id of wanted contact (input).
Definition: epp_common.h:803
Definition: epp_common.h:468
Update nsset parameters.
Definition: epp_common.h:833
char * upID
ID of last updater.
Definition: epp_common.h:640
char * notify_email
Notification email.
Definition: epp_common.h:741
char * ident
Contact&#39;s unique ident.
Definition: epp_common.h:582
char * crDate
Creation date.
Definition: epp_common.h:602
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:848
qitem * body
Items in a queue.
Definition: epp_common.h:311
CreditInfo parameters.
Definition: epp_common.h:869
char * upID
ID of last updater.
Definition: epp_common.h:604
char * authInfo
Authorization information.
Definition: epp_common.h:852
int count
Optimization for length() function.
Definition: epp_common.h:310
char * roid
ROID of object.
Definition: epp_common.h:616
struct qitem * next
Link to next item in a queue.
Definition: epp_common.h:299
int period
Registration period in months.
Definition: epp_common.h:754
qhead objuri
currently not used
Definition: epp_common.h:550
qhead status
Contact&#39;s status.
Definition: epp_common.h:568
char * authInfo
Authorization information.
Definition: epp_common.h:624
int has_contact_mailing_address_extension
Contacts feature mailing address extension.
Definition: epp_common.h:409
char * public_key
base64 encoded public key
Definition: epp_common.h:431
qhead extensions
List of domain extensions.
Definition: epp_common.h:829
char * crID
ID of creator.
Definition: epp_common.h:619
char * keyset
Keyset of domain.
Definition: epp_common.h:827
Unknown value can also mean undefined.
Definition: epp_common.h:437
Structure containing result of one technical test.
Definition: epp_common.h:534
Transfer parameters.
Definition: epp_common.h:856
char * ident
Contact&#39;s unique ident.
Definition: epp_common.h:739
char * fax
Fax number.
Definition: epp_common.h:571
epp_discl discl
Disclose information section.
Definition: epp_common.h:580
epp_pollType type
Type of poll message.
Definition: epp_common.h:654