panic.c (54158) | panic.c (82973) |
---|---|
1/* 2 * panic.c - terminate fast in case of error 3 * Copyright (C) 1993 Thomas Koenig 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 11 unchanged lines hidden (view full) --- 20 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 21 * THEORY OF LIABILITY, WETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 */ 25 26#ifndef lint 27static const char rcsid[] = | 1/* 2 * panic.c - terminate fast in case of error 3 * Copyright (C) 1993 Thomas Koenig 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 11 unchanged lines hidden (view full) --- 20 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 21 * THEORY OF LIABILITY, WETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 */ 25 26#ifndef lint 27static const char rcsid[] = |
28 "$FreeBSD: head/usr.bin/at/panic.c 54158 1999-12-05 19:57:14Z charnier $"; | 28 "$FreeBSD: head/usr.bin/at/panic.c 82973 2001-09-04 16:15:51Z ru $"; |
29#endif /* not lint */ 30 31/* System Headers */ 32 33#include <err.h> 34#include <errno.h> 35#include <stdio.h> 36#include <stdlib.h> 37#include <unistd.h> 38 39/* Local headers */ 40 41#include "panic.h" | 29#endif /* not lint */ 30 31/* System Headers */ 32 33#include <err.h> 34#include <errno.h> 35#include <stdio.h> 36#include <stdlib.h> 37#include <unistd.h> 38 39/* Local headers */ 40 41#include "panic.h" |
42#include "privs.h" |
|
42#include "at.h" 43 44/* External variables */ 45 46/* Global functions */ 47 48void 49panic(char *a) 50{ 51/* Something fatal has happened, print error message and exit. 52 */ | 43#include "at.h" 44 45/* External variables */ 46 47/* Global functions */ 48 49void 50panic(char *a) 51{ 52/* Something fatal has happened, print error message and exit. 53 */ |
53 if (fcreated) | 54 if (fcreated) { 55 PRIV_START |
54 unlink(atfile); | 56 unlink(atfile); |
57 PRIV_END 58 } |
|
55 56 errx(EXIT_FAILURE, "%s", a); 57} 58 59void 60perr(char *a) 61{ 62/* Some operating system error; print error message and exit. 63 */ 64 int serrno = errno; 65 | 59 60 errx(EXIT_FAILURE, "%s", a); 61} 62 63void 64perr(char *a) 65{ 66/* Some operating system error; print error message and exit. 67 */ 68 int serrno = errno; 69 |
66 if (fcreated) | 70 if (fcreated) { 71 PRIV_START |
67 unlink(atfile); | 72 unlink(atfile); |
73 PRIV_END 74 } |
|
68 69 errno = serrno; 70 err(EXIT_FAILURE, "%s", a); 71} 72 73void 74usage(void) 75{ 76 /* Print usage and exit. */ 77 fprintf(stderr, "usage: at [-V] [-q x] [-f file] [-m] time\n" 78 " at [-V] -c job [job ...]\n" 79 " atq [-V] [-q x] [-v]\n" 80 " atrm [-V] job [job ...]\n" 81 " batch [-V] [-f file] [-m]\n"); 82 exit(EXIT_FAILURE); 83} | 75 76 errno = serrno; 77 err(EXIT_FAILURE, "%s", a); 78} 79 80void 81usage(void) 82{ 83 /* Print usage and exit. */ 84 fprintf(stderr, "usage: at [-V] [-q x] [-f file] [-m] time\n" 85 " at [-V] -c job [job ...]\n" 86 " atq [-V] [-q x] [-v]\n" 87 " atrm [-V] job [job ...]\n" 88 " batch [-V] [-f file] [-m]\n"); 89 exit(EXIT_FAILURE); 90} |