]> git.saurik.com Git - apple/libc.git/blobdiff - include/util.h
Libc-1439.100.3.tar.gz
[apple/libc.git] / include / util.h
index 42dbdabfa2421925ab5ace241f51cf0b1bfae44d..bbfad2b590d51ea2fad680833848eb6d3d93a40c 100644 (file)
@@ -1,21 +1,22 @@
 /*
 /*
- * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
+ * Copyright (c) 2000, 2007, 2008 Apple Inc. All rights reserved.
  *
  * @APPLE_LICENSE_HEADER_START@
  * 
  *
  * @APPLE_LICENSE_HEADER_START@
  * 
- * The contents of this file constitute Original Code as defined in and
- * are subject to the Apple Public Source License Version 1.1 (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.
+ * 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 2.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.opensource.apple.com/apsl/ and read it before using this
+ * file.
  * 
  * 
- * This Original Code and all software distributed under the License are
- * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
+ * 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,
  * 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.
+ * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
+ * Please see the License for the specific language governing rights and
+ * limitations under the License.
  * 
  * @APPLE_LICENSE_HEADER_END@
  */
  * 
  * @APPLE_LICENSE_HEADER_END@
  */
 #include <stdio.h>
 #include <pwd.h>
 #include <termios.h>
 #include <stdio.h>
 #include <pwd.h>
 #include <termios.h>
-#include <utmp.h>
+#include <Availability.h>
 
 #define        PIDLOCK_NONBLOCK        1
 #define PIDLOCK_USEHOSTNAME    2
 
 
 #define        PIDLOCK_NONBLOCK        1
 #define PIDLOCK_USEHOSTNAME    2
 
+/*
+ * fparseln() specific operation flags.
+ */
 #define        FPARSELN_UNESCESC       0x01
 #define        FPARSELN_UNESCCONT      0x02
 #define        FPARSELN_UNESCCOMM      0x04
 #define        FPARSELN_UNESCREST      0x08
 #define        FPARSELN_UNESCALL       0x0f
 
 #define        FPARSELN_UNESCESC       0x01
 #define        FPARSELN_UNESCCONT      0x02
 #define        FPARSELN_UNESCCOMM      0x04
 #define        FPARSELN_UNESCREST      0x08
 #define        FPARSELN_UNESCALL       0x0f
 
+/*
+ * opendev() specific operation flags.
+ */
+#define OPENDEV_PART   0x01            /* Try to open the raw partition. */
+#define OPENDEV_BLCK   0x04            /* Open block, not character device. */
+
 __BEGIN_DECLS
 __BEGIN_DECLS
-void   login __P((struct utmp *));
-int    login_tty __P((int));
-int    logout __P((const char *));
-void   logwtmp __P((const char *, const char *, const char *));
-int    pw_lock __P((int retries));
-int    pw_mkdb __P((void));
-int    pw_abort __P((void));
-void   pw_init __P((void));
-void   pw_edit __P((int notsetuid, const char *filename));
-void   pw_prompt __P((void));
-void   pw_copy __P((int ffd, int tfd, struct passwd *pw,
-                    struct passwd *old_pw));
-int    pw_scan __P((char *bp, struct passwd *pw, int *flags));
-void   pw_error __P((const char *name, int err, int eval));
-int    openpty __P((int *, int *, char *, struct termios *,
-                    struct winsize *));
-char   *fparseln __P((FILE *, size_t *, size_t *, const char[3], int));
-pid_t  forkpty __P((int *, char *, struct termios *, struct winsize *));
-int    getmaxpartitions __P((void));
-int    getrawpartition __P((void));
-int    opendisk __P((const char *, int, char *, size_t, int));
-int    pidlock __P((const char *, int, pid_t *, const char *));
-int    ttylock __P((const char *, int, pid_t *));
-int    ttyunlock __P((const char *));
-int    ttyaction __P((char *tty, char *act, char *user));
+#ifdef UNIFDEF_LEGACY_UTMP_APIS
+struct utmp; /* forward reference to /usr/include/utmp.h */
+void   login(struct utmp *)            __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0,__MAC_10_5,__IPHONE_NA,__IPHONE_NA);
+#endif /* UNIFDEF_LEGACY_UTMP_APIS */
+int    login_tty(int);
+#ifdef UNIFDEF_LEGACY_UTMP_APIS
+int    logout(const char *)            __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0,__MAC_10_5,__IPHONE_NA,__IPHONE_NA);
+#endif /* UNIFDEF_LEGACY_UTMP_APIS */
+void   logwtmp(const char *, const char *, const char *) __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0,__MAC_10_5,__IPHONE_2_0,__IPHONE_2_0);
+int    opendev(char *, int, int, char **);
+int    openpty(int *, int *, char *, struct termios *,
+                    struct winsize *);
+char   *fparseln(FILE *, size_t *, size_t *, const char[3], int);
+pid_t  forkpty(int *, char *, struct termios *, struct winsize *);
+int    pidlock(const char *, int, pid_t *, const char *);
+int    ttylock(const char *, int, pid_t *);
+int    ttyunlock(const char *);
+int    ttyaction(char *tty, char *act, char *user);
 struct iovec;
 struct iovec;
-char   *ttymsg __P((struct iovec *, int, const char *, int));
+char   *ttymsg(struct iovec *, int, const char *, int);
 __END_DECLS
 __END_DECLS
+#ifdef UNIFDEF_LEGACY_UTMP_APIS
+
+/* Include utmp.h last to avoid deprecation warning above */
+#include <utmp.h>
+#endif /* UNIFDEF_LEGACY_UTMP_APIS */
 
 #endif /* !_UTIL_H_ */
 
 #endif /* !_UTIL_H_ */