]> git.saurik.com Git - apple/system_cmds.git/blobdiff - at.tproj/panic.c
system_cmds-279.6.1.tar.gz
[apple/system_cmds.git] / at.tproj / panic.c
index 839a54c757d4b757ccf16e9bd9512d7989cd4f57..76831a8a8ebbdc00872f7086a987d07e89833247 100644 (file)
@@ -1,30 +1,6 @@
-/*
- * Copyright (c) 1999 Apple Computer, Inc. All rights reserved.
- *
- * @APPLE_LICENSE_HEADER_START@
- * 
- * "Portions Copyright (c) 1999 Apple Computer, Inc.  All Rights
- * Reserved.  This file contains Original Code and/or Modifications of
- * Original Code as defined in and that are subject to the Apple Public
- * Source License Version 1.0 (the 'License').  You may not use this file
- * except in compliance with the License.  Please obtain a copy of the
- * License at http://www.apple.com/publicsource and read it before using
- * this file.
- * 
- * The Original Code and all software distributed under the License are
- * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
- * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
- * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT.  Please see the
- * License for the specific language governing rights and limitations
- * under the License."
- * 
- * @APPLE_LICENSE_HEADER_END@
- */
-/*
- * panic.c - terminate fast in case of error
- * Copyright (c) 1993 by Thomas Koenig
- * All rights reserved.
+/* 
+ *  panic.c - terminate fast in case of error
+ *  Copyright (C) 1993  Thomas Koenig
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -38,7 +14,7 @@
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD: src/usr.bin/at/panic.c,v 1.17 2002/05/16 00:47:14 tjr Exp $");
+
 /* System Headers */
 
+#include <err.h>
 #include <errno.h>
 #include <stdio.h>
 #include <stdlib.h>
 /* Local headers */
 
 #include "panic.h"
+#include "privs.h"
 #include "at.h"
 
-/* File scope variables */
-
-static char rcsid[] = "$Id: panic.c,v 1.1.1.2 2000/01/11 02:10:05 wsanchez Exp $";
-
 /* External variables */
 
 /* Global functions */
 
-#ifdef __APPLE__
-__private_extern__
-#endif
 void
-panic(a)
-       char *a;
+panic(const char *a)
 {
 /* Something fatal has happened, print error message and exit.
  */
-       fprintf(stderr, "%s: %s\n", namep, a);
-       if (fcreated)
+       if (fcreated) {
+               PRIV_START
                unlink(atfile);
+               PRIV_END
+       }
 
-       exit(EXIT_FAILURE);
+       errx(EXIT_FAILURE, "%s", a);
 }
 
 void
-perr(a)
-       char *a;
+perr(const char *a)
 {
 /* Some operating system error; print error message and exit.
  */
-       perror(a);
-       if (fcreated)
-               unlink(atfile);
+       int serrno = errno;
 
-       exit(EXIT_FAILURE);
-}
+       if (fcreated) {
+               PRIV_START
+               unlink(atfile);
+               PRIV_END
+       }
 
-void 
-perr2(a, b)
-       char *a, *b;
-{
-       fprintf(stderr, "%s", a);
-       perr(b);
+       errno = serrno;
+       err(EXIT_FAILURE, "%s", a);
 }
 
 void
 usage(void)
 {
-/* Print usage and exit.
-*/
-       fprintf(stderr, "Usage: at [-q x] [-f file] [-m] time\n"
-           "       atq [-q x] [-v]\n"
-           "       atrm [-q x] job ...\n"
-           "       batch [-f file] [-m]\n");
-       exit(EXIT_FAILURE);
+       /* Print usage and exit. */
+    fprintf(stderr, "usage: at [-q x] [-f file] [-m] time\n"
+                   "       at -c job [job ...]\n"
+                   "       at [-f file] -t [[CC]YY]MMDDhhmm[.SS]\n"
+                   "       at -r job [job ...]\n"
+                   "       at -l -q queuename\n"
+                   "       at -l [job ...]\n"
+                   "       atq [-q x] [-v]\n"
+                   "       atrm job [job ...]\n"
+                   "       batch [-f file] [-m]\n");
+    exit(EXIT_FAILURE);
 }