Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d3607752 authored by Al Viro's avatar Al Viro
Browse files

constify security_path_{mkdir,mknod,symlink}



... as well as unix_mknod() and may_o_create()

Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 989f74e0
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2783,7 +2783,7 @@ static inline int open_to_namei_flags(int flag)
	return flag;
}

static int may_o_create(struct path *dir, struct dentry *dentry, umode_t mode)
static int may_o_create(const struct path *dir, struct dentry *dentry, umode_t mode)
{
	int error = security_path_mknod(dir, dentry, mode, 0);
	if (error)
+3 −3
Original line number Diff line number Diff line
@@ -1361,13 +1361,13 @@ union security_list_options {

#ifdef CONFIG_SECURITY_PATH
	int (*path_unlink)(const struct path *dir, struct dentry *dentry);
	int (*path_mkdir)(struct path *dir, struct dentry *dentry,
	int (*path_mkdir)(const struct path *dir, struct dentry *dentry,
				umode_t mode);
	int (*path_rmdir)(const struct path *dir, struct dentry *dentry);
	int (*path_mknod)(struct path *dir, struct dentry *dentry,
	int (*path_mknod)(const struct path *dir, struct dentry *dentry,
				umode_t mode, unsigned int dev);
	int (*path_truncate)(const struct path *path);
	int (*path_symlink)(struct path *dir, struct dentry *dentry,
	int (*path_symlink)(const struct path *dir, struct dentry *dentry,
				const char *old_name);
	int (*path_link)(struct dentry *old_dentry, struct path *new_dir,
				struct dentry *new_dentry);
+6 −6
Original line number Diff line number Diff line
@@ -1443,12 +1443,12 @@ static inline void security_skb_classify_flow(struct sk_buff *skb, struct flowi

#ifdef CONFIG_SECURITY_PATH
int security_path_unlink(const struct path *dir, struct dentry *dentry);
int security_path_mkdir(struct path *dir, struct dentry *dentry, umode_t mode);
int security_path_mkdir(const struct path *dir, struct dentry *dentry, umode_t mode);
int security_path_rmdir(const struct path *dir, struct dentry *dentry);
int security_path_mknod(struct path *dir, struct dentry *dentry, umode_t mode,
int security_path_mknod(const struct path *dir, struct dentry *dentry, umode_t mode,
			unsigned int dev);
int security_path_truncate(const struct path *path);
int security_path_symlink(struct path *dir, struct dentry *dentry,
int security_path_symlink(const struct path *dir, struct dentry *dentry,
			  const char *old_name);
int security_path_link(struct dentry *old_dentry, struct path *new_dir,
		       struct dentry *new_dentry);
@@ -1464,7 +1464,7 @@ static inline int security_path_unlink(const struct path *dir, struct dentry *de
	return 0;
}

static inline int security_path_mkdir(struct path *dir, struct dentry *dentry,
static inline int security_path_mkdir(const struct path *dir, struct dentry *dentry,
				      umode_t mode)
{
	return 0;
@@ -1475,7 +1475,7 @@ static inline int security_path_rmdir(const struct path *dir, struct dentry *den
	return 0;
}

static inline int security_path_mknod(struct path *dir, struct dentry *dentry,
static inline int security_path_mknod(const struct path *dir, struct dentry *dentry,
				      umode_t mode, unsigned int dev)
{
	return 0;
@@ -1486,7 +1486,7 @@ static inline int security_path_truncate(const struct path *path)
	return 0;
}

static inline int security_path_symlink(struct path *dir, struct dentry *dentry,
static inline int security_path_symlink(const struct path *dir, struct dentry *dentry,
					const char *old_name)
{
	return 0;
+1 −1
Original line number Diff line number Diff line
@@ -953,7 +953,7 @@ static struct sock *unix_find_other(struct net *net,
	return NULL;
}

static int unix_mknod(struct dentry *dentry, struct path *path, umode_t mode,
static int unix_mknod(struct dentry *dentry, const struct path *path, umode_t mode,
		      struct path *res)
{
	int err;
+3 −3
Original line number Diff line number Diff line
@@ -250,7 +250,7 @@ static int apparmor_path_unlink(const struct path *dir, struct dentry *dentry)
	return common_perm_rm(OP_UNLINK, dir, dentry, AA_MAY_DELETE);
}

static int apparmor_path_mkdir(struct path *dir, struct dentry *dentry,
static int apparmor_path_mkdir(const struct path *dir, struct dentry *dentry,
			       umode_t mode)
{
	return common_perm_create(OP_MKDIR, dir, dentry, AA_MAY_CREATE,
@@ -262,7 +262,7 @@ static int apparmor_path_rmdir(const struct path *dir, struct dentry *dentry)
	return common_perm_rm(OP_RMDIR, dir, dentry, AA_MAY_DELETE);
}

static int apparmor_path_mknod(struct path *dir, struct dentry *dentry,
static int apparmor_path_mknod(const struct path *dir, struct dentry *dentry,
			       umode_t mode, unsigned int dev)
{
	return common_perm_create(OP_MKNOD, dir, dentry, AA_MAY_CREATE, mode);
@@ -273,7 +273,7 @@ static int apparmor_path_truncate(const struct path *path)
	return common_perm_path(OP_TRUNC, path, MAY_WRITE | AA_MAY_META_WRITE);
}

static int apparmor_path_symlink(struct path *dir, struct dentry *dentry,
static int apparmor_path_symlink(const struct path *dir, struct dentry *dentry,
				 const char *old_name)
{
	return common_perm_create(OP_SYMLINK, dir, dentry, AA_MAY_CREATE,
Loading