]> Pileus Git - ~andy/fetchmail/blobdiff - fetchmail.h
Merge branch 'legacy_63'
[~andy/fetchmail] / fetchmail.h
index 933724f7d52e2568d6d75fb0696a1bad310011ad..10f5be1e5f7576b72c88980368d815eeab451a3c 100644 (file)
 #define _NETBSD_SOURCE 1
 #endif
 
+#include "gettext.h"
+#define GT_(String) gettext (String)
+#define gettext_noop(String) String
+#define N_(String) gettext_noop (String)
+
 struct addrinfo;
 
 /* We need this for size_t */
@@ -31,13 +36,14 @@ struct addrinfo;
 #include <libpwmd.h>
 #endif
 
-/* constants designating the various supported protocols */
-#define                P_AUTO          1
-#define                P_POP3          3
-#define                P_APOP          4
-#define                P_IMAP          6
-#define                P_ETRN          7
-#define                P_ODMR          8
+/** constants designating the various supported protocols -- ordered */
+enum protocols {
+    P_AUTO = 1 /**< probe IMAP and POP3 - deprecated */,
+    P_POP3     /**  POP3, including APOP and KPOP, RFC 1939 et al. */,
+    P_IMAP     /**  IMAP4, RFC 3501 */,
+    P_ETRN     /**  ETRN - SMTP Service Extension for Remote Message Queue Starting, "extended TURN", RFC 1985 */,
+    P_ODMR     /**  ODMR/ATRN - On-Demand Mail Relay SMTP with dynamic addresses/Authenticated TURN, RFC 2645 */
+};
 
 #define                SMTP_PORT       "smtp"
 #define                SMTP_PORT_NUM   25
@@ -55,17 +61,20 @@ struct addrinfo;
  */
 #define MAILBOX_PROTOCOL(ctl)  ((ctl)->server.protocol < P_ETRN)
 
-/* authentication types */
-#define                A_ANY           0       /* use the first method that works */
-#define                A_PASSWORD      1       /* password authentication */
-#define                A_NTLM          2       /* Microsoft NTLM protocol */
-#define                A_CRAM_MD5      3       /* CRAM-MD5 shrouding (RFC2195) */
-#define                A_OTP           4       /* One-time password (RFC1508) */
-#define                A_KERBEROS_V5   6       /* authenticate w/ Kerberos V5 */
-#define        A_GSSAPI        7       /* authenticate with GSSAPI */
-#define                A_SSH           8       /* authentication at session level */
-#define                A_MSN           9       /* same as NTLM with keyword MSN */
-#define                A_EXTERNAL      10      /* external authentication (client cert) */
+/** authentication types */
+enum authenticators {
+       A_ANY = 0       /**< use the first method that works */,
+       A_PASSWORD      /** password authentication */,
+       A_NTLM          /** Microsoft NTLM protocol */,
+       A_CRAM_MD5      /** CRAM-MD5 shrouding (RFC2195) */,
+       A_OTP           /** One-time password (RFC1508) */,
+       A_APOP          /** POP3 APOP */,
+       A_KERBEROS_V5   /** authenticate w/ Kerberos V5 */,
+       A_GSSAPI        /** authenticate with GSSAPI */,
+       A_SSH           /** authentication at session level */,
+       A_MSN           /** same as NTLM with keyword MSN */,
+       A_EXTERNAL      /** external authentication (client cert) */
+};
 
 /* some protocols or authentication types (KERBEROS, GSSAPI, SSH) don't
  * require a password */
@@ -199,7 +208,7 @@ UID_SEEN=   1,              /**< id was seen, but not deleted */
 UID_DELETED=   2,              /**< this message has been marked deleted */
 UID_EXPUNGED=  3               /**< this message has been expunged */
 };
-/*@}*/
+/**/
 
 
 struct query;
@@ -637,7 +646,6 @@ int doODMR (struct query *);
 
 /* authentication functions */
 int do_cram_md5(int sock, const char *command, struct query *ctl, const char *strip);
-int do_rfc1731(int sock, const char *command, const char *truename);
 int check_gss_creds(const char *service, const char *hostname);
 int do_gssauth(int sock, const char *command, const char *service, const char *hostname, const char *username);
 int do_otp(int sock, const char *command, struct query *ctl);