krn.GetClientInfo

This job returns detailed information about a client. The client identifier is obtained from krn.EnumClients. The returned record is the client-side counterpart of a row from krn.SessionEnumDB: identity (session, user and station GUID), user, and origin (computer name and instance/connection name).

1. Input Parameters

Name Type Required Description

Flags

INT

Yes

Currently not supported — pass 0.

Clients

STRING

Yes

Semicolon-separated list of client identifiers (GUIDs). If a list with several identifiers is passed, the job returns the record of the first client.

2. Output Parameters

Name Type Dependency Description

ClientInfo

STRING

Base64-encoded buffer that decodes to a single fixed-length record (2296 bytes). The fields are stored as UTF-16LE text at fixed byte offsets. See the structure below.

3. Structure of the ClientInfo buffer

ClientInfo decodes to exactly one fixed-length record (2296 bytes). The individual fields are stored as UTF-16LE text at fixed byte offsets. The following table lists the byte offset for each field and its mapping to the fields from krn.SessionEnumDB:

Offset (bytes) Content Maps to SessionEnumDB field

0

2-byte marker 55 45 ("UE"), followed by padding bytes

4

Client/session GUID

sessguid

80

Session GUID (repeated)

sessguid

152

Computer or host name (client-reported case)

servername / statname

320

Instance/connection name (slot of approx. 260 characters)

instname

840

User name (slot of approx. 260 characters)

username

1364

User GUID

userguid

1436

Station GUID

statguid

1508-2295

Further fixed-length fields; zero-filled for local sessions (likely client IP, port, connection time and protocol flags)

Via instname the connecting application or service can be identified (e.g. server processes, the Enterprise Manager or cache services).

4. Return Value

(INT): 0 = Job successful, otherwise error code.