home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / compsrcs / misc / volume29 / tin / part12 < prev    next >
Encoding:
Text File  |  1992-03-27  |  27.5 KB  |  712 lines

  1. Newsgroups: comp.sources.misc
  2. From: iain%anl433.uucp@germany.eu.net (Iain J. Lea)
  3. Subject:  v29i030:  tin - threaded full screen newsreader v1.1P1, Part12/12
  4. Message-ID: <1992Mar27.034007.3769@sparky.imd.sterling.com>
  5. X-Md4-Signature: 6db157ea46fa2c4c5f57b0c4046edc82
  6. Date: Fri, 27 Mar 1992 03:40:07 GMT
  7. Approved: kent@sparky.imd.sterling.com
  8.  
  9. Submitted-by: iain%anl433.uucp@germany.eu.net (Iain J. Lea)
  10. Posting-number: Volume 29, Issue 30
  11. Archive-name: tin/part12
  12. Environment: BSD, SCO, ISC, SUNOS, SYSVR3, SYSVR4, ULTRIX, XENIX
  13. Supersedes: tin: Volume 28, Issue 45-55
  14.  
  15. #!/bin/sh
  16. # this is tin.shar.12 (part 12 of tin1.1)
  17. # do not concatenate these parts, unpack them in order with /bin/sh
  18. # file nntp.h continued
  19. #
  20. if test ! -r _shar_seq_.tmp; then
  21.     echo 'Please unpack part 1 first!'
  22.     exit 1
  23. fi
  24. (read Scheck
  25.  if test "$Scheck" != 12; then
  26.     echo Please unpack part "$Scheck" next!
  27.     exit 1
  28.  else
  29.     exit 0
  30.  fi
  31. ) < _shar_seq_.tmp || exit 1
  32. if test ! -f _shar_wnt_.tmp; then
  33.     echo 'x - still skipping nntp.h'
  34. else
  35. echo 'x - continuing file nntp.h'
  36. sed 's/^X//' << 'SHAR_EOF' >> 'nntp.h' &&
  37. #define    ERR_CMDSYN        501    /* Command syntax error */
  38. #define    ERR_ACCESS        502    /* Access to server denied */
  39. #define ERR_FAULT        503    /* Program fault, command not performed */
  40. X    
  41. /*
  42. X * RFC 977 defines this; don't change it.
  43. X */
  44. X
  45. #define    NNTP_STRLEN        512
  46. X
  47. SHAR_EOF
  48. echo 'File nntp.h is complete' &&
  49. chmod 0600 nntp.h ||
  50. echo 'restore of nntp.h failed'
  51. Wc_c="`wc -c < 'nntp.h'`"
  52. test 3725 -eq "$Wc_c" ||
  53.     echo 'nntp.h: original size 3725, current size' "$Wc_c"
  54. rm -f _shar_wnt_.tmp
  55. fi
  56. # ============= proto.h ==============
  57. if test -f 'proto.h' -a X"$1" != X"-c"; then
  58.     echo 'x - skipping proto.h (File already exists)'
  59.     rm -f _shar_wnt_.tmp
  60. else
  61. > _shar_wnt_.tmp
  62. echo 'x - extracting proto.h (Text)'
  63. sed 's/^X//' << 'SHAR_EOF' > 'proto.h' &&
  64. #if __STDC__
  65. /* active.c */
  66. extern void resync_active_file(void);
  67. extern int read_active_file(void);
  68. extern int backup_active(int create);
  69. extern void notify_groups(void);
  70. /* art.c */
  71. extern void find_base(int only_unread);
  72. extern int num_of_arts(void);
  73. extern int valid_artnum(long art);
  74. extern int purge_needed(void);
  75. extern void index_group(char *group, char *group_path);
  76. extern int read_group(char *group, char *group_path);
  77. extern void make_threads(int rethread);
  78. extern int parse_headers(int fd, struct article_t *h);
  79. extern void dump_index_file(char *group, int killed);
  80. extern int load_index_file(char *group_name);
  81. extern void find_index_file(char *group);
  82. extern void do_update(void);
  83. extern void reload_index_file(char *group, int killed);
  84. extern char *parse_date(char *date, char *str);
  85. extern int artnum_comp(char *p1, char *p2);
  86. extern int subj_comp(char *p1, char *p2);
  87. extern int from_comp(char *p1, char *p2);
  88. extern int date_comp(char *p1, char *p2);
  89. extern void set_article(struct article_t *art);
  90. /* curses.c */
  91. extern int InitScreen(void);
  92. extern void ScreenSize(int *num_lines, int *num_columns);
  93. extern void InitWin(void);
  94. extern void EndWin(void);
  95. extern void ClearScreen(void);
  96. extern void MoveCursor(int row, int col);
  97. extern void CleartoEOLN(void);
  98. extern void CleartoEOS(void);
  99. extern void StartInverse(void);
  100. extern void EndInverse(void);
  101. extern int RawState(void);
  102. extern void Raw(int state);
  103. extern int ReadCh(void);
  104. extern int outchar(int c);
  105. /* debug.c */
  106. extern void debug_nntp(char *func, char *line);
  107. extern void debug_nntp_respcode(int respcode);
  108. extern void debug_print_arts(void);
  109. extern void debug_print_header(struct article_t *s);
  110. extern void debug_print_comment(char *comment);
  111. extern void debug_print_base(void);
  112. extern void debug_print_active(void);
  113. /* feed.c */
  114. extern void feed_articles(int function, int level, char *prompt, int respnum, char *group_path);
  115. extern void print_file(FILE *fp, int respnum, int count);
  116. /* getline.c */
  117. extern char *getline(char *prompt, int number_only, char *str);
  118. /* group.c */
  119. extern void group_page(char *group);
  120. extern void fix_new_highest(int groupnum);
  121. extern void show_group_page(char *group);
  122. extern void draw_subject_arrow(void);
  123. extern void erase_subject_arrow(void);
  124. extern int prompt_subject_num(int ch, char *group);
  125. extern void clear_note_area(void);
  126. extern int find_new_pos(int old_top, long old_artnum, int cur_pos);
  127. extern void mark_screen(int col, char *value);
  128. /* hashstr.c */
  129. extern char *hash_str(char *s);
  130. extern struct hashnode *add_string(char *s);
  131. extern void hash_init(void);
  132. extern void hash_reclaim(void);
  133. /* help.c */
  134. extern void show_info_page(int type, char *help[], char *title);
  135. /* inews.c */
  136. extern int submit_inews(char *name);
  137. /* init.c */
  138. extern void init_selfinfo(void);
  139. extern int create_mail_save_dirs(void);
  140. /* kill.c */
  141. extern int read_kill_file(void);
  142. extern void write_kill_file(void);
  143. extern int kill_art_menu(char *group_name, int index);
  144. extern int unkill_all_articles(void);
  145. extern int kill_any_articles(char *group);
  146. /* lang.c */
  147. /* main.c */
  148. extern void main(int argc, char *argv[]);
  149. extern void read_cmd_line_options(int argc, char *argv[]);
  150. extern void usage(char *progname);
  151. extern int check_for_any_new_news(int check_any_unread, int start_any_unread);
  152. extern void save_or_mail_new_news(void);
  153. extern void update_index_files(void);
  154. extern void show_intro_page(void);
  155. /* memory.c */
  156. extern void init_alloc(void);
  157. extern void expand_art(void);
  158. extern void expand_active(void);
  159. extern void expand_kill(void);
  160. extern void expand_save(void);
  161. extern void init_screen_array(int allocate);
  162. extern void free_all_arrays(void);
  163. extern void free_art_array(void);
  164. extern void free_active_arrays(void);
  165. extern void free_kill_array(void);
  166. extern void free_save_array(void);
  167. extern char *my_malloc(unsigned size);
  168. extern char *my_realloc(char *p, unsigned size);
  169. /* misc.c */
  170. extern void asfail(char *file, int line, char *cond);
  171. extern void copy_fp(FILE *fp_ip, FILE *fp_op, char *prefix);
  172. extern char *get_val(char *env, char *def);
  173. extern int invoke_editor(char *nam);
  174. extern void shell_escape(void);
  175. extern void tin_done(int ret);
  176. extern void mark_unthreaded_groups(void);
  177. extern long hash_groupname(char *group);
  178. extern void rename_file(char *old_filename, char *new_filename);
  179. extern char *str_dup(char *str);
  180. extern int invoke_cmd(char *nam);
  181. extern void draw_percent_mark(int cur_num, int max_num);
  182. extern void set_real_uid_gid(void);
  183. extern void set_tin_uid_gid(void);
  184. extern void basename(char *dirname, char *program);
  185. extern void mail_setup(void);
  186. extern int mail_check(void);
  187. extern void parse_from(char *str, char *addr, char *name);
  188. extern long my_atol(char *s, int n);
  189. extern char *eat_re(char *s);
  190. extern long hash_s(char *s);
  191. extern void my_strncpy(char *p, char *q, int n);
  192. extern int untag_all_articles(void);
  193. extern char *str_str(char *text, char *pattern, int patlen);
  194. extern void get_author(int thread, int respnum, char *str);
  195. extern void toggle_inverse_video(void);
  196. extern int get_arrow_key(void);
  197. /* newsrc.c */
  198. extern int auto_subscribe_groups(void);
  199. extern void backup_newsrc(void);
  200. extern void read_newsrc(int sub_only);
  201. extern void write_newsrc(void);
  202. extern void rewrite_newsrc(void);
  203. extern void read_newsrc_line(char *group);
  204. extern void update_newsrc(char *group, int groupnum, int mark_unread);
  205. extern void subscribe(char *group, int ch, int num, int out_seq);
  206. extern void reset_newsrc(void);
  207. extern void delete_group(char *group);
  208. extern int undel_group(void);
  209. extern void mark_group_read(char *group, int groupnum);
  210. extern void parse_seq(char *s);
  211. extern int parse_unread(char *s, int groupnum);
  212. extern int get_line_unread(char *group, int groupnum);
  213. extern void print_seq(FILE *fp, int groupnum);
  214. extern int pos_group_in_newsrc(char *group, int pos);
  215. extern void mark_all_xref_read(char *xref_line);
  216. /* open.c */
  217. extern char *is_remote(void);
  218. extern void nntp_startup(void);
  219. extern void nntp_finish(void);
  220. extern FILE *open_active_fp(void);
  221. extern FILE *open_subscription_fp(void);
  222. extern FILE *open_index_fp(char *group_name);
  223. extern FILE *open_art_fp(char *group_path, long art);
  224. extern int open_header_fd(char *group_path, long art);
  225. extern int base_comp(char *p1, char *p2);
  226. extern void setup_base(char *group, char *group_path);
  227. extern int get_respcode(void);
  228. extern int stuff_nntp(char *fnam);
  229. extern FILE *nntp_to_fp(void);
  230. extern int nntp_to_fd(void);
  231. extern void log_user(void);
  232. extern char *nntp_respcode(int respcode);
  233. /* page.c */
  234. extern int show_page(int respnum, char *group, char *group_path);
  235. extern void redraw_page(int respnum, char *group);
  236. extern void show_note_page(int respnum, char *group);
  237. extern void show_first_header(int respnum, char *group);
  238. extern void show_cont_header(int respnum);
  239. extern int art_open(long art, char *group_path);
  240. extern void art_close(void);
  241. extern int prompt_response(int ch, int respnum);
  242. extern void yank_to_addr(char *orig, char *addr);
  243. extern int show_last_page(void);
  244. extern int match_header(char *buf, char *pat, char *body, int len);
  245. /* post.c */
  246. extern int user_posted_messages(void);
  247. extern void update_art_posted_file(char *group, char *subj);
  248. extern int post_base(char *group, int *posted);
  249. extern int post_response(char *group, int respnum, int copy_text);
  250. extern int mail_to_someone(char *address, int confirm_to_mail);
  251. extern int mail_bug_report(void);
  252. extern int mail_to_author(int respnum, int copy_text);
  253. extern void find_mail_header(int header, char *file, char *value);
  254. extern int cancel_article(void);
  255. extern int submit_file(char *name);
  256. extern void add_signature(FILE *fp, int flag);
  257. /* prompt.c */
  258. extern int prompt_num(int ch, char *prompt);
  259. extern int prompt_string(char *prompt, char *buf);
  260. extern int prompt_menu_string(int line, int col, char *var);
  261. extern int prompt_yn(int line, char *prompt, int default_ch);
  262. extern void prompt_on_off(int row, int col, int *var, char *help_text, char *prompt_text);
  263. extern void continue_prompt(void);
  264. /* rcfile.c */
  265. extern int read_rcfile(void);
  266. extern void write_rcfile(void);
  267. extern int change_rcfile(char *group, int kill_at_once);
  268. extern void show_rcfile_menu(void);
  269. extern void expand_rel_abs_pathname(int line, int col, char *str);
  270. extern void show_menu_help(char *help_message);
  271. /* save.c */
  272. extern int check_start_save_any_news(int check_start_save);
  273. extern int save_art_to_file(int respnum, int index, int mailbox, char *filename);
  274. extern int save_thread_to_file(int is_mailbox, char *group_path);
  275. extern int save_regex_arts(int is_mailbox, char *group_path);
  276. extern int append_to_existing_file(int i);
  277. extern int create_path(char *path);
  278. extern int create_sub_dir(int i);
  279. extern void add_to_save_list(int index, struct article_t *article, int is_mailbox, char *path);
  280. extern void sort_save_list(void);
  281. extern int save_comp(char *p1, char *p2);
  282. extern char *save_filename(int i);
  283. extern char *get_first_savefile(void);
  284. extern char *get_last_savefile(void);
  285. extern int post_process_files(int proc_type_ch);
  286. extern void post_process_uud(int pp);
  287. extern void post_process_sh(void);
  288. extern char *get_archive_file(char *dir, char *ext);
  289. extern void delete_processed_files(void);
  290. /* screen.c */
  291. extern void info_message(char *str);
  292. extern void wait_message(char *str);
  293. extern void error_message(char *template, char *str);
  294. extern void clear_message(void);
  295. extern void center_line(int line, int inverse, char *str);
  296. extern void draw_arrow(int line);
  297. extern void erase_arrow(int line);
  298. extern void show_title(char *title);
  299. extern void ring_bell(void);
  300. /* search.c */
  301. extern int search_author(int only_unread, int current_art, int forward);
  302. extern void search_group(int forward);
  303. extern void search_subject(int forward, char *group);
  304. extern int search_article(int forward);
  305. extern void make_lower(char *s, char *t);
  306. /* select.c */
  307. extern void selection_index(int start_groupnum);
  308. extern void group_selection_page(void);
  309. extern int prompt_group_num(int ch);
  310. extern void erase_group_arrow(void);
  311. extern void draw_group_arrow(void);
  312. extern int choose_new_group(void);
  313. extern int add_group(char *s, int get_unread);
  314. extern int reposition_group(char *group, int default_num);
  315. extern void catchup_group(int goto_next_unread_group);
  316. extern void next_unread_group(int enter_group);
  317. /* signal.c */
  318. extern void set_signal_handlers(void);
  319. extern void set_alarm_signal(void);
  320. extern void signal_handler(int sig);
  321. extern void set_win_size(int *num_lines, int *num_cols);
  322. extern void set_signals_art(void);
  323. extern void set_signals_group(void);
  324. extern void set_signals_page(void);
  325. extern void set_signals_select(void);
  326. extern void set_signals_thread(void);
  327. extern void art_suspend(int sig);
  328. extern void main_suspend(int sig);
  329. extern void select_suspend(int sig);
  330. extern void group_suspend(int sig);
  331. extern void page_suspend(int sig);
  332. extern void thread_suspend(int sig);
  333. extern void rcfile_suspend(int sig);
  334. extern void art_resize(int sig);
  335. extern void main_resize(int sig);
  336. extern void select_resize(int sig);
  337. extern void group_resize(int sig);
  338. extern void page_resize(int sig);
  339. extern void thread_resize(int sig);
  340. /* thread.c */
  341. extern int show_thread(int respnum, char *group, char *group_path);
  342. extern void show_thread_page(void);
  343. extern void draw_thread_arrow(void);
  344. extern void erase_thread_arrow(void);
  345. extern int prompt_thread_num(int ch);
  346. extern int new_responses(int thread);
  347. extern int which_thread(int n);
  348. extern int which_response(int n);
  349. extern int num_of_responses(int n);
  350. extern int next_response(int n);
  351. extern int next_thread(int n);
  352. extern int prev_response(int n);
  353. extern int choose_response(int i, int n);
  354. extern int next_unread(int n);
  355. extern int prev_unread(int n);
  356. /* wildmat.c */
  357. extern int wildmat(char *text, char *p);
  358. #else
  359. /* active.c */
  360. extern void resync_active_file(/*void*/);
  361. extern int read_active_file(/*void*/);
  362. extern int backup_active(/*int create*/);
  363. extern void notify_groups(/*void*/);
  364. /* art.c */
  365. extern void find_base(/*int only_unread*/);
  366. extern int num_of_arts(/*void*/);
  367. extern int valid_artnum(/*long art*/);
  368. extern int purge_needed(/*void*/);
  369. extern void index_group(/*char *group, char *group_path*/);
  370. extern int read_group(/*char *group, char *group_path*/);
  371. extern void make_threads(/*int rethread*/);
  372. extern int parse_headers(/*int fd, struct article_t *h*/);
  373. extern void dump_index_file(/*char *group, int killed*/);
  374. extern int load_index_file(/*char *group_name*/);
  375. extern void find_index_file(/*char *group*/);
  376. extern void do_update(/*void*/);
  377. extern void reload_index_file(/*char *group, int killed*/);
  378. extern char *parse_date(/*char *date, char *str*/);
  379. extern int artnum_comp(/*char *p1, char *p2*/);
  380. extern int subj_comp(/*char *p1, char *p2*/);
  381. extern int from_comp(/*char *p1, char *p2*/);
  382. extern int date_comp(/*char *p1, char *p2*/);
  383. extern void set_article(/*struct article_t *art*/);
  384. /* curses.c */
  385. extern int InitScreen(/*void*/);
  386. extern void ScreenSize(/*int *num_lines, int *num_columns*/);
  387. extern void InitWin(/*void*/);
  388. extern void EndWin(/*void*/);
  389. extern void ClearScreen(/*void*/);
  390. extern void MoveCursor(/*int row, int col*/);
  391. extern void CleartoEOLN(/*void*/);
  392. extern void CleartoEOS(/*void*/);
  393. extern void StartInverse(/*void*/);
  394. extern void EndInverse(/*void*/);
  395. extern int RawState(/*void*/);
  396. extern void Raw(/*int state*/);
  397. extern int ReadCh(/*void*/);
  398. extern int outchar(/*int c*/);
  399. /* debug.c */
  400. extern void debug_nntp(/*char *func, char *line*/);
  401. extern void debug_nntp_respcode(/*int respcode*/);
  402. extern void debug_print_arts(/*void*/);
  403. extern void debug_print_header(/*struct article_t *s*/);
  404. extern void debug_print_comment(/*char *comment*/);
  405. extern void debug_print_base(/*void*/);
  406. extern void debug_print_active(/*void*/);
  407. /* feed.c */
  408. extern void feed_articles(/*int function, int level, char *prompt, int respnum, char *group_path*/);
  409. extern void print_file(/*FILE *fp, int respnum, int count*/);
  410. /* getline.c */
  411. extern char *getline(/*char *prompt, int number_only, char *str*/);
  412. /* group.c */
  413. extern void group_page(/*char *group*/);
  414. extern void fix_new_highest(/*int groupnum*/);
  415. extern void show_group_page(/*char *group*/);
  416. extern void draw_subject_arrow(/*void*/);
  417. extern void erase_subject_arrow(/*void*/);
  418. extern int prompt_subject_num(/*int ch, char *group*/);
  419. extern void clear_note_area(/*void*/);
  420. extern int find_new_pos(/*int old_top, long old_artnum, int cur_pos*/);
  421. extern void mark_screen(/*int col, char *value*/);
  422. /* hashstr.c */
  423. extern char *hash_str(/*char *s*/);
  424. extern struct hashnode *add_string(/*char *s*/);
  425. extern void hash_init(/*void*/);
  426. extern void hash_reclaim(/*void*/);
  427. /* help.c */
  428. extern void show_info_page(/*int type, char *help[], char *title*/);
  429. /* inews.c */
  430. extern int submit_inews(/*char *name*/);
  431. /* init.c */
  432. extern void init_selfinfo(/*void*/);
  433. extern int create_mail_save_dirs(/*void*/);
  434. /* kill.c */
  435. extern int read_kill_file(/*void*/);
  436. extern void write_kill_file(/*void*/);
  437. extern int kill_art_menu(/*char *group_name, int index*/);
  438. extern int unkill_all_articles(/*void*/);
  439. extern int kill_any_articles(/*char *group*/);
  440. /* lang.c */
  441. /* main.c */
  442. extern void main(/*int argc, char *argv[]*/);
  443. extern void read_cmd_line_options(/*int argc, char *argv[]*/);
  444. extern void usage(/*char *progname*/);
  445. extern int check_for_any_new_news(/*int check_any_unread, int start_any_unread*/);
  446. extern void save_or_mail_new_news(/*void*/);
  447. extern void update_index_files(/*void*/);
  448. extern void show_intro_page(/*void*/);
  449. /* memory.c */
  450. extern void init_alloc(/*void*/);
  451. extern void expand_art(/*void*/);
  452. extern void expand_active(/*void*/);
  453. extern void expand_kill(/*void*/);
  454. extern void expand_save(/*void*/);
  455. extern void init_screen_array(/*int allocate*/);
  456. extern void free_all_arrays(/*void*/);
  457. extern void free_art_array(/*void*/);
  458. extern void free_active_arrays(/*void*/);
  459. extern void free_kill_array(/*void*/);
  460. extern void free_save_array(/*void*/);
  461. extern char *my_malloc(/*unsigned size*/);
  462. extern char *my_realloc(/*char *p, unsigned size*/);
  463. /* misc.c */
  464. extern void asfail(/*char *file, int line, char *cond*/);
  465. extern void copy_fp(/*FILE *fp_ip, FILE *fp_op, char *prefix*/);
  466. extern char *get_val(/*char *env, char *def*/);
  467. extern int invoke_editor(/*char *nam*/);
  468. extern void shell_escape(/*void*/);
  469. extern void tin_done(/*int ret*/);
  470. extern void mark_unthreaded_groups(/*void*/);
  471. extern long hash_groupname(/*char *group*/);
  472. extern void rename_file(/*char *old_filename, char *new_filename*/);
  473. extern char *str_dup(/*char *str*/);
  474. extern int invoke_cmd(/*char *nam*/);
  475. extern void draw_percent_mark(/*int cur_num, int max_num*/);
  476. extern void set_real_uid_gid(/*void*/);
  477. extern void set_tin_uid_gid(/*void*/);
  478. extern void basename(/*char *dirname, char *program*/);
  479. extern void mail_setup(/*void*/);
  480. extern int mail_check(/*void*/);
  481. extern void parse_from(/*char *str, char *addr, char *name*/);
  482. extern long my_atol(/*char *s, int n*/);
  483. extern char *eat_re(/*char *s*/);
  484. extern long hash_s(/*char *s*/);
  485. extern void my_strncpy(/*char *p, char *q, int n*/);
  486. extern int untag_all_articles(/*void*/);
  487. extern char *str_str(/*char *text, char *pattern, int patlen*/);
  488. extern void get_author(/*int thread, int respnum, char *str*/);
  489. extern void toggle_inverse_video(/*void*/);
  490. extern int get_arrow_key(/*void*/);
  491. /* newsrc.c */
  492. extern int auto_subscribe_groups(/*void*/);
  493. extern void backup_newsrc(/*void*/);
  494. extern void read_newsrc(/*int sub_only*/);
  495. extern void write_newsrc(/*void*/);
  496. extern void rewrite_newsrc(/*void*/);
  497. extern void read_newsrc_line(/*char *group*/);
  498. extern void update_newsrc(/*char *group, int groupnum, int mark_unread*/);
  499. extern void subscribe(/*char *group, int ch, int num, int out_seq*/);
  500. extern void reset_newsrc(/*void*/);
  501. extern void delete_group(/*char *group*/);
  502. extern int undel_group(/*void*/);
  503. extern void mark_group_read(/*char *group, int groupnum*/);
  504. extern void parse_seq(/*char *s*/);
  505. extern int parse_unread(/*char *s, int groupnum*/);
  506. extern int get_line_unread(/*char *group, int groupnum*/);
  507. extern void print_seq(/*FILE *fp, int groupnum*/);
  508. extern int pos_group_in_newsrc(/*char *group, int pos*/);
  509. extern void mark_all_xref_read(/*char *xref_line*/);
  510. /* open.c */
  511. extern char *is_remote(/*void*/);
  512. extern void nntp_startup(/*void*/);
  513. extern void nntp_finish(/*void*/);
  514. extern FILE *open_active_fp(/*void*/);
  515. extern FILE *open_subscription_fp(/*void*/);
  516. extern FILE *open_index_fp(/*char *group_name*/);
  517. extern FILE *open_art_fp(/*char *group_path, long art*/);
  518. extern int open_header_fd(/*char *group_path, long art*/);
  519. extern int base_comp(/*char *p1, char *p2*/);
  520. extern void setup_base(/*char *group, char *group_path*/);
  521. extern int get_respcode(/*void*/);
  522. extern int stuff_nntp(/*char *fnam*/);
  523. extern FILE *nntp_to_fp(/*void*/);
  524. extern int nntp_to_fd(/*void*/);
  525. extern void log_user(/*void*/);
  526. extern char *nntp_respcode(/*int respcode*/);
  527. /* page.c */
  528. extern int show_page(/*int respnum, char *group, char *group_path*/);
  529. extern void redraw_page(/*int respnum, char *group*/);
  530. extern void show_note_page(/*int respnum, char *group*/);
  531. extern void show_first_header(/*int respnum, char *group*/);
  532. extern void show_cont_header(/*int respnum*/);
  533. extern int art_open(/*long art, char *group_path*/);
  534. extern void art_close(/*void*/);
  535. extern int prompt_response(/*int ch, int respnum*/);
  536. extern void yank_to_addr(/*char *orig, char *addr*/);
  537. extern int show_last_page(/*void*/);
  538. extern int match_header(/*char *buf, char *pat, char *body, int len*/);
  539. /* post.c */
  540. extern int user_posted_messages(/*void*/);
  541. extern void update_art_posted_file(/*char *group, char *subj*/);
  542. extern int post_base(/*char *group, int *posted*/);
  543. extern int post_response(/*char *group, int respnum, int copy_text*/);
  544. extern int mail_to_someone(/*char *address, int confirm_to_mail*/);
  545. extern int mail_bug_report(/*void*/);
  546. extern int mail_to_author(/*int respnum, int copy_text*/);
  547. extern void find_mail_header(/*int header, char *file, char *value*/);
  548. extern int cancel_article(/*void*/);
  549. extern int submit_file(/*char *name*/);
  550. extern void add_signature(/*FILE *fp, int flag*/);
  551. /* prompt.c */
  552. extern int prompt_num(/*int ch, char *prompt*/);
  553. extern int prompt_string(/*char *prompt, char *buf*/);
  554. extern int prompt_menu_string(/*int line, int col, char *var*/);
  555. extern int prompt_yn(/*int line, char *prompt, int default_ch*/);
  556. extern void prompt_on_off(/*int row, int col, int *var, char *help_text, char *prompt_text*/);
  557. extern void continue_prompt(/*void*/);
  558. /* rcfile.c */
  559. extern int read_rcfile(/*void*/);
  560. extern void write_rcfile(/*void*/);
  561. extern int change_rcfile(/*char *group, int kill_at_once*/);
  562. extern void show_rcfile_menu(/*void*/);
  563. extern void expand_rel_abs_pathname(/*int line, int col, char *str*/);
  564. extern void show_menu_help(/*char *help_message*/);
  565. /* save.c */
  566. extern int check_start_save_any_news(/*int check_start_save*/);
  567. extern int save_art_to_file(/*int respnum, int index, int mailbox, char *filename*/);
  568. extern int save_thread_to_file(/*int is_mailbox, char *group_path*/);
  569. extern int save_regex_arts(/*int is_mailbox, char *group_path*/);
  570. extern int append_to_existing_file(/*int i*/);
  571. extern int create_path(/*char *path*/);
  572. extern int create_sub_dir(/*int i*/);
  573. extern void add_to_save_list(/*int index, struct article_t *article, int is_mailbox, char *path*/);
  574. extern void sort_save_list(/*void*/);
  575. extern int save_comp(/*char *p1, char *p2*/);
  576. extern char *save_filename(/*int i*/);
  577. extern char *get_first_savefile(/*void*/);
  578. extern char *get_last_savefile(/*void*/);
  579. extern int post_process_files(/*int proc_type_ch*/);
  580. extern void post_process_uud(/*int pp*/);
  581. extern void post_process_sh(/*void*/);
  582. extern char *get_archive_file(/*char *dir, char *ext*/);
  583. extern void delete_processed_files(/*void*/);
  584. /* screen.c */
  585. extern void info_message(/*char *str*/);
  586. extern void wait_message(/*char *str*/);
  587. extern void error_message(/*char *template, char *str*/);
  588. extern void clear_message(/*void*/);
  589. extern void center_line(/*int line, int inverse, char *str*/);
  590. extern void draw_arrow(/*int line*/);
  591. extern void erase_arrow(/*int line*/);
  592. extern void show_title(/*char *title*/);
  593. extern void ring_bell(/*void*/);
  594. /* search.c */
  595. extern int search_author(/*int only_unread, int current_art, int forward*/);
  596. extern void search_group(/*int forward*/);
  597. extern void search_subject(/*int forward, char *group*/);
  598. extern int search_article(/*int forward*/);
  599. extern void make_lower(/*char *s, char *t*/);
  600. /* select.c */
  601. extern void selection_index(/*int start_groupnum*/);
  602. extern void group_selection_page(/*void*/);
  603. extern int prompt_group_num(/*int ch*/);
  604. extern void erase_group_arrow(/*void*/);
  605. extern void draw_group_arrow(/*void*/);
  606. extern int choose_new_group(/*void*/);
  607. extern int add_group(/*char *s, int get_unread*/);
  608. extern int reposition_group(/*char *group, int default_num*/);
  609. extern void catchup_group(/*int goto_next_unread_group*/);
  610. extern void next_unread_group(/*int enter_group*/);
  611. /* signal.c */
  612. extern void set_signal_handlers(/*void*/);
  613. extern void set_alarm_signal(/*void*/);
  614. extern void signal_handler(/*int sig*/);
  615. extern void set_win_size(/*int *num_lines, int *num_cols*/);
  616. extern void set_signals_art(/*void*/);
  617. extern void set_signals_group(/*void*/);
  618. extern void set_signals_page(/*void*/);
  619. extern void set_signals_select(/*void*/);
  620. extern void set_signals_thread(/*void*/);
  621. extern void art_suspend(/*int sig*/);
  622. extern void main_suspend(/*int sig*/);
  623. extern void select_suspend(/*int sig*/);
  624. extern void group_suspend(/*int sig*/);
  625. extern void page_suspend(/*int sig*/);
  626. extern void thread_suspend(/*int sig*/);
  627. extern void rcfile_suspend(/*int sig*/);
  628. extern void art_resize(/*int sig*/);
  629. extern void main_resize(/*int sig*/);
  630. extern void select_resize(/*int sig*/);
  631. extern void group_resize(/*int sig*/);
  632. extern void page_resize(/*int sig*/);
  633. extern void thread_resize(/*int sig*/);
  634. /* thread.c */
  635. extern int show_thread(/*int respnum, char *group, char *group_path*/);
  636. extern void show_thread_page(/*void*/);
  637. extern void draw_thread_arrow(/*void*/);
  638. extern void erase_thread_arrow(/*void*/);
  639. extern int prompt_thread_num(/*int ch*/);
  640. extern int new_responses(/*int thread*/);
  641. extern int which_thread(/*int n*/);
  642. extern int which_response(/*int n*/);
  643. extern int num_of_responses(/*int n*/);
  644. extern int next_response(/*int n*/);
  645. extern int next_thread(/*int n*/);
  646. extern int prev_response(/*int n*/);
  647. extern int choose_response(/*int i, int n*/);
  648. extern int next_unread(/*int n*/);
  649. extern int prev_unread(/*int n*/);
  650. /* wildmat.c */
  651. extern int wildmat(/*char *text, char *p*/);
  652. #endif
  653. SHAR_EOF
  654. chmod 0600 proto.h ||
  655. echo 'restore of proto.h failed'
  656. Wc_c="`wc -c < 'proto.h'`"
  657. test 24466 -eq "$Wc_c" ||
  658.     echo 'proto.h: original size 24466, current size' "$Wc_c"
  659. rm -f _shar_wnt_.tmp
  660. fi
  661. # ============= patchlev.h ==============
  662. if test -f 'patchlev.h' -a X"$1" != X"-c"; then
  663.     echo 'x - skipping patchlev.h (File already exists)'
  664.     rm -f _shar_wnt_.tmp
  665. else
  666. > _shar_wnt_.tmp
  667. echo 'x - extracting patchlev.h (Text)'
  668. sed 's/^X//' << 'SHAR_EOF' > 'patchlev.h' &&
  669. /*
  670. X *  Project   : tin - a threaded Netnews reader
  671. X *  Module    : patchlev.h
  672. X *  Author    : I.Lea
  673. X *  Created   : 01-04-91
  674. X *  Updated   : 22-03-92
  675. X *  Notes     :
  676. X *  Copyright : (c) Copyright 1991-92 by Iain Lea
  677. X *              You may  freely  copy or  redistribute  this software,
  678. X *              so  long as there is no profit made from its use, sale
  679. X *              trade or  reproduction.  You may not change this copy-
  680. X *              right notice, and it must be included in any copy made
  681. X */
  682. X
  683. #define VERSION        "1.1"    /* Beta versions are "1.n Beta" */
  684. #define PATCHLEVEL    1
  685. SHAR_EOF
  686. chmod 0600 patchlev.h ||
  687. echo 'restore of patchlev.h failed'
  688. Wc_c="`wc -c < 'patchlev.h'`"
  689. test 584 -eq "$Wc_c" ||
  690.     echo 'patchlev.h: original size 584, current size' "$Wc_c"
  691. rm -f _shar_wnt_.tmp
  692. fi
  693. rm -f _shar_seq_.tmp
  694. echo You have unpacked the last part
  695. exit 0
  696.  
  697. --
  698. NAME   Iain Lea 
  699. EMAIL  iain%anl433.uucp@germany.eu.net
  700. SNAIL  Siemens AG, ANL A433SZ, Gruendlacher Str. 248, 8510 Fuerth, Germany.
  701. PHONE  +49-911-3089-407 (work) +49-911-331963 (home) +49-911-3089-290 (FAX)  
  702. -- 
  703.  Dr. med. dipl.-math Dieter Becker           Tel.: (0 / +49) 6841 - 16 3046
  704.  Medizinische Universitaets- und Poliklinik  Fax.: (0 / +49) 6841 - 16 3369
  705.  Innere Medizin III                         
  706.  D - 6650 Homburg / Saar                     Email: becker@med-in.uni-sb.de
  707. exit 0 # Just in case...
  708.