Appendix 10.A Message Reference

10.A.1 Messages #

msg_typeMessageDirectionAnswered withDefined in
0x0001Listclient → store daemonPrincipals§10.5
0x0002Showclient → store daemonPrincipal§10.5
0x0003Domainclient → store daemonDomainIs§10.5
0x0004Addclient → store daemonCreated§10.5
0x0005Removeclient → store daemonDone§10.5
0x0006SetEnabledclient → store daemonDone§10.5
0x0007SetPasswordclient → store daemonDone§10.5
0x0008GroupAddclient → store daemonDone§10.6
0x0009GroupRemoveclient → store daemonDone§10.6
0x000aGroupListclient → store daemonGroups§10.6
0x000bGroupCreateclient → store daemonCreated§10.6
0x000cGroupDeleteclient → store daemonDone§10.6
0x000dSetProfileclient → store daemonDone§10.5
0x000eSetPrimaryGroupclient → store daemonDone§10.6
0x000fSetClaimclient → store daemonDone§10.7
0x0010RemoveClaimclient → store daemonDone§10.7
0x0011KeyListclient → store daemonKeys§10.8
0x0012KeyAddclient → store daemonDone§10.8
0x0013KeyRemoveclient → store daemonDone§10.8
0x0014CredentialPolicyclient → store daemonDone§10.8
0x0015Renameclient → store daemonDone§10.5
0x0016SetLogonTypesclient → store daemonDone§10.5
0x0017GroupRenameclient → store daemonDone§10.6
0x0018GroupDescribeclient → store daemonDone§10.6
0x8001Principalsstore daemon → client§10.5
0x8002Principalstore daemon → client§10.5
0x8003DomainIsstore daemon → client§10.5
0x8004Createdstore daemon → client§10.9
0x8005Donestore daemon → client§10.9
0x8006Failedstore daemon → client§10.9
0x8007Groupsstore daemon → client§10.6
0x8008Keysstore daemon → client§10.8

Any request may be answered with Failed instead.

10.A.1.1 On the self socket #

msg_typeMessageDirectionAnswered withDefined in
0x0040ShowSelfclient → store daemonSelf§10.11
0x0041SetDisplayNameclient → store daemonDone§10.11
0x8040Selfstore daemon → client§10.11

Done and Failed (§10.9) answer here too. Each socket refuses the other's requests with Invalid.

10.A.2 Protocol constants #

ConstantValueDefined in
Socket path/run/lpsd/admin.sock on Peios§10.3
Self socket path/run/lpsd/self.sock on Peios§10.11
Largest self-socket request4096 bytes§10.11
MagicPLPS (50 4c 50 53)§10.4
Version1§10.4
Header size12 bytes§10.4
Maximum message size2,097,152 bytes§10.4
Requests a connection1§10.3

10.A.3 Field limits #

FieldLimit
A principal's or group's name256 bytes
A password4096 bytes, never empty
home, shell4096 bytes
display_name256 bytes
A group's description1024 bytes
A principal's listed groups128
Principals in Principals4096
Groups in Groups4096
A SID68 bytes
Claims on a principal64
A claim's name255 bytes
A claim's values64
A string or octet claim value1024 bytes
SSH keys on a principal32
An SSH public key16384 bytes
A key's label128 bytes
A key's fingerprint128 bytes
A key's algorithm64 bytes
A refusal's reason512 bytes

10.A.4 Enumerations #

EnumerationDefined in
Failure§10.9
Credential policy§10.8
Logon typesPGSS §2.16, carried as PSI carries them (§2.13)
Claim value types and flagsPCDS §5.9, closed as on PSI (§2.A)

Edit this page