]> code.citadel.org Git - citadel.git/blobdiff - citadel/user_ops.h
More gratuitous style cleanup.
[citadel.git] / citadel / user_ops.h
index b151ff18f1fce7045333add6cb512af2e2f80893..1a1ba66bc2e28952c3a0a3d0e37e60ad9375cb45 100644 (file)
@@ -1,78 +1,65 @@
-/* $Id$ */
+// Header file for server functions which perform operations on user objects.
+//
+// Copyright (c) 1987-2022 by the citadel.org team
+//
+// This program is open source software; you can redistribute it and/or
+// modify it under the terms of the GNU General Public License, version 3.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+
+#ifndef __USER_OPS_H__
+#define __USER_OPS_H__
+
+#include <ctype.h>
+#include <syslog.h>
+
 int hash (char *str);
-int getuser (struct usersupp *, char *);
-int lgetuser (struct usersupp *, char *);
-void putuser (struct usersupp *);
-void lputuser (struct usersupp *);
 int is_aide (void);
 int is_room_aide (void);
-int getuserbynumber (struct usersupp *usbuf, long int number);
-void cmd_user (char *cmdbuf);
+int CtdlCheckInternetMailPermission(struct ctdluser *who);
+void rebuild_usersbynumber(void);
 void session_startup (void);
-void logout (struct CitContext *who);
-void cmd_pass (char *buf);
+void logged_in_response(void);
 int purge_user (char *pname);
-int create_user (char *newusername);
-void cmd_newu (char *cmdbuf);
-void cmd_setp (char *new_pw);
-void cmd_getu (void);
-void cmd_setu (char *new_parms);
-void cmd_slrp (char *new_ptr);
-void cmd_invt_kick (char *iuser, int op);
-void cmd_forg (void);
-void cmd_gnur (void);
-void cmd_vali (char *v_args);
-void ForEachUser(void (*CallBack)(struct usersupp *EachUser));
-void ListThisUser(struct usersupp *usbuf);
-void cmd_list (void);
-void cmd_chek (void);
-void cmd_qusr (char *who);
-void cmd_ebio (void);
-void cmd_rbio (char *cmdbuf);
-void cmd_lbio (void);
-void cmd_agup (char *cmdbuf);
-void cmd_asup (char *cmdbuf);
-int NewMailCount(void);
-void CtdlGetRelationship(struct visit *vbuf,
-                        struct usersupp *rel_user,
-                        struct quickroom *rel_room);
-void CtdlSetRelationship(struct visit *newvisit,
-                        struct usersupp *rel_user,
-                        struct quickroom *rel_room);
-void MailboxName(char *buf, struct usersupp *who, char *prefix);
-int GenerateRelationshipIndex(  char *IndexBuf,
-                                long RoomID,
-                                long RoomGen,
-                                long UserID);
+int getuserbyuid(struct ctdluser *usbuf, uid_t number);
 
-int CtdlLoginExistingUser(char *username);
-
-/*
- * Values which may be returned by CtdlLoginExistingUser()
- */
+int create_user(char *newusername, int become_user, uid_t uid);
 enum {
-       pass_ok,
-       pass_already_logged_in,
-       pass_no_user,
-       pass_internal_error,
-       pass_wrong_password
+       CREATE_USER_DO_NOT_BECOME_USER,
+       CREATE_USER_BECOME_USER
 };
+#define NATIVE_AUTH_UID (-1)
 
+void do_login(void);
+int CtdlInvtKick(char *iuser, int op);
+void ForEachUser(void (*CallBack) (char *, void *out_data), void *in_data);
+int NewMailCount(void);
+int InitialMailCheck(void);
+void put_visit(visit *newvisit);
+int GenerateRelationshipIndex(char *IndexBuf, long RoomID, long RoomGen, long UserID);
+int CtdlAssociateSystemUser(char *screenname, char *loginname);
 
+void CtdlSetPassword(char *new_pw);
 
+int CtdlForgetThisRoom(void);
 
-int CtdlTryPassword(char *password);
+void cmd_newu (char *cmdbuf);
+void start_chkpwd_daemon(void);
 
-/*
- * Values which may be returned by CtdlTryPassword()
- */
-enum {
-       login_ok,
-       login_already_logged_in,
-       login_too_many_users,
-       login_not_found
-};
 
+#define RENAMEUSER_OK                  0       // Operation succeeded
+#define RENAMEUSER_LOGGED_IN           1       // Cannot rename a user who is currently logged in
+#define RENAMEUSER_NOT_FOUND           2       // The old user name does not exist
+#define RENAMEUSER_ALREADY_EXISTS      3       // An account with the desired new name already exists
 
+int rename_user(char *oldname, char *newname);
+void reindex_user_928(char *username, void *out_data);
 
+void makeuserkey(char *key, const char *username);
+int CtdlUserCmp(char *s1, char *s2);
+int internal_create_user(char *username, struct ctdluser *usbuf, uid_t uid);
 
+#endif