---
name: "securityfs_create_file"
section: "9"
platform: "linux"
package: "linux-manual-4.9"
version: "4.9.228-1"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/securityfs_create_file"
---

# securityfs\_create\_file(9)

create a file in the securityfs filesystem

## NAME

securityfs\_create\_file - create a file in the securityfs filesystem

## SYNOPSIS

**struct dentry \* securityfs\_create\_file(const char \*** *name***, umode\_t** *mode***, struct dentry \*** *parent***, void \*** *data***, const struct file\_operations \*** *fops***);**

## ARGUMENTS

*name*

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

*mode*

the permission that the file should have

*parent*

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.

*data*

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.

*fops*

a pointer to a struct file\_operations that should be used for this file.

## DESCRIPTION

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 error value (via ERR\_PTR).

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

## COPYRIGHT
