Up: Long User Key Operation Extension Types   [Contents][Index]


8.2.1 struct blonde_arrest_type

typedef struct blonde_arrest_type {
    int (*dump)(void *, void **),
	(*ekcr)(void *, void **, unsigned),
        (*ekfr)(void *, void **, unsigned, const void *),
        (*ekgr)(void *, unsigned, void **, void **);
    void *data;
} blonde_arrest_type;

The record describes the long user key operation methods observed by certain library interfaces.

See Long User Key Operation Extension.

A key here is a stored string, a pointer to it indicates the actual key string.

data

pointer passed as the first argument to any of the methods

ekcr

the long key disposal method. It is meant to kill the $3 bytes long key corresponding the ID read from the address indicated by $2.

ekfr

the long key creation method. It is meant to store the ID of the created key, matching the $3 bytes long $4 string, at the address indicated by $2. The least significant two bits of the ID are set.

ekgr

the long key retrieval method. It is meant to produce the $2 bytes long key corresponding the ID read from the address indicated by $3 and store a pointer to it at the address indicated by $4.

dump

a long key disposal method, called when the functions that have called the creation method (ekfr) had failed and need to dispose of the created key. Its second argument is the ID store address.

All methods are taken to return 0 for success, non zero for failure.