libalpm
Arch Linux Package Manager Library

Functions to initialize and release libalpm More...

Collaboration diagram for Handle:

Functions

alpm_handle_t * alpm_initialize (const char *root, const char *dbpath, alpm_errno_t *err)
 Initializes the library.
 
int alpm_release (alpm_handle_t *handle)
 Release the library.
 

Detailed Description

Functions to initialize and release libalpm

Function Documentation

◆ alpm_initialize()

alpm_handle_t * alpm_initialize ( const char * root,
const char * dbpath,
alpm_errno_t * err )

Initializes the library.

Creates handle, connects to database and creates lockfile. This must be called before any other functions are called.

Parameters
rootthe root path for all filesystem operations
dbpaththe absolute path to the libalpm database
erran optional variable to hold any error return codes
Returns
a context handle on success, NULL on error, err will be set if provided

References ALPM_ERR_MEMORY, alpm_list_add(), MALLOC, and STRDUP.

◆ alpm_release()

int alpm_release ( alpm_handle_t * handle)

Release the library.

Disconnects from the database, removes handle and lockfile This should be the last alpm call you make. After this returns, handle should be considered invalid and cannot be reused in any way.

Parameters
handlethe context handle
Returns
0 on success, -1 on error

References ALPM_ERR_TRANS_NOT_NULL, ASSERT, CHECK_HANDLE, and RET_ERR.