Mercurial > noffle
comparison protocol.h @ 0:04124a4423d4 noffle
[svn] Initial revision
author | enz |
---|---|
date | Tue, 04 Jan 2000 11:35:42 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:04124a4423d4 |
---|---|
1 /* | |
2 protocol.h | |
3 | |
4 Functions related with the NNTP protocol which are useful for both | |
5 the server and the client. | |
6 | |
7 $Id: protocol.h 3 2000-01-04 11:35:42Z enz $ | |
8 */ | |
9 | |
10 #ifndef PRT_H | |
11 #define PRT_H | |
12 | |
13 #include "dynamicstring.h" | |
14 #include "over.h" | |
15 | |
16 #define STAT_HELP_FOLLOWS 100 | |
17 #define STAT_DEBUG_FOLLOWS 199 | |
18 | |
19 #define STAT_READY_POST_ALLOW 200 | |
20 #define STAT_READY_NO_POST_ALLOW 201 | |
21 #define STAT_CMD_OK 202 | |
22 #define STAT_GOODBYE 205 | |
23 #define STAT_GRP_SELECTED 211 | |
24 #define STAT_GRPS_FOLLOW 215 | |
25 #define STAT_ART_FOLLOWS 220 | |
26 #define STAT_HEAD_FOLLOWS 221 | |
27 #define STAT_BODY_FOLLOWS 222 | |
28 #define STAT_ART_RETRIEVED 223 | |
29 #define STAT_OVERS_FOLLOW 224 | |
30 #define STAT_NEW_GRP_FOLLOW 231 | |
31 #define STAT_POST_OK 240 | |
32 #define STAT_AUTH_ACCEPTED 281 | |
33 | |
34 #define STAT_SEND_ART 340 | |
35 #define STAT_MORE_AUTH_REQUIRED 381 | |
36 | |
37 #define STAT_NO_SUCH_GRP 411 | |
38 #define STAT_NO_GRP_SELECTED 412 | |
39 #define STAT_NO_ART_SELECTED 420 | |
40 #define STAT_NO_NEXT_ART 421 | |
41 #define STAT_NO_PREV_ART 422 | |
42 #define STAT_NO_SUCH_NUMB 423 | |
43 #define STAT_NO_SUCH_ID 430 | |
44 #define STAT_ART_REJECTED 437 | |
45 #define STAT_POST_FAILED 441 | |
46 #define STAT_AUTH_REQUIRED 480 | |
47 #define STAT_AUTH_REJECTED 482 | |
48 | |
49 #define STAT_NO_SUCH_CMD 500 | |
50 #define STAT_SYNTAX_ERR 501 | |
51 #define STAT_NO_PERMISSION 502 | |
52 #define STAT_PROGRAM_FAULT 503 | |
53 | |
54 /* | |
55 Read next line from f into Str, up to "\n" or "\r\n". Don't save "\n" | |
56 or "\r\n" in line. Terminate with '\0'. | |
57 */ | |
58 Bool | |
59 Prt_getLn( Str line, FILE *f ); | |
60 | |
61 /* | |
62 Read a text line from server. Returns TRUE if line != ".", removes | |
63 leading '.' otherwise. | |
64 */ | |
65 Bool | |
66 Prt_getTxtLn( Str line, Bool *err, FILE *f ); | |
67 | |
68 /* | |
69 Write text line to f. Escape "." at the beginning with another ".". | |
70 Terminate with "\r\n". | |
71 */ | |
72 Bool | |
73 Prt_putTxtLn( const char* line, FILE *f ); | |
74 | |
75 /* | |
76 Write text buffer of lines each ending with '\n'. | |
77 Replace '\n' by "\r\n". | |
78 */ | |
79 Bool | |
80 Prt_putTxtBuf( const char *buf, FILE *f ); | |
81 | |
82 /* | |
83 Write text-ending "."-line to f | |
84 */ | |
85 Bool | |
86 Prt_putEndOfTxt( FILE *f ); | |
87 | |
88 /* | |
89 Splits line in field and value. Field is converted to lower-case. | |
90 */ | |
91 Bool | |
92 Prt_getField( Str resultField, Str resultValue, const char* line ); | |
93 | |
94 /* Search header. Works only with single line headers (ignores continuation | |
95 lines */ | |
96 Bool | |
97 Prt_searchHeader( const char *artTxt, const char* which, Str result ); | |
98 | |
99 Bool | |
100 Prt_isValidMsgId( const char *msgId ); | |
101 | |
102 void | |
103 Prt_genMsgId( Str msgId, const char *from, const char *suffix ); | |
104 | |
105 #endif |