-int atot __P((char *, time_t *));
-void display __P((int, struct passwd *));
-void edit __P((struct passwd *));
-char *ok_shell __P((char *));
-int p_change __P((char *, struct passwd *, ENTRY *));
-int p_class __P((char *, struct passwd *, ENTRY *));
-int p_expire __P((char *, struct passwd *, ENTRY *));
-int p_gecos __P((char *, struct passwd *, ENTRY *));
-int p_gid __P((char *, struct passwd *, ENTRY *));
-int p_hdir __P((char *, struct passwd *, ENTRY *));
-int p_login __P((char *, struct passwd *, ENTRY *));
-int p_login __P((char *, struct passwd *, ENTRY *));
-int p_passwd __P((char *, struct passwd *, ENTRY *));
-int p_shell __P((char *, struct passwd *, ENTRY *));
-int p_uid __P((char *, struct passwd *, ENTRY *));
-char *ttoa __P((time_t));
-int verify __P((struct passwd *));
+int atot(char *, time_t *);
+#ifndef OPEN_DIRECTORY
+struct passwd *edit(const char *, struct passwd *);
+#endif /* OPEN_DIRECTORY */
+int ok_shell(char *);
+char *dup_shell(char *);
+int p_change(char *, struct passwd *, ENTRY *);
+int p_class(char *, struct passwd *, ENTRY *);
+int p_expire(char *, struct passwd *, ENTRY *);
+int p_gecos(char *, struct passwd *, ENTRY *);
+int p_gid(char *, struct passwd *, ENTRY *);
+int p_hdir(char *, struct passwd *, ENTRY *);
+int p_login(char *, struct passwd *, ENTRY *);
+int p_passwd(char *, struct passwd *, ENTRY *);
+int p_shell(char *, struct passwd *, ENTRY *);
+int p_uid(char *, struct passwd *, ENTRY *);
+#ifdef OPEN_DIRECTORY
+int p_uuid(char *, struct passwd *, ENTRY *);
+#endif /* OPEN_DIRECTORY */
+char *ttoa(time_t);