From ddf7b3e0655cf6dfeacfe509e477c1486d2cc7db Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Wed, 22 Nov 2017 11:42:10 +0100 Subject: sys/linux: improve AF_ALG alg name generation There is effectively infinite number of possible crypto algorithm names due to templates. Plus there is tricky relation between algorithms and algorithm type names. This change adds custom mutator for sockaddr_alg struct to improve variance in generated algorithms. --- sys/linux/amd64.go | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'sys/linux/amd64.go') diff --git a/sys/linux/amd64.go b/sys/linux/amd64.go index e53cea7ed..d1e061c83 100644 --- a/sys/linux/amd64.go +++ b/sys/linux/amd64.go @@ -420,7 +420,7 @@ var structDescs_amd64 = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "parent"}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 279}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4}}, Val: 3}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "op", TypeSize: 4}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "alg_op_op", FldName: "op", TypeSize: 4}}, Vals: []uint64{0, 1}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true}, }, AlignAttr: 8}}, {Key: StructKey{Name: "cmsghdr_sctp"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "cmsghdr_sctp", TypeSize: 48}, Fields: []Type{ @@ -5974,8 +5974,8 @@ var syscalls_amd64 = []*Syscall{ }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {ID: 1, NR: 43, Name: "accept$alg", CallName: "accept", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_alg", FldName: "fd", TypeSize: 4}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "peer", TypeSize: 8, IsOptional: true}, Type: &StructType{Key: StructKey{Name: "sockaddr_alg", Dir: 1}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "peerlen", TypeSize: 8}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", TypeSize: 4, ArgDir: 2}}, Buf: "peer"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "peer", TypeSize: 8}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "peerlen", TypeSize: 8}}}, }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_algconn", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {ID: 2, NR: 43, Name: "accept$ax25", CallName: "accept", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_ax25", FldName: "fd", TypeSize: 4}}, @@ -14322,6 +14322,8 @@ var consts_amd64 = []ConstValue{ {Name: "AH_ESP_V6_FLOW", Value: 8}, {Name: "AH_V4_FLOW", Value: 9}, {Name: "AH_V6_FLOW", Value: 11}, + {Name: "ALG_OP_DECRYPT"}, + {Name: "ALG_OP_ENCRYPT", Value: 1}, {Name: "ALG_SET_AEAD_ASSOCLEN", Value: 4}, {Name: "ALG_SET_AEAD_AUTHSIZE", Value: 5}, {Name: "ALG_SET_IV", Value: 2}, @@ -17327,4 +17329,4 @@ var consts_amd64 = []ConstValue{ {Name: "__WNOTHREAD", Value: 536870912}, } -const revision_amd64 = "7a950be35f2798eefd0ac374561c8e547930bab1" +const revision_amd64 = "6db640031dfbd383d097fd924b9852fbd9e33616" -- cgit mrf-deployment