Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
inode.c File Reference
#include <linux/module.h>
#include <linux/fs.h>
#include <linux/mount.h>
#include <linux/pagemap.h>
#include <linux/init.h>
#include <linux/namei.h>
#include <linux/security.h>
#include <linux/magic.h>

Go to the source code of this file.

Functions

: a pointer to a string containing the name of the file to create.

securityfs_create_file - create a file in the securityfs filesystem

: the permission that the file should have : a pointer to the parent dentry for this file. This should be a directory dentry if set. If this parameter is NULL, then the file will be created in the root of the securityfs filesystem. : a pointer to something that the caller will want to get to later on. The inode.i_private pointer will point to this value on the open() call. : a pointer to a struct file_operations that should be used for this file.

This is the basic "create a file" function for securityfs. It allows for a wide range of flexibility in creating a file, or a directory (if you want to create a directory, the securityfs_create_dir() function is recommended to be used instead).

This function returns a pointer to a dentry if it succeeds. This pointer must be passed to the securityfs_remove() function when the file is to be removed (no automatic cleanup happens if your module is unloaded, you are responsible here). If an error occurs, the function will return the erorr value (via ERR_PTR).

If securityfs is not enabled in the kernel, the value %-ENODEV is returned.

struct dentrysecurityfs_create_file (const char *name, umode_t mode, struct dentry *parent, void *data, const struct file_operations *fops)
 
 EXPORT_SYMBOL_GPL (securityfs_create_file)
 

.

This function returns a pointer to a dentry if it succeeds. This pointer must be passed to the securityfs_remove() function when the file is to be removed (no automatic cleanup happens if your module is unloaded, you are responsible here). If an error occurs, NULL will be returned.

If securityfs is not enabled in the kernel, the value %-ENODEV is returned. It is not wise to check for this value, but rather, check for NULL or !NULL instead as to eliminate the need for #ifdef in the calling code.

struct dentrysecurityfs_create_dir (const char *name, struct dentry *parent)
 
 EXPORT_SYMBOL_GPL (securityfs_create_dir)
 
void securityfs_remove (struct dentry *dentry)
 
 EXPORT_SYMBOL_GPL (securityfs_remove)
 
 core_initcall (securityfs_init)
 
 MODULE_LICENSE ("GPL")
 

Function Documentation

core_initcall ( securityfs_init  )
EXPORT_SYMBOL_GPL ( securityfs_create_file  )
EXPORT_SYMBOL_GPL ( securityfs_create_dir  )
EXPORT_SYMBOL_GPL ( securityfs_remove  )
MODULE_LICENSE ( "GPL"  )
struct dentry* securityfs_create_dir ( const char name,
struct dentry parent 
)
read

Definition at line 171 of file inode.c.

struct dentry* securityfs_create_file ( const char name,
umode_t  mode,
struct dentry parent,
void data,
const struct file_operations fops 
)
read

Definition at line 82 of file inode.c.

void securityfs_remove ( struct dentry dentry)

securityfs_remove - removes a file or directory from the securityfs filesystem

: a pointer to a the dentry of the file or directory to be removed.

This function removes a file or directory in securityfs that was previously created with a call to another securityfs function (like securityfs_create_file() or variants thereof.)

This function is required to be called in order for the file to be removed. No automatic cleanup of files will happen when a module is removed; you are responsible here.

Definition at line 192 of file inode.c.