summaryrefslogtreecommitdiff
path: root/sqmail-4.3.07/src/hfield.c
diff options
context:
space:
mode:
Diffstat (limited to 'sqmail-4.3.07/src/hfield.c')
-rw-r--r--sqmail-4.3.07/src/hfield.c113
1 files changed, 0 insertions, 113 deletions
diff --git a/sqmail-4.3.07/src/hfield.c b/sqmail-4.3.07/src/hfield.c
deleted file mode 100644
index 2376e1f..0000000
--- a/sqmail-4.3.07/src/hfield.c
+++ /dev/null
@@ -1,113 +0,0 @@
-#include "hfield.h"
-
-static char *(hname[]) = {
- "unknown-header"
-, "sender"
-, "from"
-, "reply-to"
-, "to"
-, "cc"
-, "bcc"
-, "date"
-, "message-id"
-, "subject"
-, "resent-sender"
-, "resent-from"
-, "resent-reply-to"
-, "resent-to"
-, "resent-cc"
-, "resent-bcc"
-, "resent-date"
-, "resent-message-id"
-, "return-receipt-to"
-, "errors-to"
-, "apparently-to"
-, "received"
-, "return-path"
-, "delivered-to"
-, "content-length"
-, "content-type"
-, "content-transfer-encoding"
-, "notice-requested-upon-delivery-to"
-, "mail-followup-to"
-, 0
-};
-
-static int hmatch( char *s,int len,char *t)
-{
- int i;
- char ch;
-
- for (i = 0; (ch = t[i]); ++i) {
- if (i >= len) return 0;
- if (ch != s[i]) {
- if (ch == '-') return 0;
- if (ch - 32 != s[i]) return 0;
- }
- }
- for (;;) {
- if (i >= len) return 0;
- ch = s[i];
- if (ch == ':') return 1;
- if ((ch != ' ') && (ch != '\t')) return 0;
- ++i;
- }
-}
-
-int hfield_known(char *s,int len)
-{
- int i;
- char *t;
-
- for (i = 1; (t = hname[i]); ++i)
- if (hmatch(s,len,t))
- return i;
-
- return 0;
-}
-
-int hfield_valid(char *s,int len)
-{
- int i;
- int j;
- char ch;
-
- for (j = 0; j < len; ++j)
- if (s[j] == ':') break;
-
- if (j >= len) return 0;
-
- while (j) {
- ch = s[j - 1];
- if ((ch != ' ') && (ch != '\t'))
- break;
- --j;
- }
- if (!j) return 0;
-
- for (i = 0; i < j; ++i) {
- ch = s[i];
- if (ch <= 32) return 0;
- if (ch >= 127) return 0;
- }
- return 1;
-}
-
-unsigned int hfield_skipname(char *s,int len)
-{
- int i;
- char ch;
-
- for (i = 0; i < len; ++i)
- if (s[i] == ':') break;
-
- if (i < len) ++i;
- while (i < len) {
- ch = s[i];
- if ((ch != '\t') && (ch != '\n') && (ch != '\r') && (ch != ' '))
- break;
- ++i;
- }
-
- return i;
-}