sigall-reverse.c revision 1.1.1.1 1 /* This testcase is part of GDB, the GNU debugger.
2
3 Copyright 2009-2014 Free Software Foundation, Inc.
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 3 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>. */
17
18 #include <signal.h>
19 #include <unistd.h>
20
21
22 /* Signal handlers, we set breakpoints in them to make sure that the
23 signals really get delivered. */
24
25 void
26 handle_ABRT (int sig)
27 {
28 }
29
30 void
31 handle_HUP (int sig)
32 {
33 }
34
35 void
36 handle_QUIT (int sig)
37 {
38 }
39
40 void
41 handle_ILL (int sig)
42 {
43 }
44
45 void
46 handle_EMT (int sig)
47 {
48 }
49
50 void
51 handle_FPE (int sig)
52 {
53 }
54
55 void
56 handle_BUS (int sig)
57 {
58 }
59
60 void
61 handle_SEGV (int sig)
62 {
63 }
64
65 void
66 handle_SYS (int sig)
67 {
68 }
69
70 void
71 handle_PIPE (int sig)
72 {
73 }
74
75 void
76 handle_ALRM (int sig)
77 {
78 }
79
80 void
81 handle_URG (int sig)
82 {
83 }
84
85 void
86 handle_TSTP (int sig)
87 {
88 }
89
90 void
91 handle_CONT (int sig)
92 {
93 }
94
95 void
96 handle_CHLD (int sig)
97 {
98 }
99
100 void
101 handle_TTIN (int sig)
102 {
103 }
104
105 void
106 handle_TTOU (int sig)
107 {
108 }
109
110 void
111 handle_IO (int sig)
112 {
113 }
114
115 void
116 handle_XCPU (int sig)
117 {
118 }
119
120 void
121 handle_XFSZ (int sig)
122 {
123 }
124
125 void
126 handle_VTALRM (int sig)
127 {
128 }
129
130 void
131 handle_PROF (int sig)
132 {
133 }
134
135 void
136 handle_WINCH (int sig)
137 {
138 }
139
140 void
141 handle_LOST (int sig)
142 {
143 }
144
145 void
146 handle_USR1 (int sig)
147 {
148 }
149
150 void
151 handle_USR2 (int sig)
152 {
153 }
154
155 void
156 handle_PWR (int sig)
157 {
158 }
159
160 void
161 handle_POLL (int sig)
162 {
163 }
164
165 void
166 handle_WIND (int sig)
167 {
168 }
169
170 void
171 handle_PHONE (int sig)
172 {
173 }
174
175 void
176 handle_WAITING (int sig)
177 {
178 }
179
180 void
181 handle_LWP (int sig)
182 {
183 }
184
185 void
186 handle_DANGER (int sig)
187 {
188 }
189
190 void
191 handle_GRANT (int sig)
192 {
193 }
194
195 void
196 handle_RETRACT (int sig)
197 {
198 }
199
200 void
201 handle_MSG (int sig)
202 {
203 }
204
205 void
206 handle_SOUND (int sig)
207 {
208 }
209
210 void
211 handle_SAK (int sig)
212 {
213 }
214
215 void
216 handle_PRIO (int sig)
217 {
218 }
219
220 void
221 handle_33 (int sig)
222 {
223 }
224
225 void
226 handle_34 (int sig)
227 {
228 }
229
230 void
231 handle_35 (int sig)
232 {
233 }
234
235 void
236 handle_36 (int sig)
237 {
238 }
239
240 void
241 handle_37 (int sig)
242 {
243 }
244
245 void
246 handle_38 (int sig)
247 {
248 }
249
250 void
251 handle_39 (int sig)
252 {
253 }
254
255 void
256 handle_40 (int sig)
257 {
258 }
259
260 void
261 handle_41 (int sig)
262 {
263 }
264
265 void
266 handle_42 (int sig)
267 {
268 }
269
270 void
271 handle_43 (int sig)
272 {
273 }
274
275 void
276 handle_44 (int sig)
277 {
278 }
279
280 void
281 handle_45 (int sig)
282 {
283 }
284
285 void
286 handle_46 (int sig)
287 {
288 }
289
290 void
291 handle_47 (int sig)
292 {
293 }
294
295 void
296 handle_48 (int sig)
297 {
298 }
299
300 void
301 handle_49 (int sig)
302 {
303 }
304
305 void
306 handle_50 (int sig)
307 {
308 }
309
310 void
311 handle_51 (int sig)
312 {
313 }
314
315 void
316 handle_52 (int sig)
317 {
318 }
319
320 void
321 handle_53 (int sig)
322 {
323 }
324
325 void
326 handle_54 (int sig)
327 {
328 }
329
330 void
331 handle_55 (int sig)
332 {
333 }
334
335 void
336 handle_56 (int sig)
337 {
338 }
339
340 void
341 handle_57 (int sig)
342 {
343 }
344
345 void
346 handle_58 (int sig)
347 {
348 }
349
350 void
351 handle_59 (int sig)
352 {
353 }
354
355 void
356 handle_60 (int sig)
357 {
358 }
359
360 void
361 handle_61 (int sig)
362 {
363 }
364
365 void
366 handle_62 (int sig)
367 {
368 }
369
370 void
371 handle_63 (int sig)
372 {
373 }
374
375 void
376 handle_TERM (int sig)
377 {
378 }
379
380 /* Functions to send signals. These also serve as markers. */
382 int
383 gen_ABRT (void)
384 {
385 kill (getpid (), SIGABRT);
386 return 0;
387 }
388
389 int
390 gen_HUP (void)
391 {
392 #ifdef SIGHUP
393 kill (getpid (), SIGHUP);
394 #else
395 handle_HUP (0);
396 #endif
397 return 0;
398 }
399
400 int
401 gen_QUIT (void)
402 {
403 #ifdef SIGQUIT
404 kill (getpid (), SIGQUIT);
405 #else
406 handle_QUIT (0);
407 #endif
408 return 0;
409 }
410
411 int
412 gen_ILL (void)
413 {
414 #ifdef SIGILL
415 kill (getpid (), SIGILL);
416 #else
417 handle_ILL (0);
418 #endif
419 return 0;
420 }
421
422 int
423 gen_EMT (void)
424 {
425 #ifdef SIGEMT
426 kill (getpid (), SIGEMT);
427 #else
428 handle_EMT (0);
429 #endif
430 return 0;
431 }
432
433 int x;
434
435 int
436 gen_FPE (void)
437 {
438 /* The intent behind generating SIGFPE this way is to check the mapping
439 from the CPU exception itself to the signals. It would be nice to
440 do the same for SIGBUS, SIGSEGV, etc., but I suspect that even this
441 test might turn out to be insufficiently portable. */
442
443 #if 0
444 /* Loses on the PA because after the signal handler executes we try to
445 re-execute the failing instruction again. Perhaps we could siglongjmp
446 out of the signal handler? */
447 /* The expect script looks for the word "kill"; don't delete it. */
448 return 5 / x; /* and we both started jumping up and down yelling kill */
449 #else
450 kill (getpid (), SIGFPE);
451 #endif
452 return 0;
453 }
454
455 int
456 gen_BUS (void)
457 {
458 #ifdef SIGBUS
459 kill (getpid (), SIGBUS);
460 #else
461 handle_BUS (0);
462 #endif
463 return 0;
464 }
465
466 int
467 gen_SEGV (void)
468 {
469 #ifdef SIGSEGV
470 kill (getpid (), SIGSEGV);
471 #else
472 handle_SEGV (0);
473 #endif
474 return 0;
475 }
476
477 int
478 gen_SYS (void)
479 {
480 #ifdef SIGSYS
481 kill (getpid (), SIGSYS);
482 #else
483 handle_SYS (0);
484 #endif
485 return 0;
486 }
487
488 int
489 gen_PIPE (void)
490 {
491 #ifdef SIGPIPE
492 kill (getpid (), SIGPIPE);
493 #else
494 handle_PIPE (0);
495 #endif
496 return 0;
497 }
498
499 int
500 gen_ALRM (void)
501 {
502 #ifdef SIGALRM
503 kill (getpid (), SIGALRM);
504 #else
505 handle_ALRM (0);
506 #endif
507 return 0;
508 }
509
510 int
511 gen_URG (void)
512 {
513 #ifdef SIGURG
514 kill (getpid (), SIGURG);
515 #else
516 handle_URG (0);
517 #endif
518 return 0;
519 }
520
521 int
522 gen_TSTP (void)
523 {
524 #ifdef SIGTSTP
525 kill (getpid (), SIGTSTP);
526 #else
527 handle_TSTP (0);
528 #endif
529 return 0;
530 }
531
532 int
533 gen_CONT (void)
534 {
535 #ifdef SIGCONT
536 kill (getpid (), SIGCONT);
537 #else
538 handle_CONT (0);
539 #endif
540 return 0;
541 }
542
543 int
544 gen_CHLD (void)
545 {
546 #ifdef SIGCHLD
547 kill (getpid (), SIGCHLD);
548 #else
549 handle_CHLD (0);
550 #endif
551 return 0;
552 }
553
554 int
555 gen_TTIN (void)
556 {
557 #ifdef SIGTTIN
558 kill (getpid (), SIGTTIN);
559 #else
560 handle_TTIN (0);
561 #endif
562 return 0;
563 }
564
565 int
566 gen_TTOU (void)
567 {
568 #ifdef SIGTTOU
569 kill (getpid (), SIGTTOU);
570 #else
571 handle_TTOU (0);
572 #endif
573 return 0;
574 }
575
576 int
577 gen_IO (void)
578 {
579 #ifdef SIGIO
580 kill (getpid (), SIGIO);
581 #else
582 handle_IO (0);
583 #endif
584 return 0;
585 }
586
587 int
588 gen_XCPU (void)
589 {
590 #ifdef SIGXCPU
591 kill (getpid (), SIGXCPU);
592 #else
593 handle_XCPU (0);
594 #endif
595 return 0;
596 }
597
598 int
599 gen_XFSZ (void)
600 {
601 #ifdef SIGXFSZ
602 kill (getpid (), SIGXFSZ);
603 #else
604 handle_XFSZ (0);
605 #endif
606 return 0;
607 }
608
609 int
610 gen_VTALRM (void)
611 {
612 #ifdef SIGVTALRM
613 kill (getpid (), SIGVTALRM);
614 #else
615 handle_VTALRM (0);
616 #endif
617 return 0;
618 }
619
620 int
621 gen_PROF (void)
622 {
623 #ifdef SIGPROF
624 kill (getpid (), SIGPROF);
625 #else
626 handle_PROF (0);
627 #endif
628 return 0;
629 }
630
631 int
632 gen_WINCH (void)
633 {
634 #ifdef SIGWINCH
635 kill (getpid (), SIGWINCH);
636 #else
637 handle_WINCH (0);
638 #endif
639 return 0;
640 }
641
642 int
643 gen_LOST (void)
644 {
645 #if defined(SIGLOST) && (!defined(SIGABRT) || SIGLOST != SIGABRT)
646 kill (getpid (), SIGLOST);
647 #else
648 handle_LOST (0);
649 #endif
650 return 0;
651 }
652
653 int
654 gen_USR1 (void)
655 {
656 #ifdef SIGUSR1
657 kill (getpid (), SIGUSR1);
658 #else
659 handle_USR1 (0);
660 #endif
661 return 0;
662 }
663
664 int
665 gen_USR2 (void)
666 {
667 #ifdef SIGUSR2
668 kill (getpid (), SIGUSR2);
669 #else
670 handle_USR2 (0);
671 #endif
672 return 0;
673 }
674
675 int
676 gen_PWR (void)
677 {
678 #ifdef SIGPWR
679 kill (getpid (), SIGPWR);
680 #else
681 handle_PWR (0);
682 #endif
683 return 0;
684 }
685
686 int
687 gen_POLL (void)
688 {
689 #if defined (SIGPOLL) && (!defined (SIGIO) || SIGPOLL != SIGIO)
690 kill (getpid (), SIGPOLL);
691 #else
692 handle_POLL (0);
693 #endif
694 return 0;
695 }
696
697 int
698 gen_WIND (void)
699 {
700 #ifdef SIGWIND
701 kill (getpid (), SIGWIND);
702 #else
703 handle_WIND (0);
704 #endif
705 return 0;
706 }
707
708 int
709 gen_PHONE (void)
710 {
711 #ifdef SIGPHONE
712 kill (getpid (), SIGPHONE);
713 #else
714 handle_PHONE (0);
715 #endif
716 return 0;
717 }
718
719 int
720 gen_WAITING (void)
721 {
722 #ifdef SIGWAITING
723 kill (getpid (), SIGWAITING);
724 #else
725 handle_WAITING (0);
726 #endif
727 return 0;
728 }
729
730 int
731 gen_LWP (void)
732 {
733 #ifdef SIGLWP
734 kill (getpid (), SIGLWP);
735 #else
736 handle_LWP (0);
737 #endif
738 return 0;
739 }
740
741 int
742 gen_DANGER (void)
743 {
744 #ifdef SIGDANGER
745 kill (getpid (), SIGDANGER);
746 #else
747 handle_DANGER (0);
748 #endif
749 return 0;
750 }
751
752 int
753 gen_GRANT (void)
754 {
755 #ifdef SIGGRANT
756 kill (getpid (), SIGGRANT);
757 #else
758 handle_GRANT (0);
759 #endif
760 return 0;
761 }
762
763 int
764 gen_RETRACT (void)
765 {
766 #ifdef SIGRETRACT
767 kill (getpid (), SIGRETRACT);
768 #else
769 handle_RETRACT (0);
770 #endif
771 return 0;
772 }
773
774 int
775 gen_MSG (void)
776 {
777 #ifdef SIGMSG
778 kill (getpid (), SIGMSG);
779 #else
780 handle_MSG (0);
781 #endif
782 return 0;
783 }
784
785 int
786 gen_SOUND (void)
787 {
788 #ifdef SIGSOUND
789 kill (getpid (), SIGSOUND);
790 #else
791 handle_SOUND (0);
792 #endif
793 return 0;
794 }
795
796 int
797 gen_SAK (void)
798 {
799 #ifdef SIGSAK
800 kill (getpid (), SIGSAK);
801 #else
802 handle_SAK (0);
803 #endif
804 return 0;
805 }
806
807 int
808 gen_PRIO (void)
809 {
810 #ifdef SIGPRIO
811 kill (getpid (), SIGPRIO);
812 #else
813 handle_PRIO (0);
814 #endif
815 return 0;
816 }
817
818 int
819 gen_33 (void)
820 {
821 #ifdef SIG33
822 kill (getpid (), 33);
823 #else
824 handle_33 (0);
825 #endif
826 return 0;
827 }
828
829 int
830 gen_34 (void)
831 {
832 #ifdef SIG34
833 kill (getpid (), 34);
834 #else
835 handle_34 (0);
836 #endif
837 return 0;
838 }
839
840 int
841 gen_35 (void)
842 {
843 #ifdef SIG35
844 kill (getpid (), 35);
845 #else
846 handle_35 (0);
847 #endif
848 return 0;
849 }
850
851 int
852 gen_36 (void)
853 {
854 #ifdef SIG36
855 kill (getpid (), 36);
856 #else
857 handle_36 (0);
858 #endif
859 return 0;
860 }
861
862 int
863 gen_37 (void)
864 {
865 #ifdef SIG37
866 kill (getpid (), 37);
867 #else
868 handle_37 (0);
869 #endif
870 return 0;
871 }
872
873 int
874 gen_38 (void)
875 {
876 #ifdef SIG38
877 kill (getpid (), 38);
878 #else
879 handle_38 (0);
880 #endif
881 return 0;
882 }
883
884 int
885 gen_39 (void)
886 {
887 #ifdef SIG39
888 kill (getpid (), 39);
889 #else
890 handle_39 (0);
891 #endif
892 return 0;
893 }
894
895 int
896 gen_40 (void)
897 {
898 #ifdef SIG40
899 kill (getpid (), 40);
900 #else
901 handle_40 (0);
902 #endif
903 return 0;
904 }
905
906 int
907 gen_41 (void)
908 {
909 #ifdef SIG41
910 kill (getpid (), 41);
911 #else
912 handle_41 (0);
913 #endif
914 return 0;
915 }
916
917 int
918 gen_42 (void)
919 {
920 #ifdef SIG42
921 kill (getpid (), 42);
922 #else
923 handle_42 (0);
924 #endif
925 return 0;
926 }
927
928 int
929 gen_43 (void)
930 {
931 #ifdef SIG43
932 kill (getpid (), 43);
933 #else
934 handle_43 (0);
935 #endif
936 return 0;
937 }
938
939 int
940 gen_44 (void)
941 {
942 #ifdef SIG44
943 kill (getpid (), 44);
944 #else
945 handle_44 (0);
946 #endif
947 return 0;
948 }
949
950 int
951 gen_45 (void)
952 {
953 #ifdef SIG45
954 kill (getpid (), 45);
955 #else
956 handle_45 (0);
957 #endif
958 return 0;
959 }
960
961 int
962 gen_46 (void)
963 {
964 #ifdef SIG46
965 kill (getpid (), 46);
966 #else
967 handle_46 (0);
968 #endif
969 return 0;
970 }
971
972 int
973 gen_47 (void)
974 {
975 #ifdef SIG47
976 kill (getpid (), 47);
977 #else
978 handle_47 (0);
979 #endif
980 return 0;
981 }
982
983 int
984 gen_48 (void)
985 {
986 #ifdef SIG48
987 kill (getpid (), 48);
988 #else
989 handle_48 (0);
990 #endif
991 return 0;
992 }
993
994 int
995 gen_49 (void)
996 {
997 #ifdef SIG49
998 kill (getpid (), 49);
999 #else
1000 handle_49 (0);
1001 #endif
1002 return 0;
1003 }
1004
1005 int
1006 gen_50 (void)
1007 {
1008 #ifdef SIG50
1009 kill (getpid (), 50);
1010 #else
1011 handle_50 (0);
1012 #endif
1013 return 0;
1014 }
1015
1016 int
1017 gen_51 (void)
1018 {
1019 #ifdef SIG51
1020 kill (getpid (), 51);
1021 #else
1022 handle_51 (0);
1023 #endif
1024 return 0;
1025 }
1026
1027 int
1028 gen_52 (void)
1029 {
1030 #ifdef SIG52
1031 kill (getpid (), 52);
1032 #else
1033 handle_52 (0);
1034 #endif
1035 return 0;
1036 }
1037
1038 int
1039 gen_53 (void)
1040 {
1041 #ifdef SIG53
1042 kill (getpid (), 53);
1043 #else
1044 handle_53 (0);
1045 #endif
1046 return 0;
1047 }
1048
1049 int
1050 gen_54 (void)
1051 {
1052 #ifdef SIG54
1053 kill (getpid (), 54);
1054 #else
1055 handle_54 (0);
1056 #endif
1057 return 0;
1058 }
1059
1060 int
1061 gen_55 (void)
1062 {
1063 #ifdef SIG55
1064 kill (getpid (), 55);
1065 #else
1066 handle_55 (0);
1067 #endif
1068 return 0;
1069 }
1070
1071 int
1072 gen_56 (void)
1073 {
1074 #ifdef SIG56
1075 kill (getpid (), 56);
1076 #else
1077 handle_56 (0);
1078 #endif
1079 return 0;
1080 }
1081
1082 int
1083 gen_57 (void)
1084 {
1085 #ifdef SIG57
1086 kill (getpid (), 57);
1087 #else
1088 handle_57 (0);
1089 #endif
1090 return 0;
1091 }
1092
1093 int
1094 gen_58 (void)
1095 {
1096 #ifdef SIG58
1097 kill (getpid (), 58);
1098 #else
1099 handle_58 (0);
1100 #endif
1101 return 0;
1102 }
1103
1104 int
1105 gen_59 (void)
1106 {
1107 #ifdef SIG59
1108 kill (getpid (), 59);
1109 #else
1110 handle_59 (0);
1111 #endif
1112 return 0;
1113 }
1114
1115 int
1116 gen_60 (void)
1117 {
1118 #ifdef SIG60
1119 kill (getpid (), 60);
1120 #else
1121 handle_60 (0);
1122 #endif
1123 return 0;
1124 }
1125
1126 int
1127 gen_61 (void)
1128 {
1129 #ifdef SIG61
1130 kill (getpid (), 61);
1131 #else
1132 handle_61 (0);
1133 #endif
1134 return 0;
1135 }
1136
1137 int
1138 gen_62 (void)
1139 {
1140 #ifdef SIG62
1141 kill (getpid (), 62);
1142 #else
1143 handle_62 (0);
1144 #endif
1145 return 0;
1146 }
1147
1148 int
1149 gen_63 (void)
1150 {
1151 #ifdef SIG63
1152 kill (getpid (), 63);
1153 #else
1154 handle_63 (0);
1155 #endif
1156 return 0;
1157 }
1158
1159 int
1160 gen_TERM (void)
1161 {
1162 kill (getpid (), SIGTERM);
1163 return 0;
1164 }
1165
1166 int
1168 main ()
1169 {
1170 #ifdef SIG_SETMASK
1171 /* Ensure all the signals aren't blocked.
1172 The environment in which the testsuite is run may have blocked some
1173 for whatever reason. */
1174 {
1175 sigset_t newset;
1176 sigemptyset (&newset);
1177 sigprocmask (SIG_SETMASK, &newset, NULL);
1178 }
1179 #endif
1180
1181 signal (SIGABRT, handle_ABRT);
1182 #ifdef SIGHUP
1183 signal (SIGHUP, handle_HUP);
1184 #endif
1185 #ifdef SIGQUIT
1186 signal (SIGQUIT, handle_QUIT);
1187 #endif
1188 #ifdef SIGILL
1189 signal (SIGILL, handle_ILL);
1190 #endif
1191 #ifdef SIGEMT
1192 signal (SIGEMT, handle_EMT);
1193 #endif
1194 #ifdef SIGFPE
1195 signal (SIGFPE, handle_FPE);
1196 #endif
1197 #ifdef SIGBUS
1198 signal (SIGBUS, handle_BUS);
1199 #endif
1200 #ifdef SIGSEGV
1201 signal (SIGSEGV, handle_SEGV);
1202 #endif
1203 #ifdef SIGSYS
1204 signal (SIGSYS, handle_SYS);
1205 #endif
1206 #ifdef SIGPIPE
1207 signal (SIGPIPE, handle_PIPE);
1208 #endif
1209 #ifdef SIGALRM
1210 signal (SIGALRM, handle_ALRM);
1211 #endif
1212 #ifdef SIGURG
1213 signal (SIGURG, handle_URG);
1214 #endif
1215 #ifdef SIGTSTP
1216 signal (SIGTSTP, handle_TSTP);
1217 #endif
1218 #ifdef SIGCONT
1219 signal (SIGCONT, handle_CONT);
1220 #endif
1221 #ifdef SIGCHLD
1222 signal (SIGCHLD, handle_CHLD);
1223 #endif
1224 #ifdef SIGTTIN
1225 signal (SIGTTIN, handle_TTIN);
1226 #endif
1227 #ifdef SIGTTOU
1228 signal (SIGTTOU, handle_TTOU);
1229 #endif
1230 #ifdef SIGIO
1231 signal (SIGIO, handle_IO);
1232 #endif
1233 #ifdef SIGXCPU
1234 signal (SIGXCPU, handle_XCPU);
1235 #endif
1236 #ifdef SIGXFSZ
1237 signal (SIGXFSZ, handle_XFSZ);
1238 #endif
1239 #ifdef SIGVTALRM
1240 signal (SIGVTALRM, handle_VTALRM);
1241 #endif
1242 #ifdef SIGPROF
1243 signal (SIGPROF, handle_PROF);
1244 #endif
1245 #ifdef SIGWINCH
1246 signal (SIGWINCH, handle_WINCH);
1247 #endif
1248 #if defined(SIGLOST) && (!defined(SIGABRT) || SIGLOST != SIGABRT)
1249 signal (SIGLOST, handle_LOST);
1250 #endif
1251 #ifdef SIGUSR1
1252 signal (SIGUSR1, handle_USR1);
1253 #endif
1254 #ifdef SIGUSR2
1255 signal (SIGUSR2, handle_USR2);
1256 #endif
1257 #ifdef SIGPWR
1258 signal (SIGPWR, handle_PWR);
1259 #endif
1260 #if defined (SIGPOLL) && (!defined (SIGIO) || SIGPOLL != SIGIO)
1261 signal (SIGPOLL, handle_POLL);
1262 #endif
1263 #ifdef SIGWIND
1264 signal (SIGWIND, handle_WIND);
1265 #endif
1266 #ifdef SIGPHONE
1267 signal (SIGPHONE, handle_PHONE);
1268 #endif
1269 #ifdef SIGWAITING
1270 signal (SIGWAITING, handle_WAITING);
1271 #endif
1272 #ifdef SIGLWP
1273 signal (SIGLWP, handle_LWP);
1274 #endif
1275 #ifdef SIGDANGER
1276 signal (SIGDANGER, handle_DANGER);
1277 #endif
1278 #ifdef SIGGRANT
1279 signal (SIGGRANT, handle_GRANT);
1280 #endif
1281 #ifdef SIGRETRACT
1282 signal (SIGRETRACT, handle_RETRACT);
1283 #endif
1284 #ifdef SIGMSG
1285 signal (SIGMSG, handle_MSG);
1286 #endif
1287 #ifdef SIGSOUND
1288 signal (SIGSOUND, handle_SOUND);
1289 #endif
1290 #ifdef SIGSAK
1291 signal (SIGSAK, handle_SAK);
1292 #endif
1293 #ifdef SIGPRIO
1294 signal (SIGPRIO, handle_PRIO);
1295 #endif
1296 #ifdef __Lynx__
1297 /* Lynx doesn't seem to have anything in signal.h for this. */
1298 signal (33, handle_33);
1299 signal (34, handle_34);
1300 signal (35, handle_35);
1301 signal (36, handle_36);
1302 signal (37, handle_37);
1303 signal (38, handle_38);
1304 signal (39, handle_39);
1305 signal (40, handle_40);
1306 signal (41, handle_41);
1307 signal (42, handle_42);
1308 signal (43, handle_43);
1309 signal (44, handle_44);
1310 signal (45, handle_45);
1311 signal (46, handle_46);
1312 signal (47, handle_47);
1313 signal (48, handle_48);
1314 signal (49, handle_49);
1315 signal (50, handle_50);
1316 signal (51, handle_51);
1317 signal (52, handle_52);
1318 signal (53, handle_53);
1319 signal (54, handle_54);
1320 signal (55, handle_55);
1321 signal (56, handle_56);
1322 signal (57, handle_57);
1323 signal (58, handle_58);
1324 signal (59, handle_59);
1325 signal (60, handle_60);
1326 signal (61, handle_61);
1327 signal (62, handle_62);
1328 signal (63, handle_63);
1329 #endif /* lynx */
1330 signal (SIGTERM, handle_TERM);
1331
1332 x = 0;
1333
1334 gen_ABRT ();
1335 gen_HUP ();
1336 gen_QUIT ();
1337 gen_ILL ();
1338 gen_EMT ();
1339 gen_FPE ();
1340 gen_BUS ();
1341 gen_SEGV ();
1342 gen_SYS ();
1343 gen_PIPE ();
1344 gen_ALRM ();
1345 gen_URG ();
1346 gen_TSTP ();
1347 gen_CONT ();
1348 gen_CHLD ();
1349 gen_TTIN ();
1350 gen_TTOU ();
1351 gen_IO ();
1352 gen_XCPU ();
1353 gen_XFSZ ();
1354 gen_VTALRM ();
1355 gen_PROF ();
1356 gen_WINCH ();
1357 gen_LOST ();
1358 gen_USR1 ();
1359 gen_USR2 ();
1360 gen_PWR ();
1361 gen_POLL ();
1362 gen_WIND ();
1363 gen_PHONE ();
1364 gen_WAITING ();
1365 gen_LWP ();
1366 gen_DANGER ();
1367 gen_GRANT ();
1368 gen_RETRACT ();
1369 gen_MSG ();
1370 gen_SOUND ();
1371 gen_SAK ();
1372 gen_PRIO ();
1373 gen_33 ();
1374 gen_34 ();
1375 gen_35 ();
1376 gen_36 ();
1377 gen_37 ();
1378 gen_38 ();
1379 gen_39 ();
1380 gen_40 ();
1381 gen_41 ();
1382 gen_42 ();
1383 gen_43 ();
1384 gen_44 ();
1385 gen_45 ();
1386 gen_46 ();
1387 gen_47 ();
1388 gen_48 ();
1389 gen_49 ();
1390 gen_50 ();
1391 gen_51 ();
1392 gen_52 ();
1393 gen_53 ();
1394 gen_54 ();
1395 gen_55 ();
1396 gen_56 ();
1397 gen_57 ();
1398 gen_58 ();
1399 gen_59 ();
1400 gen_60 ();
1401 gen_61 ();
1402 gen_62 ();
1403 gen_63 ();
1404 gen_TERM ();
1405
1406 return 0; /* end of main */
1407 }
1408