Mercurial > cpython-lru_cache-weakref
annotate Python/strerror.c @ 23252:4f335ca3f11c legacy-trunk
Ignore SIGXFSZ.
The SIGXFSZ signal is sent when the maximum file size limit is
exceeded (RLIMIT_FSIZE). Apparently, it is also sent when the 2GB
file limit is reached on platforms without large file support.
The default action for SIGXFSZ is to terminate the process and dump
core. When it is ignored, the system call that caused the limit to be
exceeded returns an error and sets errno to EFBIG. Python
always checks errno on I/O syscalls, so there is nothing to do with
the signal.
| author | Jeremy Hylton <jeremy@alum.mit.edu> |
|---|---|
| date | Tue, 23 Apr 2002 20:31:01 +0000 |
| parents | 379fc66f4c96 |
| children | 86fdf8fe7f17 |
| rev | line source |
|---|---|
| 145 | 1 |
|
61
5c4dd9348e81
Added provision for THINK C which doesn't have sys_nerrors or sys_errlist.
Guido van Rossum <guido@python.org>
parents:
6
diff
changeset
|
2 /* PD implementation of strerror() for systems that don't have it. |
| 6 | 3 Author: Guido van Rossum, CWI Amsterdam, Oct. 1990, <guido@cwi.nl>. */ |
| 4 | |
| 5 #include <stdio.h> | |
|
21077
379fc66f4c96
Use PyOS_snprintf instead of sprintf.
Jeremy Hylton <jeremy@alum.mit.edu>
parents:
14375
diff
changeset
|
6 #include "Python.h" |
| 6 | 7 |
| 8 extern int sys_nerr; | |
| 9 extern char *sys_errlist[]; | |
| 10 | |
| 11 char * | |
|
13658
f79434ee41fa
Mass ANSIfication of function definitions. Doesn't cover all 'extern'
Thomas Wouters <thomas@python.org>
parents:
13256
diff
changeset
|
12 strerror(int err) |
| 6 | 13 { |
| 14 static char buf[20]; | |
| 15 if (err >= 0 && err < sys_nerr) | |
| 16 return sys_errlist[err]; | |
|
21077
379fc66f4c96
Use PyOS_snprintf instead of sprintf.
Jeremy Hylton <jeremy@alum.mit.edu>
parents:
14375
diff
changeset
|
17 PyOS_snprintf(buf, sizeof(buf), "Unknown errno %d", err); |
| 6 | 18 return buf; |
| 19 } | |
|
61
5c4dd9348e81
Added provision for THINK C which doesn't have sys_nerrors or sys_errlist.
Guido van Rossum <guido@python.org>
parents:
6
diff
changeset
|
20 |
|
1848
b724599401ff
Merge back to main trunk
Guido van Rossum <guido@python.org>
parents:
1257
diff
changeset
|
21 #ifdef macintosh |
|
61
5c4dd9348e81
Added provision for THINK C which doesn't have sys_nerrors or sys_errlist.
Guido van Rossum <guido@python.org>
parents:
6
diff
changeset
|
22 int sys_nerr = 0; |
|
5c4dd9348e81
Added provision for THINK C which doesn't have sys_nerrors or sys_errlist.
Guido van Rossum <guido@python.org>
parents:
6
diff
changeset
|
23 char *sys_errlist[1] = 0; |
|
5c4dd9348e81
Added provision for THINK C which doesn't have sys_nerrors or sys_errlist.
Guido van Rossum <guido@python.org>
parents:
6
diff
changeset
|
24 #endif |
