#include "legato.h"
#include "le_limit_common.h"
Go to the source code of this file.
|
LE_SHARED bool | ifgen_le_appCtrl_HasLocalBinding (void) |
|
LE_SHARED void | ifgen_le_appCtrl_InitCommonData (void) |
|
LE_SHARED void | ifgen_le_appCtrl_CleanupCommonData (le_msg_SessionRef_t _ifgen_sessionRef) |
|
LE_SHARED le_result_t | ifgen_le_appCtrl_OpenSession (le_msg_SessionRef_t _ifgen_sessionRef, bool isBlocking) |
|
LE_SHARED le_appCtrl_AppRef_t | ifgen_le_appCtrl_GetRef (le_msg_SessionRef_t _ifgen_sessionRef, const char *LE_NONNULL appName) |
|
LE_SHARED void | ifgen_le_appCtrl_ReleaseRef (le_msg_SessionRef_t _ifgen_sessionRef, le_appCtrl_AppRef_t appRef) |
|
LE_SHARED void | ifgen_le_appCtrl_SetRun (le_msg_SessionRef_t _ifgen_sessionRef, le_appCtrl_AppRef_t appRef, const char *LE_NONNULL procName, bool run) |
|
LE_SHARED void | ifgen_le_appCtrl_SetDebug (le_msg_SessionRef_t _ifgen_sessionRef, le_appCtrl_AppRef_t appRef, const char *LE_NONNULL procName, bool debug) |
|
LE_SHARED le_result_t | ifgen_le_appCtrl_Import (le_msg_SessionRef_t _ifgen_sessionRef, le_appCtrl_AppRef_t appRef, const char *LE_NONNULL path) |
|
LE_SHARED le_result_t | ifgen_le_appCtrl_SetDevicePerm (le_msg_SessionRef_t _ifgen_sessionRef, le_appCtrl_AppRef_t appRef, const char *LE_NONNULL path, const char *LE_NONNULL permissions) |
|
LE_SHARED le_appCtrl_TraceAttachHandlerRef_t | ifgen_le_appCtrl_AddTraceAttachHandler (le_msg_SessionRef_t _ifgen_sessionRef, le_appCtrl_AppRef_t appRef, le_appCtrl_TraceAttachHandlerFunc_t attachToPidPtr, void *contextPtr) |
|
LE_SHARED void | ifgen_le_appCtrl_RemoveTraceAttachHandler (le_msg_SessionRef_t _ifgen_sessionRef, le_appCtrl_TraceAttachHandlerRef_t handlerRef) |
|
LE_SHARED void | ifgen_le_appCtrl_TraceUnblock (le_msg_SessionRef_t _ifgen_sessionRef, le_appCtrl_AppRef_t appRef, int32_t pid) |
|
LE_SHARED le_result_t | ifgen_le_appCtrl_Start (le_msg_SessionRef_t _ifgen_sessionRef, const char *LE_NONNULL appName) |
|
LE_SHARED le_result_t | ifgen_le_appCtrl_Stop (le_msg_SessionRef_t _ifgen_sessionRef, const char *LE_NONNULL appName) |
|
◆ IFGEN_LE_APPCTRL_PROTOCOL_ID
#define IFGEN_LE_APPCTRL_PROTOCOL_ID "4d849724ee91cb561bc0059af7eead96" |
◆ IFGEN_LE_APPCTRL_MSG_SIZE
#define IFGEN_LE_APPCTRL_MSG_SIZE 533 |
◆ le_appCtrl_AppRef_t
◆ le_appCtrl_TraceAttachHandlerRef_t
Reference type used by Add/Remove functions for EVENT 'le_appCtrl_TraceAttach'
◆ le_appCtrl_TraceAttachHandlerFunc_t
Handler for attaching to a process that is to be traced. The process is blocked allowing the tracer to attach to it. The tracer must call TraceUnblock() to unblock the traced process.
◆ ifgen_le_appCtrl_HasLocalBinding()
LE_SHARED bool ifgen_le_appCtrl_HasLocalBinding |
( |
void |
| ) |
|
Get if this client bound locally.
◆ ifgen_le_appCtrl_InitCommonData()
LE_SHARED void ifgen_le_appCtrl_InitCommonData |
( |
void |
| ) |
|
Init data that is common across all threads
◆ ifgen_le_appCtrl_CleanupCommonData()
Cleanup the data of a session
◆ ifgen_le_appCtrl_OpenSession()
Perform common initialization and open a session
◆ ifgen_le_appCtrl_GetRef()
Gets a reference to an app.
- Returns
- Reference to the named app. NULL on error (check logs for errors).
- Parameters
-
[in] | appName | Name of the app to get the ref for. |
◆ ifgen_le_appCtrl_ReleaseRef()
Release the reference to an app, resetting all overrides set for this app using other functions, like SetRun(), SetDevicePerm(), etc.
- Parameters
-
[in] | appRef | Ref to the app. |
◆ ifgen_le_appCtrl_SetRun()
Sets the run flag for a process in an app.
If there is an error this function will kill the calling client.
- Parameters
-
[in] | appRef | Ref to the app. |
[in] | procName | Process name to set the run flag for. |
[in] | run | Flag to run the process or not. |
◆ ifgen_le_appCtrl_SetDebug()
Sets the debug flag for a process in an app.
If there is an error this function will kill the calling client.
- Parameters
-
[in] | appRef | Ref to the app. |
[in] | procName | Process name to set the run flag for. |
[in] | debug | Flag to debug the process or not. |
◆ ifgen_le_appCtrl_Import()
Imports a file into the app's working directory.
- Returns
- LE_OK if successfully imported the file. LE_DUPLICATE if the path conflicts with items already in the app's working directory. LE_NOT_FOUND if the path does not point to a valid file. LE_BAD_PARAMETER if the path is formatted incorrectly. LE_FAULT if there was some other error.
- Note
- If the caller is passing an invalid reference to the app, it is a fatal error, the function will not return.
- Parameters
-
[in] | appRef | Ref to the app. |
[in] | path | Absolute path to the file to import. |
◆ ifgen_le_appCtrl_SetDevicePerm()
Sets a device file's permissions.
- Returns
- LE_OK if successfully set the device's permissions. LE_NOT_FOUND if the path does not point to a valid device. LE_BAD_PARAMETER if the path is formatted incorrectly. LE_FAULT if there was some other error.
- Note
- If the caller is passing an invalid reference to the app, it is a fatal error, the function will not return.
- Parameters
-
[in] | appRef | Ref to the app. |
[in] | path | Absolute path to the device. |
[in] | permissions | Permission string, "r", "w", "rw". |
◆ ifgen_le_appCtrl_AddTraceAttachHandler()
Add handler function for EVENT 'le_appCtrl_TraceAttach'
Event that indicates the process is blocked and can be attached to.
- Parameters
-
[in] | appRef | Ref to the app. |
[in] | attachToPidPtr | Attach handler to register. |
[in] | contextPtr | |
◆ ifgen_le_appCtrl_RemoveTraceAttachHandler()
Remove handler function for EVENT 'le_appCtrl_TraceAttach'
- Parameters
-
◆ ifgen_le_appCtrl_TraceUnblock()
Unblocks the traced process. This should normally be done once the tracer has successfully attached to the process.
- Note
- If the caller is passing an invalid reference to the app, it is a fatal error, the function will not return.
- Parameters
-
[in] | appRef | Ref to the app. |
[in] | pid | PID of the process to unblock. |
◆ ifgen_le_appCtrl_Start()
Starts an app.
- Returns
- LE_OK if the app is successfully started. LE_DUPLICATE if the app is already running. LE_NOT_FOUND if the app isn't installed. LE_FAULT if there was an error and the app could not be launched.
- Parameters
-
[in] | appName | Name of the app to start. |
◆ ifgen_le_appCtrl_Stop()
Stops an app.
- Returns
- LE_OK if successful. LE_NOT_FOUND if the app could not be found.
- Parameters
-
[in] | appName | Name of the app to stop. |