FILE
user_config.h
File preview with syntax highlighting.
linux-6.19.14/fs/smb/server/mgmt/user_config.h
1/* SPDX-License-Identifier: GPL-2.0-or-later */ 2/* 3 * Copyright (C) 2018 Samsung Electronics Co., Ltd. 4 */ 5 6#ifndef __USER_CONFIG_MANAGEMENT_H__ 7#define __USER_CONFIG_MANAGEMENT_H__ 8 9#include "../glob.h" 10 11struct ksmbd_user { 12 unsigned short flags; 13 14 unsigned int uid; 15 unsigned int gid; 16 17 char *name; 18 19 size_t passkey_sz; 20 char *passkey; 21 int ngroups; 22 gid_t *sgid; 23}; 24 25static inline bool user_guest(struct ksmbd_user *user) 26{ 27 return user->flags & KSMBD_USER_FLAG_GUEST_ACCOUNT; 28} 29 30static inline void set_user_flag(struct ksmbd_user *user, int flag) 31{ 32 user->flags |= flag; 33} 34 35static inline int test_user_flag(struct ksmbd_user *user, int flag) 36{ 37 return user->flags & flag; 38} 39 40static inline void set_user_guest(struct ksmbd_user *user) 41{ 42} 43 44static inline char *user_passkey(struct ksmbd_user *user) 45{ 46 return user->passkey; 47} 48 49static inline char *user_name(struct ksmbd_user *user) 50{ 51 return user->name; 52} 53 54static inline unsigned int user_uid(struct ksmbd_user *user) 55{ 56 return user->uid; 57} 58 59static inline unsigned int user_gid(struct ksmbd_user *user) 60{ 61 return user->gid; 62} 63 64struct ksmbd_user *ksmbd_login_user(const char *account); 65struct ksmbd_user *ksmbd_alloc_user(struct ksmbd_login_response *resp, 66 struct ksmbd_login_response_ext *resp_ext); 67void ksmbd_free_user(struct ksmbd_user *user); 68int ksmbd_anonymous_user(struct ksmbd_user *user); 69bool ksmbd_compare_user(struct ksmbd_user *u1, struct ksmbd_user *u2); 70#endif /* __USER_CONFIG_MANAGEMENT_H__ */
~/
Read-only file preview.