|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T a
Length: 6360 (0x18d8) Types: TextFile Names: »adr.h«
└─⟦2d1937cfd⟧ Bits:30007241 EUUGD22: P.P 5.0 └─⟦dc59850a2⟧ »EurOpenD22/pp5.0/pp-5.tar.Z« └─⟦e5a54fb17⟧ └─⟦this⟧ »pp-5.0/h/adr.h«
/* adr.h: address structure definition */ /* * @(#) $Header: /cs/research/pp/hubris/pp-beta/h/RCS/adr.h,v 5.0 90/09/20 16:49:24 pp Exp Locker: pp $ * * $Log: adr.h,v $ * Revision 5.0 90/09/20 16:49:24 pp * rcsforce : 5.0 public release * * */ #ifndef _H_ADR #define _H_ADR #include "list_rchan.h" #include "extension.h" #include "mta.h" #include <isode/psap.h> typedef struct ad_redirection { struct ad_redirection *rd_next; char *rd_addr; /* O/R Name */ char *rd_dn; /* Distinguished Name */ UTC rd_time; int rd_reason; #define RDR_RECIP_ASSIGNED 0 #define RDR_ORIG_ASSIGNED 1 #define RDR_MD_ASSIGNED 2 } Redirection; /* Address-types */ #define AD_ORIGINATOR 1 #define AD_RECIPIENT 2 typedef struct adr_struct { int ad_no; /* recipient number */ /* PP's key to this adr */ /* Next 3 parms may be modfiied */ /* in Q. Fixed text encoding */ int ad_status; /* recipient status */ #define AD_STAT_UNKNOWN 0 #define AD_STAT_PEND 1 #define AD_STAT_DRREQUIRED 2 /* DR required */ #define AD_STAT_DRWRITTEN 3 /* DR written */ #define AD_STAT_DONE 4 int ad_rcnt; /* reformatters done count */ /* -- MTS Service Parms */ char *ad_value; /* address-original */ char *ad_dn; /* Directory Distinguished Name */ /* QUIPU string encoding */ int ad_usrreq; /* user-report-request bit */ #define AD_USR_NOREPORT 0 #define AD_USR_BASIC 1 #define AD_USR_CONFIRM 2 #define AD_USR_NONE 3 int ad_explicitconversion; /* explicit conversion */ #define AD_EXP_NONE -1 #define AD_EXP_IA5_TEXT_TO_TELETEX 0 #define AD_EXP_TELETEX_TO_TELEX 1 #define AD_EXP_TELEX_TO_IA5_TEXT 2 #define AD_EXP_TELEX_TO_TELETEX 3 #define AD_EXP_TELEX_TO_G4_CLASS_1 4 #define AD_EXP_TELEX_TO_VIDEOTEX 5 #define AD_EXP_IA5_TEXT_TO_TELEX 6 #define AD_EXP_TELEX_TO_G3_FACSIMILE 7 #define AD_EXP_IA5_TEXT_TO_G3_FACSIMILE 8 #define AD_EXP_IA5_TEXT_TO_G4_CLASS_1 9 #define AD_EXP_IA5_TEXT_TO_VIDEOTEX 10 #define AD_EXP_TELETEX_TO_IA5_TEXT 11 #define AD_EXP_TELETEX_TO_G3_FACSIMILE 12 #define AD_EXP_TELETEX_TO_G4_CLASS_1 13 #define AD_EXP_TELETEX_TO_VIDEOTEX 14 #define AD_EXP_VIDEOTEX_TO_TELEX 15 #define AD_EXP_VIDEOTEX_TO_IA5_TEXT 16 #define AD_EXP_VIDEOTEX_TO_TELETEX 17 int ad_type; /* address-type */ #define AD_X400_TYPE 1 #define AD_822_TYPE 2 #define AD_ANY_TYPE 3 char *ad_orig_req_alt; /* originator requested alternate */ /* recipient - std encoded */ char ad_orig_req_alt_crit; #define AD_RDM_MAX 4 int ad_req_del[AD_RDM_MAX]; /* requested delivery method */ #define AD_RDM_NOTUSED -1 #define AD_RDM_ANY 0 #define AD_RDM_MHS 1 #define AD_RDM_PD 2 #define AD_RDM_TLX 3 #define AD_RDM_TTX 4 #define AD_RDM_G3 5 #define AD_RDM_G4 6 #define AD_RDM_TTY 7 #define AD_RDM_VTX 8 char ad_req_del_crit; char ad_phys_forward; /* boolean - is physical */ /* forwarding allowed */ char ad_phys_forward_crit; char ad_phys_fw_ad_req; char ad_phys_fw_ad_crit; /* boolean - request for phys */ /* foward address */ int ad_phys_modes; char ad_phys_modes_crit; #define AD_PM_ORD 0x1 #define AD_PM_SPEC 0x2 #define AD_PM_EXPR 0x4 #define AD_PM_CNT 0x8 #define AD_PM_CNT_PHONE 0x10 #define AD_PM_CNT_TLX 0x20 #define AD_PM_CNT_TTX 0x40 #define AD_PM_CNT_BUREAU 0x80 #define AD_PM_MAX 0x80 int ad_reg_mail_type; char ad_reg_mail_type_crit; #define AD_RMT_UNSPECIFIED -1 #define AD_RMT_NON_REG 0 #define AD_RMT_REG 1 #define AD_RMT_PERSON 2 char *ad_recip_number_for_advice; char ad_recip_number_for_advice_crit; OID ad_phys_rendition_attribs; char ad_phys_rendition_attribs_crit; int ad_pd_report_request; char ad_pd_report_request_crit; #define AD_PRR_UNSPECIFIED -1 #define AD_PRR_UNDELIV_PDS 0 #define AD_NTF_PDS 1 #define AD_NTF_MHS 2 #define AD_NTF_BOTH 3 Redirection *ad_redirection_history; char ad_redirection_history_crit; struct qbuf *ad_message_token; char ad_message_token_crit; struct qbuf *ad_content_integrity; char ad_content_integrity_crit; int ad_proof_delivery; char ad_proof_delivery_crit; /* boolean. Is proof of delivery */ /* requested */ /* -- MTA Service Params (calculated for MTS AS) */ int ad_extension; /* extension-id */ int ad_resp; /* responsibility bit */ int ad_mtarreq; /* mta-report-request bit */ #define AD_MTA_NONE 0 #define AD_MTA_BASIC 1 #define AD_MTA_CONFIRM 2 #define AD_MTA_AUDIT_CONFIRM 3 /* -- This may be supplied as a hint but might get changed */ int ad_subtype; /* address-subtype */ #define AD_NOSUBTYPE 0 #define AD_JNT 1 #define AD_REAL733 2 #define AD_REAL822 3 #define AD_X400_84 4 /* Use this if compatible */ #define AD_X400_88 5 Extension *ad_per_recip_ext_list; /* bucket for new and private */ /* odds and sods */ /* -- parameters calculated by PP */ /* -- Note: the outbound mta is held in ad_outchan -- */ char *ad_r400adr; /* x400-addr */ char *ad_r822adr; /* rfc-addr */ char *ad_content; /* outgoing content type */ LIST_RCHAN *ad_fmtchan; /* reformatting channels */ LIST_RCHAN *ad_outchan; /* outbound channel structure */ LIST_BPT *ad_eit; /* outgoing eit's */ /* -- from here onwards extra PP specific info -- */ /* -- Diagnostics for any address parsing failures -- */ int ad_parse_stat; /* address parsing err status */ char *ad_parse_message; /* address parsing err message */ int ad_reason; /* DR reason failure */ int ad_diagnostic; /* DR diagnostic code */ char *ad_add_info; /* DR supplementary info */ /* -- Address Control File offsets for fixed length variables -- */ off_t ad_no_offset; /* offset param for recip number */ off_t ad_stat_offset; /* offset param for recip status */ off_t ad_rcnt_offset; /* offset param for reformat next */ struct adr_struct *ad_next; } ADDR; #define NULLADDR ((ADDR *)0) extern ADDR *adr_new (); extern void adr_init (); extern void adr_free (); extern void adr_tfree (); extern void adr_add (); extern void redirection_free (); #endif