From f586e158c4d8b87c98d0b62fc1db192732ee4ae2 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Thu, 24 Jan 2019 16:21:26 +0100 Subject: sys/linux: add trusty hwkey service Update #933 --- sys/linux/gen/amd64.go | 41 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) (limited to 'sys/linux/gen/amd64.go') diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go index f3d7c0446..42f8d9eb4 100644 --- a/sys/linux/gen/amd64.go +++ b/sys/linux/gen/amd64.go @@ -89,6 +89,7 @@ var resources_amd64 = []*ResourceDesc{ {Name: "fd_trusty", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_trusty"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "fd_trusty_avb", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_trusty", "fd_trusty_avb"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "fd_trusty_gatekeeper", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_trusty", "fd_trusty_gatekeeper"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, + {Name: "fd_trusty_hwkey", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_trusty", "fd_trusty_hwkey"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "fd_trusty_km", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_trusty", "fd_trusty_km"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "fd_trusty_km_secure", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_trusty", "fd_trusty_km_secure"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "fd_trusty_storage", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_trusty", "fd_trusty_storage"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, @@ -22641,6 +22642,26 @@ var structDescs_amd64 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "trusty_blob"}, FldName: "password_handle"}, &StructType{Key: StructKey{Name: "trusty_blob"}, FldName: "provided_password"}, }}}, + {Key: StructKey{Name: "trusty_hwkey"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "trusty_hwkey", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "trusty_hwkey_msg[TRUSTY_HWKEY_GET_KEYSLOT, stringnoz]"}, FldName: "get"}, + &StructType{Key: StructKey{Name: "trusty_hwkey_msg[TRUSTY_HWKEY_DERIVE, stringnoz]"}, FldName: "derive"}, + }}}, + {Key: StructKey{Name: "trusty_hwkey_msg[TRUSTY_HWKEY_DERIVE, stringnoz]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "trusty_hwkey_msg[TRUSTY_HWKEY_DERIVE, stringnoz]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "op_id", TypeSize: 4}}, Kind: 2, RangeEnd: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "status", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "arg1", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "arg2", TypeSize: 4}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "payload", IsVarlen: true}, Kind: 2, NoZ: true}, + }}}, + {Key: StructKey{Name: "trusty_hwkey_msg[TRUSTY_HWKEY_GET_KEYSLOT, stringnoz]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "trusty_hwkey_msg[TRUSTY_HWKEY_GET_KEYSLOT, stringnoz]", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "op_id", TypeSize: 4}}, Kind: 2, RangeEnd: 4}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "status", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "arg1", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "arg2", TypeSize: 4}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "payload", IsVarlen: true}, Kind: 2, NoZ: true}, + }}}, {Key: StructKey{Name: "trusty_km_attest_key"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "trusty_km_attest_key", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "trusty_blob"}, FldName: "key_blob"}, &StructType{Key: StructKey{Name: "trusty_authorization_set"}, FldName: "attest_params"}, @@ -32715,6 +32736,11 @@ var syscalls_amd64 = []*Syscall{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 1074295424}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 30}, Kind: 2, Values: []string{"com.android.trusty.gatekeeper\x00"}}}, }}, + {NR: 16, Name: "ioctl$TIPC_IOC_CONNECT_hwkey", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_trusty_hwkey", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 1074295424}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 25}, Kind: 2, Values: []string{"com.android.trusty.hwkey\x00"}}}, + }}, {NR: 16, Name: "ioctl$TIPC_IOC_CONNECT_keymaster_secure", CallName: "ioctl", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_trusty_km_secure", FldName: "fd", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 1074295424}, @@ -35269,6 +35295,12 @@ var syscalls_amd64 = []*Syscall{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "trusty_open_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{2, 2050}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "mode", TypeSize: 8}}}, }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_trusty_gatekeeper", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {NR: 257, Name: "openat$trusty_hwkey", CallName: "openat", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "fd", TypeSize: 8}}, Val: 18446744073709551516}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 21}, Kind: 2, Values: []string{"/dev/trusty-ipc-dev0\x00"}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "trusty_open_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{2, 2050}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "mode", TypeSize: 8}}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_trusty_hwkey", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {NR: 257, Name: "openat$trusty_km", CallName: "openat", Args: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "fd", TypeSize: 8}}, Val: 18446744073709551516}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 21}, Kind: 2, Values: []string{"/dev/trusty-ipc-dev0\x00"}}}, @@ -40521,6 +40553,11 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &UnionType{Key: StructKey{Name: "trusty_gatekeeper_msg"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "msg"}, }}, + {NR: 1, Name: "write$trusty_hwkey", CallName: "write", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_trusty_hwkey", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &UnionType{Key: StructKey{Name: "trusty_hwkey"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "msg"}, + }}, {NR: 1, Name: "write$trusty_km", CallName: "write", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_trusty_km", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &UnionType{Key: StructKey{Name: "trusty_km_msg"}}}, @@ -45964,6 +46001,8 @@ var consts_amd64 = []ConstValue{ {Name: "TRUSTY_ERROR_UNKNOWN", Value: 3}, {Name: "TRUSTY_GK_ENROLL"}, {Name: "TRUSTY_GK_VERIFY", Value: 2}, + {Name: "TRUSTY_HWKEY_DERIVE", Value: 2}, + {Name: "TRUSTY_HWKEY_GET_KEYSLOT"}, {Name: "TRUSTY_KM_ABORT_OPERATION", Value: 16}, {Name: "TRUSTY_KM_ADD_RNG_ENTROPY", Value: 32}, {Name: "TRUSTY_KM_ATTEST_KEY", Value: 64}, @@ -47809,4 +47848,4 @@ var consts_amd64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_amd64 = "967577a619d816cf7f54ea5962c337b5247f34e6" +const revision_amd64 = "84d678c037b68865265e5a986f9f1e4f7f80eae5" -- cgit mrf-deployment