diff options
| author | Richard M. Stallman | 1994-10-18 07:34:59 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 1994-10-18 07:34:59 +0000 |
| commit | 7a481e50f633f5ffa09722ac2bc6fdec941a8230 (patch) | |
| tree | c842f1a254b9f7d867a8f6e6fb974c3f7fd5eede /lib-src | |
| parent | 0178cafafc47a895138e1245ca29f1cee7567f4c (diff) | |
| download | emacs-7a481e50f633f5ffa09722ac2bc6fdec941a8230.tar.gz emacs-7a481e50f633f5ffa09722ac2bc6fdec941a8230.zip | |
Don't declare malloc, realloc, free.
Don't include string.h or strings.h.
Include des.h before krb.h.
Do declare my_strstr.
(getline): Really use my_strstr.
Leave one empty place in server->buffer,
and put a null at the end of the data in it.
Diffstat (limited to 'lib-src')
| -rw-r--r-- | lib-src/pop.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/lib-src/pop.c b/lib-src/pop.c index 9f5b5476f50..725a9d87cd0 100644 --- a/lib-src/pop.c +++ b/lib-src/pop.c | |||
| @@ -26,10 +26,6 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ | |||
| 26 | #include <pop.h> | 26 | #include <pop.h> |
| 27 | #ifdef sun | 27 | #ifdef sun |
| 28 | #include <malloc.h> | 28 | #include <malloc.h> |
| 29 | #else | ||
| 30 | extern char *malloc (/* unsigned */); | ||
| 31 | extern char *realloc (/* char *, unsigned */); | ||
| 32 | extern void free (/* char * */); | ||
| 33 | #endif | 29 | #endif |
| 34 | #endif | 30 | #endif |
| 35 | #ifdef HESIOD | 31 | #ifdef HESIOD |
| @@ -43,15 +39,13 @@ extern void free (/* char * */); | |||
| 43 | extern struct servent *hes_getservbyname (/* char *, char * */); | 39 | extern struct servent *hes_getservbyname (/* char *, char * */); |
| 44 | #endif | 40 | #endif |
| 45 | #include <pwd.h> | 41 | #include <pwd.h> |
| 46 | #include <string.h> | ||
| 47 | #include <strings.h> | ||
| 48 | #include <netdb.h> | 42 | #include <netdb.h> |
| 49 | #include <errno.h> | 43 | #include <errno.h> |
| 50 | #include <stdio.h> | 44 | #include <stdio.h> |
| 51 | #ifdef KERBEROS | 45 | #ifdef KERBEROS |
| 52 | #ifndef KRB5 | 46 | #ifndef KRB5 |
| 53 | #include <krb.h> | ||
| 54 | #include <des.h> | 47 | #include <des.h> |
| 48 | #include <krb.h> | ||
| 55 | #else /* KRB5 */ | 49 | #else /* KRB5 */ |
| 56 | #include <krb5/krb5.h> | 50 | #include <krb5/krb5.h> |
| 57 | #include <krb5/ext-proto.h> | 51 | #include <krb5/ext-proto.h> |
| @@ -85,6 +79,8 @@ static int gettermination (/* popserver */); | |||
| 85 | #endif | 79 | #endif |
| 86 | static void pop_trash (/* popserver */); | 80 | static void pop_trash (/* popserver */); |
| 87 | 81 | ||
| 82 | static char *my_strstr (); | ||
| 83 | |||
| 88 | #define ERROR_MAX 80 /* a pretty arbitrary size */ | 84 | #define ERROR_MAX 80 /* a pretty arbitrary size */ |
| 89 | #define POP_PORT 110 | 85 | #define POP_PORT 110 |
| 90 | #define KPOP_PORT 1109 | 86 | #define KPOP_PORT 1109 |
| @@ -1171,7 +1167,7 @@ getline (server) | |||
| 1171 | 1167 | ||
| 1172 | if (server->data) | 1168 | if (server->data) |
| 1173 | { | 1169 | { |
| 1174 | char *cp = strstr (server->buffer + server->buffer_index, "\r\n"); | 1170 | char *cp = my_strstr (server->buffer + server->buffer_index, "\r\n"); |
| 1175 | if (cp) | 1171 | if (cp) |
| 1176 | { | 1172 | { |
| 1177 | int found; | 1173 | int found; |
| @@ -1214,7 +1210,7 @@ getline (server) | |||
| 1214 | } | 1210 | } |
| 1215 | } | 1211 | } |
| 1216 | ret = read (server->file, server->buffer + server->data, | 1212 | ret = read (server->file, server->buffer + server->data, |
| 1217 | server->buffer_size - server->data); | 1213 | server->buffer_size - server->data - 1); |
| 1218 | if (ret < 0) | 1214 | if (ret < 0) |
| 1219 | { | 1215 | { |
| 1220 | strcpy (pop_error, GETLINE_ERROR); | 1216 | strcpy (pop_error, GETLINE_ERROR); |
| @@ -1231,9 +1227,11 @@ getline (server) | |||
| 1231 | } | 1227 | } |
| 1232 | else | 1228 | else |
| 1233 | { | 1229 | { |
| 1234 | char *cp = strstr (server->buffer, "\r\n"); | 1230 | char *cp; |
| 1235 | server->data += ret; | 1231 | server->data += ret; |
| 1232 | server->buffer[server->data] = '\0'; | ||
| 1236 | 1233 | ||
| 1234 | cp = my_strstr (server->buffer, "\r\n"); | ||
| 1237 | if (cp) | 1235 | if (cp) |
| 1238 | { | 1236 | { |
| 1239 | int data_used = (cp + 2) - server->buffer; | 1237 | int data_used = (cp + 2) - server->buffer; |