# Run-time environment configuration

These DataSource configuration items specify a DataSource application’s run-time environment.

**📌 NOTE**\
"_this DataSource application_" means the DataSource application for which you are defining the configuration. "_DataSource peer_" or "_peer_" means a DataSource application that this DataSource application communicates with.

## application-name

`application-name` specifies the name of this DataSource application. Certain other configuration items can use the `%a` parameter to refer to this name (the documentation for an item will tell you if you can do this).

**📌 NOTE**\
When you run the DataSource application under the [Caplin Deployment Framework](../deployment-framework/index.md), the Framework’s blade startup script automatically derives the application name from the blade name, so you don’t have to specify it in a configuration file.

**Use in:** C, Java

**Syntax:** `application-name <name>`

**Type:** string

**Default value:** [Name of the application’s binary executable file with no trailing `.exe`]

## application-root

`application-root` specifies the root directory path under which this DataSource application runs. Certain other configuration items can use the `%r` parameter to refer to this directory (the documentation for an item will tell you if you can do this).

**📌 NOTE**\
When you run the DataSource application under the [Caplin Deployment Framework](../deployment-framework/index.md), the Framework’s blade startup script automatically derives the application root directory path from the blade’s root directory within the Framework directory structure, so you don’t have to specify it in a configuration file.

**Use in:** C

**Syntax:** `application-root <root-directory-path>`

**Type:** string

**Default value:** +[current working directory]+

## daemon-enable

`daemon-enable` should be set to `TRUE` if you want this DataSource application to run as a Linux daemon process.

**📌 NOTE**\
When you run the DataSource application under the [Caplin Deployment Framework](../deployment-framework/index.md), the Framework’s blade startup script automatically sets this option to `TRUE`, so the application runs as a daemon.

**Use in:** C

**Syntax:** `daemon-enable <boolean>`

**Type:** boolean

**Default value:** `FALSE`

## ignore-missing-config-files

`ignore-missing-config-files` specifies when `TRUE` that the DataSource application shouldn’t terminate in error if it finds that a configuration file included in another configuration file doesn’t actually exist.

**Use in:** C, Java

**Syntax:** `ignore-missing-config-files <boolean>`

**Type:** boolean

**Default value:** `FALSE` (the DataSource application terminates in error if an included configuration file doesn’t exist)

## license-file

`license-file` specifies the name of the license file for this DataSource application. The license file is located in the _etc_ directory of the unpacked DataSource application kit.

**Use in:** C

The license filename can contain the parameter `%a`, which is replaced by the DataSource [application-name](#application-name) at run time.

**📌 NOTE**\
For information about other configuration items relating to licensing, refer to the document **[Caplin Platform: Guide to User Licensing](https://docs.caplin.com/developer/docs/Caplin_Platform_4.5_User_Licensing_Guide.pdf)**.

**Syntax:** `license-file <licence-filename>`

**Type:** string

**Default value:** `license-%a.conf`

## pid-filename

`pid-filename` specifies the location and name of the PID file where this DataSource application’s process ID is recorded.

**Use in:** C, Java

The PID filename can contain the parameter `%a`, which is replaced by the DataSource [application-name](#application-name) at run time. The file path can contain the `%r` parameter, which is replaced by the root directory under which this DataSource application runs (see [application-root](#application-root)), and `%u`, which is replaced by the home directory of the user that the application runs as.

**Syntax:** `pid-filename <file-path-and-filename>`

**Type:** string

**Default value:** `%r/var/%a.pid`

## runtime-user

`runtime-user` specifies a user to run this DataSource application as (applies to Linux only).

This item primarily applies to Liberator. To use port 80 (the default for HTTP connections) or 443 (the default for HTTPS connections), Liberator needs to be started as the `root` user. Setting the `runtime-user` configuration enables the Liberator to subsequently run as a less privileged user than `root`, but nevertheless continue to use ports 80 and 443.

**Use in:** C

**Syntax:** `runtime-user <user-name>`

**Type:** string

**Default value:** +[none]+
