From 82e48c8a634da3cfa3a1666b27e3044e3ce17e06 Mon Sep 17 00:00:00 2001 From: Evgenii Stratonikov Date: Thu, 26 Dec 2024 10:03:55 +0300 Subject: [PATCH] [#317] api: Revert easyproto marshaler usage It has caused a noticeable degradation in node. Signed-off-by: Evgenii Stratonikov --- Makefile | 9 +- api/accounting/grpc/service.pb.go | Bin 0 -> 21040 bytes api/accounting/grpc/service_frostfs.pb.go | Bin 18911 -> 0 bytes api/accounting/grpc/service_frostfs_fuzz.go | 45 -- api/accounting/grpc/service_frostfs_test.go | 31 -- api/accounting/grpc/service_grpc.pb.go | Bin 4333 -> 5746 bytes api/accounting/grpc/service_protoopaque.pb.go | Bin 0 -> 20927 bytes api/accounting/grpc/types.pb.go | Bin 0 -> 6102 bytes api/accounting/grpc/types_frostfs.pb.go | Bin 4327 -> 0 bytes api/accounting/grpc/types_frostfs_fuzz.go | 26 -- api/accounting/grpc/types_frostfs_test.go | 21 - api/accounting/grpc/types_protoopaque.pb.go | Bin 0 -> 6632 bytes api/acl/convert.go | 36 +- api/acl/grpc/types.pb.go | Bin 0 -> 49384 bytes api/acl/grpc/types_frostfs.pb.go | Bin 48134 -> 0 bytes api/acl/grpc/types_frostfs_fuzz.go | 64 --- api/acl/grpc/types_frostfs_test.go | 41 -- api/acl/grpc/types_protoopaque.pb.go | Bin 0 -> 53156 bytes api/acl/string.go | 32 +- api/ape/convert.go | 7 +- api/ape/grpc/types.pb.go | Bin 0 -> 10181 bytes api/ape/grpc/types_frostfs.pb.go | Bin 8671 -> 0 bytes api/ape/grpc/types_frostfs_fuzz.go | 45 -- api/ape/grpc/types_frostfs_test.go | 31 -- api/ape/grpc/types_protoopaque.pb.go | Bin 0 -> 10917 bytes api/apemanager/convert.go | 6 +- api/apemanager/grpc/service.pb.go | Bin 0 -> 53295 bytes api/apemanager/grpc/service_frostfs.pb.go | Bin 57305 -> 0 bytes api/apemanager/grpc/service_frostfs_fuzz.go | 121 ------ api/apemanager/grpc/service_frostfs_test.go | 71 ---- api/apemanager/grpc/service_grpc.pb.go | Bin 10001 -> 11002 bytes api/apemanager/grpc/service_protoopaque.pb.go | Bin 0 -> 53814 bytes api/container/convert.go | 10 +- api/container/grpc/service.pb.go | Bin 0 -> 88906 bytes api/container/grpc/service_frostfs.pb.go | Bin 95872 -> 0 bytes api/container/grpc/service_frostfs_fuzz.go | 197 --------- api/container/grpc/service_frostfs_test.go | 111 ----- api/container/grpc/service_grpc.pb.go | Bin 14646 -> 15986 bytes api/container/grpc/service_protoopaque.pb.go | Bin 0 -> 88711 bytes api/container/grpc/types.pb.go | Bin 0 -> 15349 bytes api/container/grpc/types_frostfs.pb.go | Bin 12289 -> 0 bytes api/container/grpc/types_frostfs_fuzz.go | 26 -- api/container/grpc/types_frostfs_test.go | 21 - api/container/grpc/types_protoopaque.pb.go | Bin 0 -> 16639 bytes api/lock/grpc/types.pb.go | Bin 0 -> 5462 bytes api/lock/grpc/types_frostfs.pb.go | Bin 3858 -> 0 bytes api/lock/grpc/types_frostfs_fuzz.go | 26 -- api/lock/grpc/types_frostfs_test.go | 21 - api/lock/grpc/types_protoopaque.pb.go | Bin 0 -> 5457 bytes api/netmap/convert.go | 58 +-- api/netmap/grpc/service.pb.go | Bin 0 -> 52563 bytes api/netmap/grpc/service_frostfs.pb.go | Bin 55007 -> 0 bytes api/netmap/grpc/service_frostfs_fuzz.go | 121 ------ api/netmap/grpc/service_frostfs_test.go | 71 ---- api/netmap/grpc/service_grpc.pb.go | Bin 9148 -> 10447 bytes api/netmap/grpc/service_protoopaque.pb.go | Bin 0 -> 52264 bytes api/netmap/grpc/types.pb.go | Bin 0 -> 56048 bytes api/netmap/grpc/types_frostfs.pb.go | Bin 57653 -> 0 bytes api/netmap/grpc/types_frostfs_fuzz.go | 159 ------- api/netmap/grpc/types_frostfs_test.go | 91 ---- api/netmap/grpc/types_protoopaque.pb.go | Bin 0 -> 63657 bytes api/netmap/string.go | 18 +- api/object/convert.go | 81 ++-- api/object/grpc/service.pb.go | Bin 0 -> 208899 bytes api/object/grpc/service_frostfs.pb.go | Bin 224187 -> 0 bytes api/object/grpc/service_frostfs_fuzz.go | 387 ------------------ api/object/grpc/service_frostfs_test.go | 211 ---------- api/object/grpc/service_grpc.pb.go | Bin 46656 -> 47309 bytes api/object/grpc/service_protoopaque.pb.go | Bin 0 -> 212127 bytes api/object/grpc/types.pb.go | Bin 0 -> 65300 bytes api/object/grpc/types_frostfs.pb.go | Bin 65533 -> 0 bytes api/object/grpc/types_frostfs_fuzz.go | 102 ----- api/object/grpc/types_frostfs_test.go | 61 --- api/object/grpc/types_protoopaque.pb.go | Bin 0 -> 71065 bytes api/object/lock.go | 8 +- api/object/string.go | 12 +- api/refs/convert.go | 20 +- api/refs/grpc/types.pb.go | Bin 0 -> 28831 bytes api/refs/grpc/types_frostfs.pb.go | Bin 31179 -> 0 bytes api/refs/grpc/types_frostfs_fuzz.go | 159 ------- api/refs/grpc/types_frostfs_test.go | 91 ---- api/refs/grpc/types_protoopaque.pb.go | Bin 0 -> 33000 bytes api/refs/string.go | 12 +- api/rpc/message/encoding.go | 20 +- api/rpc/message/test/message.go | 1 + api/session/convert.go | 10 +- api/session/grpc/service.pb.go | Bin 0 -> 20929 bytes api/session/grpc/service_frostfs.pb.go | Bin 20352 -> 0 bytes api/session/grpc/service_frostfs_fuzz.go | 45 -- api/session/grpc/service_frostfs_test.go | 31 -- api/session/grpc/service_grpc.pb.go | Bin 4116 -> 5345 bytes api/session/grpc/service_protoopaque.pb.go | Bin 0 -> 21759 bytes api/session/grpc/types.pb.go | Bin 0 -> 70694 bytes api/session/grpc/types_frostfs.pb.go | Bin 70892 -> 0 bytes api/session/grpc/types_frostfs_fuzz.go | 159 ------- api/session/grpc/types_frostfs_test.go | 91 ---- api/session/grpc/types_protoopaque.pb.go | Bin 0 -> 75732 bytes api/session/string.go | 12 +- api/status/convert.go | 8 +- api/status/grpc/types.pb.go | Bin 0 -> 23823 bytes api/status/grpc/types_frostfs.pb.go | Bin 14223 -> 0 bytes api/status/grpc/types_frostfs_fuzz.go | 26 -- api/status/grpc/types_frostfs_test.go | 21 - api/status/grpc/types_protoopaque.pb.go | Bin 0 -> 24955 bytes api/tombstone/grpc/types.pb.go | Bin 0 -> 8048 bytes api/tombstone/grpc/types_frostfs.pb.go | Bin 5846 -> 0 bytes api/tombstone/grpc/types_frostfs_fuzz.go | 26 -- api/tombstone/grpc/types_frostfs_test.go | 21 - api/tombstone/grpc/types_protoopaque.pb.go | Bin 0 -> 8253 bytes object/raw_test.go | 4 + 110 files changed, 172 insertions(+), 2963 deletions(-) create mode 100644 api/accounting/grpc/service.pb.go delete mode 100644 api/accounting/grpc/service_frostfs.pb.go delete mode 100644 api/accounting/grpc/service_frostfs_fuzz.go delete mode 100644 api/accounting/grpc/service_frostfs_test.go create mode 100644 api/accounting/grpc/service_protoopaque.pb.go create mode 100644 api/accounting/grpc/types.pb.go delete mode 100644 api/accounting/grpc/types_frostfs.pb.go delete mode 100644 api/accounting/grpc/types_frostfs_fuzz.go delete mode 100644 api/accounting/grpc/types_frostfs_test.go create mode 100644 api/accounting/grpc/types_protoopaque.pb.go create mode 100644 api/acl/grpc/types.pb.go delete mode 100644 api/acl/grpc/types_frostfs.pb.go delete mode 100644 api/acl/grpc/types_frostfs_fuzz.go delete mode 100644 api/acl/grpc/types_frostfs_test.go create mode 100644 api/acl/grpc/types_protoopaque.pb.go create mode 100644 api/ape/grpc/types.pb.go delete mode 100644 api/ape/grpc/types_frostfs.pb.go delete mode 100644 api/ape/grpc/types_frostfs_fuzz.go delete mode 100644 api/ape/grpc/types_frostfs_test.go create mode 100644 api/ape/grpc/types_protoopaque.pb.go create mode 100644 api/apemanager/grpc/service.pb.go delete mode 100644 api/apemanager/grpc/service_frostfs.pb.go delete mode 100644 api/apemanager/grpc/service_frostfs_fuzz.go delete mode 100644 api/apemanager/grpc/service_frostfs_test.go create mode 100644 api/apemanager/grpc/service_protoopaque.pb.go create mode 100644 api/container/grpc/service.pb.go delete mode 100644 api/container/grpc/service_frostfs.pb.go delete mode 100644 api/container/grpc/service_frostfs_fuzz.go delete mode 100644 api/container/grpc/service_frostfs_test.go create mode 100644 api/container/grpc/service_protoopaque.pb.go create mode 100644 api/container/grpc/types.pb.go delete mode 100644 api/container/grpc/types_frostfs.pb.go delete mode 100644 api/container/grpc/types_frostfs_fuzz.go delete mode 100644 api/container/grpc/types_frostfs_test.go create mode 100644 api/container/grpc/types_protoopaque.pb.go create mode 100644 api/lock/grpc/types.pb.go delete mode 100644 api/lock/grpc/types_frostfs.pb.go delete mode 100644 api/lock/grpc/types_frostfs_fuzz.go delete mode 100644 api/lock/grpc/types_frostfs_test.go create mode 100644 api/lock/grpc/types_protoopaque.pb.go create mode 100644 api/netmap/grpc/service.pb.go delete mode 100644 api/netmap/grpc/service_frostfs.pb.go delete mode 100644 api/netmap/grpc/service_frostfs_fuzz.go delete mode 100644 api/netmap/grpc/service_frostfs_test.go create mode 100644 api/netmap/grpc/service_protoopaque.pb.go create mode 100644 api/netmap/grpc/types.pb.go delete mode 100644 api/netmap/grpc/types_frostfs.pb.go delete mode 100644 api/netmap/grpc/types_frostfs_fuzz.go delete mode 100644 api/netmap/grpc/types_frostfs_test.go create mode 100644 api/netmap/grpc/types_protoopaque.pb.go create mode 100644 api/object/grpc/service.pb.go delete mode 100644 api/object/grpc/service_frostfs.pb.go delete mode 100644 api/object/grpc/service_frostfs_fuzz.go delete mode 100644 api/object/grpc/service_frostfs_test.go create mode 100644 api/object/grpc/service_protoopaque.pb.go create mode 100644 api/object/grpc/types.pb.go delete mode 100644 api/object/grpc/types_frostfs.pb.go delete mode 100644 api/object/grpc/types_frostfs_fuzz.go delete mode 100644 api/object/grpc/types_frostfs_test.go create mode 100644 api/object/grpc/types_protoopaque.pb.go create mode 100644 api/refs/grpc/types.pb.go delete mode 100644 api/refs/grpc/types_frostfs.pb.go delete mode 100644 api/refs/grpc/types_frostfs_fuzz.go delete mode 100644 api/refs/grpc/types_frostfs_test.go create mode 100644 api/refs/grpc/types_protoopaque.pb.go create mode 100644 api/session/grpc/service.pb.go delete mode 100644 api/session/grpc/service_frostfs.pb.go delete mode 100644 api/session/grpc/service_frostfs_fuzz.go delete mode 100644 api/session/grpc/service_frostfs_test.go create mode 100644 api/session/grpc/service_protoopaque.pb.go create mode 100644 api/session/grpc/types.pb.go delete mode 100644 api/session/grpc/types_frostfs.pb.go delete mode 100644 api/session/grpc/types_frostfs_fuzz.go delete mode 100644 api/session/grpc/types_frostfs_test.go create mode 100644 api/session/grpc/types_protoopaque.pb.go create mode 100644 api/status/grpc/types.pb.go delete mode 100644 api/status/grpc/types_frostfs.pb.go delete mode 100644 api/status/grpc/types_frostfs_fuzz.go delete mode 100644 api/status/grpc/types_frostfs_test.go create mode 100644 api/status/grpc/types_protoopaque.pb.go create mode 100644 api/tombstone/grpc/types.pb.go delete mode 100644 api/tombstone/grpc/types_frostfs.pb.go delete mode 100644 api/tombstone/grpc/types_frostfs_fuzz.go delete mode 100644 api/tombstone/grpc/types_frostfs_test.go create mode 100644 api/tombstone/grpc/types_protoopaque.pb.go diff --git a/Makefile b/Makefile index 1830380..eab6ec1 100755 --- a/Makefile +++ b/Makefile @@ -52,13 +52,12 @@ protoc: make protoc-install; \ fi # Protoc generate - @for f in `find . -type f -name '*.proto' -not -path './bin/*' -not -path './api/util/proto/test/*'`; do \ + @for f in `find . -type f -name '*.proto' -not -path './bin/*'`; do \ echo "⇒ Processing $$f "; \ $(PROTOC_DIR)/bin/protoc \ - --proto_path=.:$(PROTOC_DIR)/include:/usr/local/include \ - --plugin=protoc-gen-go-frostfs=$(abspath ./bin/protogen) \ - --go-frostfs_out=fuzz=true:. \ - --go-frostfs_opt=paths=source_relative \ + --plugin=protoc-gen-go=$(PROTOC_GEN_GO_DIR)/protoc-gen-go \ + --go_out=. --go_opt=paths=source_relative \ + --go_opt=default_api_level=API_HYBRID \ --go-grpc_opt=require_unimplemented_servers=false \ --go-grpc_out=. --go-grpc_opt=paths=source_relative $$f; \ done diff --git a/api/accounting/grpc/service.pb.go b/api/accounting/grpc/service.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..96cc7b1337d511d47f874f300149cf537c94d7f8 GIT binary patch literal 21040 zcmds9TXWh-7Jf#*q9+f#CS}WjF;1w;R?Xx#u9{3zv1e+lQYkE;!CHgFNP^%^<-hN_ zNoom62z;4j^FXlFeNLb6+|`YakJU?mtkqO|I&dOAR>NDh2>i$&9l^Dusc)-S@73?` zFV*W;=a;s1e5_VF2wmR``}jvAGgz(K_DRof8+VlaTbArFn?y)l( z`AaWyz3K5ZSd5NC9jx4uwu!6-qo;miN>dzc+YWul2I>Xd339Vv1Gu14pop>`bXw}jxckoa6e$wzHiH#k%A%DWmceW3-FW^N?~SWx<4~oJ^oMyJe8K&%e(8Xa6x7pU z7x8uLn`KRw-bfv+RnDrL>Z1;IbkIbndb)=Ak+u4-->k;mRs9$09}{<`2M~`3X>=c; z0SzQO42bh!9!@X8b;D1s&oDK_sp*pbZND=d_5I`^z4gI&y+{WK>n6mbd1zlmexPOa zIrzxI+-+70auEfPus{-s67U5D3Uss#ykh=11{Sb3h;Cr>0duab0U@fwk;Z=Hd;w!g zFbVRp(72>Kfay-uTK)7wdF~7;?G0`N2m!#q`OetHx2ayFv`aP6Xn;k;z|KPp{}h<# zZY*dH*8;11t0Ro308|ci4znO$URq(YwsD@x7T~C~3t*MTHe^^5^{RNL1a{<1F+;*h zo;Tgg#*?Zwn51@D#f3n*)kLugHPtVuZ?KwN4x>EZqM~WDni?KL7RP#O z*g9167Bp>#3i~#^Zg|sB^4uD7YFuFBDC18YowNI4=0cj8TPTj%YeCQ8ficeun=QGS zddU5DTUp+l?H1p^*M2Ku`F%88yc|QZS5z(YLOtpd457cw9 zP!&xV54c0u)qbq5D;DKG+pd^qt-dQW_`w=4#53QD?Az7;t&LXBo7r)LdqHTaT7^k#r*#zdUk2c{8n9TVvJNbd zXHjik(%TuNO%aVAj7Mz3wNn!ovw6@i%wUol4JiJ>+AxD*2E2V(nglBQu$bx2jaX)4 z2A~}}u?!J&&44qJF|U=iVoW41r2n>FjF%Bt!IhP0uER-YexC(p@oHB;L_@~Vk`>kH z$g-AH)RKv+z&7W(o{aBcvGun$WtTqee2h_6-p!Eb>-1FN%e6bY&g@pfu83^w=<%U) z;W>pn#?6q4s{?HDWZTGA=aCvYo*LpF$gR?AH^dFycyAV1syDa``{qK0Kw)(4z?CcM zSFey#ICo&<7B(kgi)0i5!HL4{3D}Q5RHGU0KPud3)N}a88#wR&xVTiIhU>6->Ep7I zjx6_|uyg57VMkkCz5fFLoxi%Wi+1_A47q#r`KL2;$GC+S7zm-*3425scHT;XCNE0B zwqdK}ucaHngCD?pHimG)a*Sm∨^bEy8W~DaKYI?CR)X;Es6~jC1s2^pVwZ(roJ=B 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 Nc3G8{I{a(h{{lBlS&#q# literal 0 HcmV?d00001 diff --git a/api/accounting/grpc/types.pb.go b/api/accounting/grpc/types.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..760deed55b1d434ddb42536b6a4b6b5aeb62b388 GIT binary patch literal 6102 zcmb_g-EP}P6TKFnV(W`kGGvO9Ww{mLi#AU31!x*0c8darp-|*fW=(SWEtiVa!0+Dq zS(58iP1v-)pvBppIWuQw_J@;+c&=h8HnNa9G%^2sOX?tFpmr5Hk^w=dWlT1cN z9Bq`^WYXWLEG#y@(whmHTGz?M&S8OlIkNg-F8jPPx}8f_#@V3Rg0{v+o)-aEc-x{%&qOPF+(n7q{sxmLHMO;f^6iDPQj7%Y`3Jt0Rn3F=ws?Ln~a4!oH zgT;-=l&NsE%EK%ZMV+su7OKR$#&Y$=je^q4wqO+WGr&M|rIt~O3<3#NEytoNK@eu* z{U!VdQ||@voI}1KH{>C_id+@agnBO`m6x@#2w)FQUS%?@q^P76w>JRwikd4E)}Z)7 zr{+GFCXI0RHR3_W$;RFA-k5SZnSd9WR7R_<^Z{cMvon(sdLv>0PcvW(=wD|tM?0~s zBAu2PtM3u94PIq*4W01O8&u$_bgKk7g+78Df%rY;61skQbiZHgH1@aCqxV!jKQoz- z8>Eg1mQd3->H*kKG-QVu_6EO(86@o(61zyfk}@dex?e#-R{mq6u<+uRe%8EcTr*tru8NSWVz8B#GPyXt|LZTBtLL z%hGWTBd4fvoN?1rweXQdwQMzEaZm49uNmUi}QScrysIy&t5 zwSmlUz;mcV>{19oOH=FOFfh&m(T2b{L$0L%8sNx&ztWr{i=TG|PHJ&Pe=-r(fWsSp;e63TVN1wt)2*)+F2n*1=fh0UQ;_ z0#A!5cT>3Lo<>m@8cgfnx@Ckq8uo4Rvd6~qbeTnsOM4tq+Vjv#ukA^PA5afGzr9=U zjf6r9c0o86!ET!1b1}u|IYbG+zsKjykuOe3&QFq`pOFNPb)Yq;-=wu5$>MyB0M^7g zO`6e@0mu-Kvhq18TX-^k&T|-mw9d)Gg5l=`z%Nr8n6ej)&)(708A}!f?;0h^De2ld z#6cS?Mqtst6fDw3hE8LIVPXS{d(LjL1tyS*ia7$tj8M&u!|G> zL6V&r5f$+7?+73u%ro*X=wpt_BpB<2lN+0ZCK{rMhuzS)a)@{99kcw@J0yzevd$fX zApplTR|OX+=Y|VzP5}J-jLLcrEeiRg9PoUuv?t{-bE=3<+gkohwOB}}mKdIk_>7Xw zzz0_;2c+xrG-n40-q7HHhk^_HcepvsLv?} z6u8Cb`eiDJ-_Q5?DQAMC4#{IN9rZW5QFP^@O$Dxuu%`^0-E=gBlgVg| zr;T7K3aR|0^0za;yF&SPmxVBTM-j{Nb-b$xkS>_GjS-9;N!Zn&c zC`fa!VxejSpA+cH)>|hn`m4yDkp+G2z_Zv2Z{lCZ>6GYKEPLoAcnzlSI}FlX)zTuR zYiz&sfSvuw7vf$=hz5Y}Grf*3&Rver=X5fsv+B;CPVt%zsd;)`#;T&@nbeTr0b(tk zOD!H`oZ-PMb;VyTuR?Rbgzs1MebPrOcv1WKIP$L^HaIvOK_d+Y@Axo;-*l8-_9M(5 zphzD++Pr|TVAYboG>D)P+D0Pzv=P2&3IoLL%xkH)X(VYT2_JF#EAA(2mW=nxjO{}- zaVbk##IlI?ui@Vg5qg=horNZx<$(MHKYE#HmKd<{=-bn^N6Gur#}nvhr~x1I>-VNP>+3 literal 0 HcmV?d00001 diff --git a/api/accounting/grpc/types_frostfs.pb.go b/api/accounting/grpc/types_frostfs.pb.go deleted file mode 100644 index 9d0e9ead422fda3f3b8c0da7fbeedd64cee3ffca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4327 zcmcInTTk3Z6n?gU#l%t@FI{W`Q67+}lmM*~B?J{n9-69|wa4J#%W6E{U5fbc{mz;3 z>@I9*)U=43$KN^go%`7|6^CuE#HDJKmPX}bawDd?HEp(yv+c`vyU=ZCiY^gH@5Rac zb8&q1`aB84sm!kBr4lmB+P*Pma~XzZJ#DoSaTt8*+D1gG$=V!mQhJQSps07a!a%I;>#?5dw6SzD(c%FML7l<$<$W!9x01&J?}S}4r~26!#YO81N+*QFLh*tssv zKY=X<=+5Y@ZDt~J|3u*^49(3{i6fPjwX6hQ^qCR2Vemm#y%O|QHs-~1AwJX1`_YWf zqt9V*sv*;rh-(kT-tGXH4(9;fh2czUN`ODb;FIK(T>Vb!?n+jmF2sR|w;X{{+?3Vm zA^f7Ly}(8|kxN#UGIjd(b@-~%N8s>Lnu;?cCzU!Y|58FL)9a=a=1Pf<4%$L2;3iur zlfDo|t7~Zz$XQWxYOhr%=B2r^ajU_Gl-rIKcdF~q(R@;1tkkHnB8Na3}S5>F1q4u`m|lb6$}YH|+fdN2`m z7V%-*Aa()w@9oA9!h7d}>I-G?&f{VAa5((YzcO zN11Gz)}ZQTE*hwCWs7?Mp^L^Ma;+;u9#Dw|9f~}=q6_)5lfLF4WwKM^*}g!LaG?Pi zl9#K@!LnN#j)`4{jUQCsP}Z_eJI+%M02!|~CYbd8PF z&}gxJmW#;M;hd7y?H$QSUO#RTv&GO7kFoHu^pA5Sj*G)QdDRza!1z;E`75;UE*_1= z+!onJ=Q<)@UE3S6wSMo$UI|?Co1C9vv1%^ksOhVUv(7SMzZa!O8;2R#c2pQR31SsL zy?qMSRCZK>7RW`o1{xD6xD%>EP4jDuL={UM(L4NL*TOYZt%`C%n-%yVUePDJLw$<& zv62m!JGvH3%Gd6T_&z%FZY-b*I%%IZDV_}lr6TiV=*KpRC z3{YHi#vPntQ{K;yuO_`meDf&c)TK7*=Maw|in8X+=j}XsOFR1Q5pet5RJj8DZ9Zv# z)Ns420d12V%gCmt_D~iBX3H-6_BNaC-FZ8Gt7fVqGG&vz?y#9^UU87Id~kx4NA0?} zmP-lFR6sB^yS`RA?M0laI6J#8r~JH9CpbP*Rav{Lpb`6oZ*ZrG1mAM4ZXBD7rjv!T za}OJC%;iA0KbPqYNy!y6y|i?P)&`+i{};z zbMCJaZ1l@K=RJa!8H;r3!1}361i^G>y@yd2&n$?ldphH{%OO*e*-i& BKuiDt diff --git a/api/accounting/grpc/types_frostfs_fuzz.go b/api/accounting/grpc/types_frostfs_fuzz.go deleted file mode 100644 index 5eb5e97..0000000 --- a/api/accounting/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,26 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package accounting - -func DoFuzzProtoDecimal(data []byte) int { - msg := new(Decimal) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONDecimal(data []byte) int { - msg := new(Decimal) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/api/accounting/grpc/types_frostfs_test.go b/api/accounting/grpc/types_frostfs_test.go deleted file mode 100644 index 404b75e..0000000 --- a/api/accounting/grpc/types_frostfs_test.go +++ /dev/null @@ -1,21 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package accounting - -import ( - testing "testing" -) - -func FuzzProtoDecimal(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoDecimal(data) - }) -} -func FuzzJSONDecimal(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONDecimal(data) - }) -} diff --git a/api/accounting/grpc/types_protoopaque.pb.go b/api/accounting/grpc/types_protoopaque.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..49a80caf807085f7b3a663fbbea64665282019d4 GIT binary patch literal 6632 zcmcIo+iu%N5Pc@UV(W)iGGvO9Ww{mLhc=GW08L`VZehSM6pCEQtVu3QE)}YQ|Gjfr ziYs4YHbwm)OUs=(GiNS4+~H8XQjruZnaLv1G7^i8$P1-acmQh$E9HsP590lYOY!>j z?WN}qhhi;@GFDkR!ynGhX0aZ5hf{B4JrU+_edLXQ^2Ye2R81g|QdY}l9L6%!$wpN9fmR0*1jcinxj11O5Y2m?Efuf`8Zj8X zu`dp+r|;s-Jn6g61K{GJ<^KVexFmbt1+_s0L&kpJ1=j)iLI+tC6p>gaD!?#{T*a9d z;8P$l*dh$FAGBCVQI(K>aVE|RRqC?~5mi!X1uL=+LY>L7M1^Vz%t=wmvP!i0d@C~% zfyR|clrHgUnFdKBvMOE3LZ}?m8ne|CmkKg3S%XrLPXGhe<%JAmWDrOwD>)El4humd zKApmUQ1wXw&nd(UVnY_fPm!uj>Y&(&P^EdL4Fc#xmFI~JN-0Vy#q}jXy`kDlgi$Dd zE@FL~N*#x|`vUPG;-urIcdKx}iTaWfWxlUcz z^V>LzWH$dJNFYf32T`3)TBXf5)&k`=+gk?(Y#NLPD%XQ7Nae{I<@dy&r2-K8F;Ho& zWt!{F1E}+DpoFME&EdE~*#3VEHEyA{fo|Zo3%ih4S6A~Q2<55N&_8}v>h2U%wdLsJ zqld18LZGjdS=i8lR$Y&7*i_f4vb#)u&dy?)MCI0EOYQIW1_)LBw|o_ZkUl$qtr-{1 z2KU}|msJ*uUM==b%=_Xa7^8cAjQV~Jjl(?na_>56EM_O-`z2)199rRT zn^}vOq88tsh%8P}&o{H^fFfY>Hx)!Sk$rK}>VB4L$AQ2%M5d*SKMk#E+_?FGM?0O~ zNKLg41aX~%Cl4Jn`fBfCgRs&3r=t$~w*?LurocObY$ZDYT{MoY*%7Lc$0kF?tgT7F zyYfH~aG=6<@B3cu*%c4P(H{tZAjVb}+U&6`pEJF+@$ND5){k#MA3cx$Yfv_^TPQ_I zNTIXx#)NJeB&D=TYzz9zd%^o>TnF&2TM*d)&w$Z02E2mPxM=)`gtA?tXD|BYJeeNP zByywD1e=2VFCoE`UC1qgkQW4NAMbOTk73klkNLTPjKm`W2*-J(kZVZWl7^L_2o`Y? z>y3c93AT(38U?$x`QEX35O;R zTCPKMi+$=8B-whfrimfWBAR%hzu&6QA`P-lt8c3bM?)M80TAXbQiP|;Ga2GFbVa9lt&r#{Tw1A${Vu2aKXcCX4^oskH4~~TSWBk?qzFEv9K_)IX0g!{D%h|60NQOmTH@yv{PF8!h!=eS z2|vfy`t*?2`IFXKLAV;(R9#o-mHH$k4*6Mvjk(S>ry}0jnmke^uuc19IHpbN(_F#P8SZ{E#ETUUDq? zlRZ0PioOaEP)L0uWJEhB49|(k{_#533Y*CEGQg3|AR{xsY!~MVspAZp(E1Uj?1a?W z>)R%QIkqGZUhIgtl^}hp*eTo2G2`5~zT3$S(Zv{W&?J{TG+1+rbn5@j3n&}_X>ccd z*Ej8XYrO^y1WZkMG<8zCQuI1h0g50=PQp+(QW`} zfII6lx>z$7zZuaOL{oQd=4`x3fza$;h+tOHpeYLou!C4L>)HYb8SAn0MxFCT_IaRh zXK|wCFPwWW9kr9oXT8gaHSY--on2c5jv?b zm4zy-c0l%l9i3D(Ee3Sld*(gCrQp4EJqGm*IpATOU8fUPJI+Fz=_u27tL`#w!$FyQ F_aD*QDNg_Z literal 0 HcmV?d00001 diff --git a/api/acl/convert.go b/api/acl/convert.go index 3f389e3..a72260e 100644 --- a/api/acl/convert.go +++ b/api/acl/convert.go @@ -187,24 +187,24 @@ func (f *HeaderFilter) FromGRPCMessage(m grpc.Message) error { return nil } -func HeaderFiltersToGRPC(fs []HeaderFilter) (res []acl.EACLRecord_Filter) { +func HeaderFiltersToGRPC(fs []HeaderFilter) (res []*acl.EACLRecord_Filter) { if fs != nil { - res = make([]acl.EACLRecord_Filter, 0, len(fs)) + res = make([]*acl.EACLRecord_Filter, 0, len(fs)) for i := range fs { - res = append(res, *fs[i].ToGRPCMessage().(*acl.EACLRecord_Filter)) + res = append(res, fs[i].ToGRPCMessage().(*acl.EACLRecord_Filter)) } } return } -func HeaderFiltersFromGRPC(fs []acl.EACLRecord_Filter) (res []HeaderFilter, err error) { +func HeaderFiltersFromGRPC(fs []*acl.EACLRecord_Filter) (res []HeaderFilter, err error) { if fs != nil { res = make([]HeaderFilter, len(fs)) for i := range fs { - err = res[i].FromGRPCMessage(&fs[i]) + err = res[i].FromGRPCMessage(fs[i]) if err != nil { return } @@ -239,24 +239,24 @@ func (t *Target) FromGRPCMessage(m grpc.Message) error { return nil } -func TargetsToGRPC(ts []Target) (res []acl.EACLRecord_Target) { +func TargetsToGRPC(ts []Target) (res []*acl.EACLRecord_Target) { if ts != nil { - res = make([]acl.EACLRecord_Target, 0, len(ts)) + res = make([]*acl.EACLRecord_Target, 0, len(ts)) for i := range ts { - res = append(res, *ts[i].ToGRPCMessage().(*acl.EACLRecord_Target)) + res = append(res, ts[i].ToGRPCMessage().(*acl.EACLRecord_Target)) } } return } -func TargetsFromGRPC(fs []acl.EACLRecord_Target) (res []Target, err error) { +func TargetsFromGRPC(fs []*acl.EACLRecord_Target) (res []Target, err error) { if fs != nil { res = make([]Target, len(fs)) for i := range fs { - err = res[i].FromGRPCMessage(&fs[i]) + err = res[i].FromGRPCMessage(fs[i]) if err != nil { return } @@ -305,24 +305,24 @@ func (r *Record) FromGRPCMessage(m grpc.Message) error { return nil } -func RecordsToGRPC(ts []Record) (res []acl.EACLRecord) { +func RecordsToGRPC(ts []Record) (res []*acl.EACLRecord) { if ts != nil { - res = make([]acl.EACLRecord, 0, len(ts)) + res = make([]*acl.EACLRecord, 0, len(ts)) for i := range ts { - res = append(res, *ts[i].ToGRPCMessage().(*acl.EACLRecord)) + res = append(res, ts[i].ToGRPCMessage().(*acl.EACLRecord)) } } return } -func RecordsFromGRPC(fs []acl.EACLRecord) (res []Record, err error) { +func RecordsFromGRPC(fs []*acl.EACLRecord) (res []Record, err error) { if fs != nil { res = make([]Record, len(fs)) for i := range fs { - err = res[i].FromGRPCMessage(&fs[i]) + err = res[i].FromGRPCMessage(fs[i]) if err != nil { return } @@ -423,9 +423,9 @@ func (c *APEOverride) ToGRPCMessage() grpc.Message { m.SetTarget(c.target.ToGRPCMessage().(*apeGRPC.ChainTarget)) if len(c.chains) > 0 { - apeChains := make([]apeGRPC.Chain, len(c.chains)) + apeChains := make([]*apeGRPC.Chain, len(c.chains)) for i := range c.chains { - apeChains[i] = *c.chains[i].ToGRPCMessage().(*apeGRPC.Chain) + apeChains[i] = c.chains[i].ToGRPCMessage().(*apeGRPC.Chain) } m.SetChains(apeChains) } @@ -453,7 +453,7 @@ func (c *APEOverride) FromGRPCMessage(m grpc.Message) error { c.chains = make([]*ape.Chain, len(apeChains)) for i := range apeChains { c.chains[i] = new(ape.Chain) - if err := c.chains[i].FromGRPCMessage(&apeChains[i]); err != nil { + if err := c.chains[i].FromGRPCMessage(apeChains[i]); err != nil { return err } } diff --git a/api/acl/grpc/types.pb.go b/api/acl/grpc/types.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..93fd0473bedb9889dd652432ab5b6d82c916d2dd GIT binary patch literal 49384 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 literal 0 HcmV?d00001 diff --git a/api/acl/grpc/types_frostfs.pb.go b/api/acl/grpc/types_frostfs.pb.go deleted file mode 100644 index eed28d6ea433c0f200446c51188037605e674b8c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 48134 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 N8*76YJEKd${vY;*ga!Zr diff --git a/api/acl/grpc/types_frostfs_fuzz.go b/api/acl/grpc/types_frostfs_fuzz.go deleted file mode 100644 index 5d5b763..0000000 --- a/api/acl/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,64 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package acl - -func DoFuzzProtoEACLRecord(data []byte) int { - msg := new(EACLRecord) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONEACLRecord(data []byte) int { - msg := new(EACLRecord) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoEACLTable(data []byte) int { - msg := new(EACLTable) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONEACLTable(data []byte) int { - msg := new(EACLTable) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoBearerToken(data []byte) int { - msg := new(BearerToken) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONBearerToken(data []byte) int { - msg := new(BearerToken) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/api/acl/grpc/types_frostfs_test.go b/api/acl/grpc/types_frostfs_test.go deleted file mode 100644 index c6d1c43..0000000 --- a/api/acl/grpc/types_frostfs_test.go +++ /dev/null @@ -1,41 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package acl - -import ( - testing "testing" -) - -func FuzzProtoEACLRecord(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoEACLRecord(data) - }) -} -func FuzzJSONEACLRecord(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONEACLRecord(data) - }) -} -func FuzzProtoEACLTable(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoEACLTable(data) - }) -} -func FuzzJSONEACLTable(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONEACLTable(data) - }) -} -func FuzzProtoBearerToken(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoBearerToken(data) - }) -} -func FuzzJSONBearerToken(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONBearerToken(data) - }) -} diff --git a/api/acl/grpc/types_protoopaque.pb.go b/api/acl/grpc/types_protoopaque.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..a0001bf7ac4b5f1da8a2dcbae29058ef21b6e32d GIT binary patch literal 53156 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 literal 0 HcmV?d00001 diff --git a/api/acl/string.go b/api/acl/string.go index e5a4462..6874e3a 100644 --- a/api/acl/string.go +++ b/api/acl/string.go @@ -14,12 +14,9 @@ func (x Action) String() string { // // Returns true if s was parsed successfully. func (x *Action) FromString(s string) bool { - var g acl.Action - - ok := g.FromString(s) - + g, ok := acl.Action_value[s] if ok { - *x = ActionFromGRPCField(g) + *x = ActionFromGRPCField(acl.Action(g)) } return ok @@ -35,12 +32,10 @@ func (x Role) String() string { // // Returns true if s was parsed successfully. func (x *Role) FromString(s string) bool { - var g acl.Role - - ok := g.FromString(s) + g, ok := acl.Role_value[s] if ok { - *x = RoleFromGRPCField(g) + *x = RoleFromGRPCField(acl.Role(g)) } return ok @@ -56,12 +51,9 @@ func (x Operation) String() string { // // Returns true if s was parsed successfully. func (x *Operation) FromString(s string) bool { - var g acl.Operation - - ok := g.FromString(s) - + g, ok := acl.Operation_value[s] if ok { - *x = OperationFromGRPCField(g) + *x = OperationFromGRPCField(acl.Operation(g)) } return ok @@ -77,12 +69,10 @@ func (x MatchType) String() string { // // Returns true if s was parsed successfully. func (x *MatchType) FromString(s string) bool { - var g acl.MatchType - - ok := g.FromString(s) + g, ok := acl.MatchType_value[s] if ok { - *x = MatchTypeFromGRPCField(g) + *x = MatchTypeFromGRPCField(acl.MatchType(g)) } return ok @@ -98,12 +88,10 @@ func (x HeaderType) String() string { // // Returns true if s was parsed successfully. func (x *HeaderType) FromString(s string) bool { - var g acl.HeaderType - - ok := g.FromString(s) + g, ok := acl.HeaderType_value[s] if ok { - *x = HeaderTypeFromGRPCField(g) + *x = HeaderTypeFromGRPCField(acl.HeaderType(g)) } return ok diff --git a/api/ape/convert.go b/api/ape/convert.go index 7bb0bde..7ca60c3 100644 --- a/api/ape/convert.go +++ b/api/ape/convert.go @@ -76,8 +76,7 @@ func (v2 *ChainRaw) ToGRPCMessage() grpc.Message { if v2 != nil { mgrpc = new(ape.Chain_Raw) - - mgrpc.SetRaw(v2.GetRaw()) + mgrpc.Raw = v2.GetRaw() } return mgrpc @@ -89,7 +88,7 @@ func (v2 *ChainRaw) FromGRPCMessage(m grpc.Message) error { return message.NewUnexpectedMessageType(m, mgrpc) } - v2.SetRaw(mgrpc.GetRaw()) + v2.SetRaw(mgrpc.Raw) return nil } @@ -104,7 +103,7 @@ func (v2 *Chain) ToGRPCMessage() grpc.Message { default: panic(fmt.Sprintf("unsupported chain kind: %T", chainKind)) case *ChainRaw: - mgrpc.SetKind(chainKind.ToGRPCMessage().(*ape.Chain_Raw)) + mgrpc.SetRaw(chainKind.GetRaw()) } } diff --git a/api/ape/grpc/types.pb.go b/api/ape/grpc/types.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..12bcaa78ccf5ca7748a6c8b16acb6356163cfae1 GIT binary patch literal 10181 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 I%FWz=0R?hetpET3 literal 0 HcmV?d00001 diff --git a/api/ape/grpc/types_frostfs.pb.go b/api/ape/grpc/types_frostfs.pb.go deleted file mode 100644 index 0e204bd2cf85303e88582424a111b959196e83cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8671 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 diff --git a/api/ape/grpc/types_frostfs_fuzz.go b/api/ape/grpc/types_frostfs_fuzz.go deleted file mode 100644 index b7bf367..0000000 --- a/api/ape/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,45 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package ape - -func DoFuzzProtoChainTarget(data []byte) int { - msg := new(ChainTarget) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONChainTarget(data []byte) int { - msg := new(ChainTarget) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoChain(data []byte) int { - msg := new(Chain) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONChain(data []byte) int { - msg := new(Chain) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/api/ape/grpc/types_frostfs_test.go b/api/ape/grpc/types_frostfs_test.go deleted file mode 100644 index 93d7eea..0000000 --- a/api/ape/grpc/types_frostfs_test.go +++ /dev/null @@ -1,31 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package ape - -import ( - testing "testing" -) - -func FuzzProtoChainTarget(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoChainTarget(data) - }) -} -func FuzzJSONChainTarget(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONChainTarget(data) - }) -} -func FuzzProtoChain(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoChain(data) - }) -} -func FuzzJSONChain(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONChain(data) - }) -} diff --git a/api/ape/grpc/types_protoopaque.pb.go b/api/ape/grpc/types_protoopaque.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..100ea619873eb64bf3c5c6775e3074cfdd36c1f6 GIT binary patch literal 10917 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

$JTi&V@JG-kb$4Obv$wT5g2O>cUF$r)1kdoHr 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 diff --git a/api/apemanager/grpc/service_frostfs_fuzz.go b/api/apemanager/grpc/service_frostfs_fuzz.go deleted file mode 100644 index 08af63e..0000000 --- a/api/apemanager/grpc/service_frostfs_fuzz.go +++ /dev/null @@ -1,121 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package apemanager - -func DoFuzzProtoAddChainRequest(data []byte) int { - msg := new(AddChainRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONAddChainRequest(data []byte) int { - msg := new(AddChainRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoAddChainResponse(data []byte) int { - msg := new(AddChainResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONAddChainResponse(data []byte) int { - msg := new(AddChainResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoRemoveChainRequest(data []byte) int { - msg := new(RemoveChainRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONRemoveChainRequest(data []byte) int { - msg := new(RemoveChainRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoRemoveChainResponse(data []byte) int { - msg := new(RemoveChainResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONRemoveChainResponse(data []byte) int { - msg := new(RemoveChainResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoListChainsRequest(data []byte) int { - msg := new(ListChainsRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONListChainsRequest(data []byte) int { - msg := new(ListChainsRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoListChainsResponse(data []byte) int { - msg := new(ListChainsResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONListChainsResponse(data []byte) int { - msg := new(ListChainsResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/api/apemanager/grpc/service_frostfs_test.go b/api/apemanager/grpc/service_frostfs_test.go deleted file mode 100644 index 5c4653c..0000000 --- a/api/apemanager/grpc/service_frostfs_test.go +++ /dev/null @@ -1,71 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package apemanager - -import ( - testing "testing" -) - -func FuzzProtoAddChainRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoAddChainRequest(data) - }) -} -func FuzzJSONAddChainRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONAddChainRequest(data) - }) -} -func FuzzProtoAddChainResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoAddChainResponse(data) - }) -} -func FuzzJSONAddChainResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONAddChainResponse(data) - }) -} -func FuzzProtoRemoveChainRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoRemoveChainRequest(data) - }) -} -func FuzzJSONRemoveChainRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONRemoveChainRequest(data) - }) -} -func FuzzProtoRemoveChainResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoRemoveChainResponse(data) - }) -} -func FuzzJSONRemoveChainResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONRemoveChainResponse(data) - }) -} -func FuzzProtoListChainsRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoListChainsRequest(data) - }) -} -func FuzzJSONListChainsRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONListChainsRequest(data) - }) -} -func FuzzProtoListChainsResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoListChainsResponse(data) - }) -} -func FuzzJSONListChainsResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONListChainsResponse(data) - }) -} diff --git a/api/apemanager/grpc/service_grpc.pb.go b/api/apemanager/grpc/service_grpc.pb.go index bf76cc4bcd6aad2133a57f8899c801972c17956d..8dd61e00d39e6f1054afce65d5af394579642c3a 100644 GIT binary patch delta 1016 zcmcIj&1(}u6enq^W--=-7_18KqD>%fD1JaIg01AxLz|LDFQRn1^EMefJG0EpZmgli zyBEt|y?FIja`UgS;Gd!gMZve57Cm??9u{`@z4v>+kD0^GA5Y%Bn7QXK9kLsx<)g7H zmG9rpzLoBjmM4vJqugz^yjBZ#R=3(4OtC(iZ8WI}a0gef0q4N*}ClSqVM zz=X0e6mB3CSZXW&ELsA~j^`F8-PxDt9|fJ*Sy*`pERIp}`m^VK69@idCM8vbR-@v3 z+c77C4Riy|>y3jZXd3fZMWv+nGb>`m=l_Uc-7^7+#7+)QrqhuY2Ybl+yD*IogN!Gay=L~__gz-SjaM|$6f zl*t5v(sIZ+=n!HpltYt8%2F*jFi=9~+)pbU4Tkin0AV;l1yPZW1!gFEN)Ng3&AR;< zGge!ib0!JgX!5<5l(Y9&n>B~lwNDtV?LW=;*BdaJ$c2xk+q7mqB)$ltmQoLe>KBj@ zGZhHi1mTD*7Xc#}g1~B%0Oqt?9%89=Z(92C23MmONv6v%@z=8;YsRAKU zB8nwONc#DSsC*n#vO}m;?;&r3)i6ZJMHIGqROd3vg5{KXtJ6$HIfg WgM47*RVvQ^r^{aDU~>8TFYh9Sx%ER1vgIK%OXDcgADuR`?9>7U$7iw+-xDj%{tjlQg!kx oNds1eYOY$Y$^A0Ao4usmn3%cr^(P;YmEZhbrj2p)fBD~B0M)`Tng9R* diff --git a/api/apemanager/grpc/service_protoopaque.pb.go b/api/apemanager/grpc/service_protoopaque.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..5ccadc04205aa439a60eca1b70beeeb3bc5c2946 GIT binary patch literal 53814 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 literal 0 HcmV?d00001 diff --git a/api/container/grpc/service_frostfs.pb.go b/api/container/grpc/service_frostfs.pb.go deleted file mode 100644 index 038829344fcd6129193131d9ca50dbdd823d71a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 95872 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 I>7ptA4M`p}qW}N^ delta 960 zcma))&rcIU6vwmOP{O2O(^_n4G^0k`t#wtZ0ZBX<4h91kden%U?W5U*oz~eYVrpHz zc!C6c-aKfGH%*MLA>RD)A9(bi@F0Hx?(VF#k{WuPnfLv^?|Yy5{cwkG-BByX#clJr zGX25hN}@7_yGn&j6Jj-(E2xIo)hupgGMG{?`A-wIL{dCx0-eJj>G6-rZGzusipjZE z8<_CFq~{g9nORmExS79zZ*!M%EL+1*S?IZWbo3S$bKRO}=#88E?=v`mY%%mqOV2U| z&Kq2(ZA|CeQQ4J~K{R3740sjznr*>??TV`4U^-G1)E3?iML9z&Pu^0S3E(TH1++~@ zmcUxmbgGrQ;w5mK!O-xxCmE^pre#RA^d}ucBHzOzP*?DlCBja1ub<0Gi&<1#r=`Q3 zbUHxPu#ZD$uTci~wSyC>F6el-P{bQoPvQIg=n)R0#Tj+Vl-aAKgL`TYADZPBf3jvA~ZLiN)~`Fpdj`Ui@8S0MlZ diff --git a/api/container/grpc/service_protoopaque.pb.go b/api/container/grpc/service_protoopaque.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..b54484c3bd70fbb132845fb435d22bed341ba860 GIT binary patch literal 88711 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 Ezfh*%F8}}l literal 0 HcmV?d00001 diff --git a/api/container/grpc/types.pb.go b/api/container/grpc/types.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..b815e150da715504df3338c988a1c9160f63a9bd GIT binary patch literal 15349 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 E0MC!R6951J literal 0 HcmV?d00001 diff --git a/api/container/grpc/types_frostfs.pb.go b/api/container/grpc/types_frostfs.pb.go deleted file mode 100644 index fa4aead9b2002a789c7d6a773678f6573f5c079a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12289 zcmeHNTXWM$7JjyWMdPX&WY)-p+e5apRX~_6W+9|Dz&tS2j4ZbjO=QU>$xgCV{`-FC z^y${kv7Ia~cD6PJ1hvlP>(l4beOlwOdX-JJI@PJpgHlh`-zp!D(FjR(_mD+4w`g(65qgF?}0M#`5N2F+B&6aWId^sV-;1 zd`#>j=}ojK->tOV7s zD}z4svmI+)ndRI77#1Cm)kzsl5`7Z?ORHR$i##n6{jY=CyPi$Sw0I& zAAE+D%)ZEVp)TU`%t)f^bQ^m$D)LF39)vHOI2Kg0>_xsTz4V8DPR$8@&%o{3? z0mW%Kq-Bl?*ujB<;pwqwkgG@i-ZgxOp#SB-p!QGL7ifOo-bh{g@DQxkjWmymhFt|z zB9@5BMPMyiA$AQi2ohMLXF4s7)o$_~;MRE*gnHAQTk^eWQL4{hCRe2%%5R$QOzmTO z$R(A>9MjX^b?E{2R7ddF74MH1r8fh?rT=;smv$1~%zvkg0;$>gpEo2i(0!or(s(gp zsceD=GRgWCY-*XQ2QGPZG_F}zUR11jqEpYTpSpLT9`VA@X8w!$T&GjB%=IOPCpadv zpf|HMR{dJm+J%%g)cVzS+P7V4zI{Vx8k18bA`WI&gP*M6@{uY;!hN3l#%ph ziDH@MY$He*s=tYW@Gv3~Sji~#k3h&wqy~#g7NVE1rwt|R^r*W2Yf>F~gD^gOSS4 z$+tl*3rb=L;3eLkpp`Dq*bU?4M8GAGIU6Rdu%xTSUwHsu$$NvgPrA;hoP{ zOzzSq)7RK*G53!b@NikA3;*RJLh8n^IGMgg(l5N>NL`pX+-PwD=@95RHhacdc}S zu;P zeY_1Yc1^&=WEjs4d{(Cu@o zWZ!j~os0dLV>05sxp7l$KsKeVt{ha72j-+;G#fuHK4kN^dZ`lv7N`E30-M#Gw>a=M z9yo%tA_8TdG!`R7rJm=?{hhz9qC-F@DnQG}h)*z!;A=Uy< z6f_^xB8appYS{F8?8u}AY`+9)`6^4Yl+~;NOGFMv#W9-&%t4V*#wo=bgO(yn%4uR; zwfJ1Kk0%bkUXOPN5;Zj1i%?le4R3&rSXcfcqTrCDIy_)U9^77-O|?!OiFEUq*x%2(~0Z2r*Jq+La z2wX9=O0Y9Z>$u%wa4Ccj=EBrCDGS4Y;~{tWjgGcQxE&Snd-#7jqbNh(5j{uV$*JL}k4mgp@{O%9nYNqVsp@*Zi6i*+zID)9_4( z=g8mBM(W2p|L6D%6d<>3l;J%mR4w-huhcE#m*OisD0>!b?-uWLx*xWC27kgc{ZM_| zlRP>slEP~z6*t&wPS_K^^eDVN>P=8hK@Z5c8NDG#1~@Z-ngnJi-iQFJ z-}?Fru8*ATy>>`|b5m5b+lYcczOL`-+8$~?sFrzwJqH)HtOkl?V)O@9I2K3 z=k9>qqVFLwKs&Kk??YUjw%=yo24BB>14Q&RI}Z|n==xO|10}&BC^3_SFv;Xc<8|D?&8XdoU8YJ2#2wX_&;OlA1}(&|$|ULhA3< zBu}_4#aU^EL8Lt(t95tpVEGM0@JQ8_;={&M#$vPG3OJJOtf}sf$LeT6vV$#D&lpv; zr&xjO+lEr5ssXPW2Ec&((dblHqoY-~R$s5#SW!e_*4)~ddQ|ZbAMSmTg_f|4q8&Tm zb2e>j)3kH@w)8cO+qcs~QXIuvYAKv^V=Y@K!89yt0)c6Q~H+PoWjh);l|iV67vxgls*V z79Xa>5!_KOb83;x#J=Ihggaq=|LX_`#dV0$=Kf!~gjkx4y`kUl@@nU*2c|$_Lf%1i zQS#i?Wl3iGmK$+OV*PG7Q)-iLKuI;mw4Le&kuOh>?DX@eW*c0!rW$ulwM(G^?V~)rJ0rtf15yn1 zP)4h4k7nKtZpgG`Du?3>;n=;A=FPtN21|9DD=The4erKdc5?AoYpQ&&>%JNUR|@`r z$!D$wZ*|EhMW=f=*Els$JoV_l&mM_vgB31EZ>j@NZ8gk0SFgbBuJOzTqZE>xbesBd z*wrmBw$Uv$sH>ZcLszre-?K`};`k|NbGeYMbwqlUhUgTHw?q0+(0nas>0u{)UBm30 zij3_*%VTE9mYt4OYlt+l%`3+Q<xbsFZnue#4_k|uf5+sC#2VG^i| z8+CniuP!gH?t}Wlftu+wi;_4yqc62mV>N39hbKYHyQ9p{>^NxuEojr7ESaV~eWt=m zbkIxUJdB|HV3rSIlUrb6S;XkLkUY~@$r*NoM(YIcY#*-w? z)o#5;Vp?iv80EnrO|pED1yMXm4(`*beltp@{r6$_z}(r-`cH82fDDOsJ`N{r#g0gM zfsj-WGAn|ez=e_S{I1hz@T~I3FvqVb^TOXFHsDG&9Sovgq~m<_tfrIwJlXGq zA3?p=QLiN&q%F7vwg@I95+`=sO||dc{Sd|G&R)H?pg3K${3p~FSOp)#xzPwi+ReQ> zT!-Q}mS&_RR9T)*d-*igfGjzj2$DhK;1v;XC;z7iRpBt8!F86H0n-s=nUgN$qRcuok2S6Op}o! z%BJHm2d05KkJZ(MN(L~zpuG5T*v5FxwHhVyP~E*dZy%qKu*Wcar1n`Jc1L=D9H!Z0 zI2yrN*MAIk7(_vxhMb3wK%@Ss*U%fHSN?c-ixtum-c%&O^O6pU*pw zQNOR_j*X6$`-%o^uy|D|5ry$_wnHvvjaDO>(?`3+m8B2mOz#H+DOJxuE&%7 zc|qmPH{_SAzSXEirChxzuC7qob}AE+(TVyEQu&&{U0qlMiks^!xK84p59ODy95zq4 zd|Yz+&{+_Z46Bj9tabR;FpGNUy^)najp7_sS^DwR&B7Fo8b?lFmxOe}-bh^Lujg;x zTMOLnbxxl$Pe86oY_oBR%S8EVcOM#DDS|VQ5GH(r?1vqt8jx%k{aljq2a) z^}#gmsolA95!_QBVOqYsN4etF9J4|Z+&{k8YvV|ry;i>rqLJ=ke(e;Qr$Yn2!xKHc z!%Cww&W86i?|*52MZb*tIV(N~AG{QEGuU;vZWB;er@Qk#%r4_BxTAz@T3;c7?vA6q zb++Fj0mnlak9>y@d-8lFZpja$nE+V>7&rSUO9C`wPs|)`y(B|k z3SBf%bM+suRUC~-%!{F{K@i}4pM-rM%{}$n$zF?ht%l%REXP@$z8Yl5k@a!`$}+8f z)47=rfKhpRfLDu78rkz;d5-aQ1Cw=BfW8}3 zx)M7JK#!RKD(bNveO1j3=oP6vW0%~(@RIxr)r71cH7CX=u_e!|HElsQFwBu`bD$UI z02}b-$zg@PtC+SRuc9G$j^VR1!#SCjJhdyM*J`#d1Q2HlY{eM@FN-q`k*zn06MoJN zKUoT*HS-eyzL?vT?eV{4H49)RZXXkT4q)jmPiXn>FT3-=pWu-E_Zq6*P$yoFEhh%_ zw$$968BQ;IXq&u1`{5Stj-k-MdNs3bkLv`Be%XZj0-2zLv)>Xqmvt=kWY^csLGQxM zW!G+ky@sW_m)#B32jM8wKBr4Dw#<|nXB|1A&ysUb{gggS-L3j;cKuOpZe{T~*h15_ z9EH1rNl-Vjy8)jEEBfN zuvCBqKe}w=))1Esw<&GI1jAyz@c+10gte^IO2d#|I|Yk3pIW||5Q*pujIlpAmzWyMjZ zP|ZN8MJppasB<}}*f7w2R6A^GF;JI-0rpDKOpl%$+;JvbeiD9udj-MWG)z&M%Ah4r zSXwXDRIng5#byKbDoeQ1N|HNVp&pS(g9yGtY^k40Xhm4BS*Ddr2HaWbz}2MIiBw@e zeY(1s9W|^`Dx4(|m0U)nhzq8q<)QHT>f!;bV-X|kK$iO;5r6ak!FqujQMouoH6#Zq zTiQ_BbB5vv2O)tgDP$v5!!(&rG8CLL^-YgP^mn4uag>oksv9AQ6q<)$F=lmopFHXK zfn_{g&T}32fiCv^sNfVld}a5YknT-w*s;sRuA=dH%5^7ezfS*>sj?Uh{gb zo3oR_!sD=5=`;TrQEb+E>ell~5 zDl|LKQG4iZTwT@58AfE2PX5HxJr;Z2pa}U->y>rYg5E;>YxT-0TV6_fbRnDr_k97r z#n_We3)kFMl#?ka{7{H{kdi7gO1dv)+rIj{e%}8*98ERzm*}e|VU$w+mZ~R|dWeBk zb9E`lF{)JOMX|XU8m2moF{d(}qZ#vfoKVr3gdtHB@)YMa8m^RJQGQl2(r-!?=nxfE z6rfWS=&3m0r{fvw4zm>%O4WFZnm;vk;`XO;gi{nX3r9#!pYGr8|JBq$0wu0O#b2lw zN#b&9;5%ct{7_26EfQj0n+_leTt{tZkc~NEwly6M-E9&)hHboj0P658CPUr5w?(Q!?bUN4P zA1>8b^*?e?soe)$yS#aOC%2dbeM)8Q+@5PF^&$#Ps2-=|Fy0@eI34Mu_U|Ian5TLe zAr+HX$hJs&$ruM*@X+eKzP{r=s0rre@RE`LeREAlI^~{~bg!C~|4L#l$-V6U!#1al zO-g;D$(4P$e{aqoj5F*goGQ7Zt_CVj6zioEq>1j)C_^P3PVD-Mg#n-_}HNLyz^aT|^ljlw|5L!5B=^$z#;x zLlmkE+NDcjszP?8X@}XY^gpMxz}dlxlHReNN>PzcZk`p-#+Ld-X)aoVVmx{n6oZ`rr5{r1!OHxeXlO#qNna3@k4;E%&66bdCY5;nBlH>pvCiO;BT30j*tw?S; z`35>f!%!rgSMLG?aKcE-hBe1%ZU#3s zRyjhGBbkjSXq4UU&nr{Dw%^TPk+S;m3@dYcZh?<$4^e*SX;0);)#9C(F;%P{{!-So z=1|0;@&gAV+YdvW*lGtMuKkun5EtetvZ)I> zc)Zh@jYlND+}kRLB}*OtoMRIL776qJ|FMaW7Y;O#BT9i=^pU>%wRg%X-ZI|?x?FTe zBdNCA+dFvJ1e+kk3Vd5xb6hZu6Uz@7C#h(wdED%04a8=Ou$vjuFIQ0rDX!y|3QBGd zwr1;v?O}UO$I?Gg^_Lp2rIl+oa%8sghH4vd*lk={T%cRd?Lo?R6ex({4b9dpXJ{ipvh$ zDm0QN7Ahse8P?#cGXld;E0m5oK(U2o)oY`ay#fv{+k9 zZ1k*$nx!<3@I^(qcY&%%{B*FXxe0}k5&b$K!0tV zSll7U(nu3OPFTT-$J|pyss1}Ph+|!idw-P$?U?p~ir9TNB zLnJh1?2d%2Ydkm-rm^ilbQ}C81%5Y^mso@$oD3*Q1|F|Ygl~M;040W&IYtVaJ))qo zsERm7yv5Y?$IuC1H{;*ZofL>ICV-OoGg3Kn|A3S>MV zi309$Bm;^wt5|I;WyL1Jh-i_oLDW88i)k0GEn3Jkb*5{CgRT~XpDG8tQRCm;sNPN zfdo@R*OKX*f1hxW4G6+3R(~SXp?nrd*>>TfnNVfK^dy^lERxlO2{K1w1vS0o+?E6` z=zB3J5=`YFdz}rKc3LNJ*kg&xaoKxTP{n=eW*sN~EctCBC)v!ZVFmu^-HdVtHL`3t zWTO#RQeb9dRiva@Q`(s8OiLd39JN7I>=`kz1+rtP!>UoMFNk2 z7Bk8yGYVw>6rh-zVyPq#qnJCdV3e;|{3}Z%h%2r1aSu09mP2?*kumw$}kKClvMMj|xhfWNfZ z%_A=*6!`>D97#MxkYLS%j{T4d`a%=oSvi##uWk4km*)_AR%P3|Gl;(jcR?MTUFOf~5Ix zX*n^*EJ$nn((q10=ALmeo#ly^i&dQumpYrqR`c>Bum%@sKJq)uTbxUeeSGJNMU`ma z@c*hm&o~>&GFpsF6QDLpaC*=G8>4m8b3Yb_W28ns?Y@^TuEDXNIP^=(F z5ZY2-wodG-UPVoJ6S^_bX463uH->$I&2no;xR=n((NT_mxGG6@;~-5AzNu!4xRhVz zx7Z8oD1}0)FP>FG%hVRR`}K5u8BfRAnPj!5y=W3UU#EGeR-=}d6u4Zpywm9{!h5_V zfiHfi=D$gTH)2_Mm9Ut3fh1h$2|bG$_nxotXHE*LNHDpKBzTh(TL&wuNU-xAM0^j- oQ;~HJ+?IFxkUtUrfI?iaRng>%ymUNKsf(L9D|d0(T@FG17fMD@;{X5v literal 0 HcmV?d00001 diff --git a/api/lock/grpc/types.pb.go b/api/lock/grpc/types.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..77055221a4b848a527ff575e55479ec505f6af90 GIT binary patch literal 5462 zcmc&&TW{h>7JkORq9zY3Xc1!wkR7C~)SJ+~NJ$5U^k`O5M0_boO>CFPWizm?{P#JR zGMIGJv}RY@JUDjMxqjzTr|5LVrH-Un%2eilAtMoNM3(D9ho`W1y40??x)q;p@5T6P za_>5wj#$auD4m)Sel+%o#j5L`4c%^SN7%pB!0r9)_Hf7OG7sfQ_?ha&I(+FY^DOKX zn@k#)#5q8<)T5wOaU_1CC7t=dm(p=EKYa0*QXrq>s3g;QA(~DDMTnE7D%?e`O|dYp zN*B6wpO^A7)@5|<2OYa}YN8i#tb^)vxiF;u#9>chA(mkQqO@Md(p~DO|tG`wIxDt@pi{yuY=7AldEkSbk@NX8N} z*cJEBkRNIx5oe_JQ6MIaCjbB(q$GSXV8Sp52RQ ze2Cb-^Y#0? zCxJEt`HiLHe)9164olu;esA;f?FuDq+sB;FW|?D_*fug3kfE6QU@(;SG?yzljEo3%lKHtG zs8~TK@Y6_?hN>JYPHvzD!#d0!u@P`EQR!RRuJiwFGjB290T_5x!4(88@lTvnz-vl; z%2+a9^9Cq<}4lckut@IZ39@3NF&*&W-^VW9v z9N*7-^kiP5fn8K^-lq)`XGITag^A>jjYSMe4Ri5(mqdF+IpilvfL&D3i(g1X~$15$HV3o=&*E8Fvo&EjOK88jSn9WZtb z4wqXkaXHhupaz^RB<`G{pl6>X3~K?myM0n%Gl9Z2BxYNmoUDhf!vtmHC>{8HNJb2~ z&LdJVWE{ysEBb%eFfayZq^<7YkX@#ApL3u5;C$;J$h1Cr%yF{P2IRqj#MOI?O*jUP z{UfY7uzgw|Q0{YH+4WiswkDznjJrn#VpEfGwW;@)2w|D{`u?{Xqb`l6YdeqP?Fs_1e^7qm@99`D}Wy?11i&`C9ubSq1#g^@Fw-qTW7rb>^nc63`EWxA?OR>yRDNf(#b zbawjoIu3%RNEhN(QeLHtAW+4!(uSg7@U^Z=3T2sAGgaOu{22y=tS}VfAN==LFH;I{ zm5E!=s?4h7S~v0}ubSDpm?nPbsGcnVArVWJXqnXspM{HMRpme6qA@B@_$<5N9Dmpc zABK}Q%m3vkX}z#RQQvQn&6{bQRz>ocN=>DecqffkX`OUdIPo=?YpE@O*1QlZ*NwH} z>L<>GZC6^E?-@IrFc=1bxnD{;M}Mg{x=9T^1cP_7m`YvKryK4?d^!CpQ}gzezHq2< zSh(%*OYj&3cS18G{-!p=_&pcyozV4M; z%bHfo%-uOrNXnGVXLKj>23vD+CpTMDRSJD?-N!-Jlqp4Pa+TSF5)CP`2vli?+zrJ@ zCKE#O_;cW(((7RG2+dWR6pbgOMG2v<FxYsC|Z-nhJR|PX6mxU~iE8TM>KrT{eB9(iI_Z&vE+JJY{ zdn1SbHz!?iimd7l6W;UJ@6tqoI+Gcg_Qd}C#zX}S*6~@POp7`yP^P-ZWb1ep4cQH1 zPY9cij*JDXz6ki>8ua?M>$af7PPcm@zR}F@w{p8Ty{2OCYaO~UOHpK<6c3R6**m4ULwj7qrh(uAg8)ZvIi z9!Vie#Y7*}P;olvXg1PCQ&=FWs3jebiJ9-F9&86QVZ?~41(OmdeBn>A%4D?o4zSA- z?Bx0cvZkGT9+`vX<5*-C8pzvaaaZqO%Z z6YSzY#R@kD9(hq%HhFGY>0r2-r8H(Ha=@)3gMmN6kfK))uK<}ffc_n1*3c?q$7sYx zgGZ7%gl4y$B{(Utn#4;l(qz7HFqN# z`oy~d<+kc~Z^!tYADIt4#m2RcXUK0hWzA7@HGC;jam> z+NhFsW69*NAP&xn*{i1|csRz271Ll~FVx+!&zp8VSN8d|b0^r%P3n&S1N(B^$sV+{ zf#E8Hx^{f7lh+arI#ceK%O! TWX2M*(%oeU47LfvFQb0}-gwDh diff --git a/api/lock/grpc/types_frostfs_fuzz.go b/api/lock/grpc/types_frostfs_fuzz.go deleted file mode 100644 index cb55151..0000000 --- a/api/lock/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,26 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package lock - -func DoFuzzProtoLock(data []byte) int { - msg := new(Lock) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONLock(data []byte) int { - msg := new(Lock) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/api/lock/grpc/types_frostfs_test.go b/api/lock/grpc/types_frostfs_test.go deleted file mode 100644 index 7c69064..0000000 --- a/api/lock/grpc/types_frostfs_test.go +++ /dev/null @@ -1,21 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package lock - -import ( - testing "testing" -) - -func FuzzProtoLock(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoLock(data) - }) -} -func FuzzJSONLock(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONLock(data) - }) -} diff --git a/api/lock/grpc/types_protoopaque.pb.go b/api/lock/grpc/types_protoopaque.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..dd9664d870fe2c648d68a32a2dbce0d888de1f1a GIT binary patch literal 5457 zcmb_gTW{h>7JkORq9zX`h=?%+$Tm_|>P_fgq@;sFdNivjBE~LAO>CFfWiv3X{P#JR zGMFSZt=`RpV^^K)cP@2`R!dyyP>O|2Waj5G6tlHRGo9<;1lCR#+7*{K;>*pQ7+#L< zT&L9%OPLv^6Enb%+77W;w%yad+pg>g`?u`5oeypYcZ@EwKn{eTs#c_f=hh-igI2yy zrEy7|15^t=m=!7t*&3bt|1G5Bq<--1FQh;=$5C;rvs~1j8cGmH3zfU`Oq+aeT$Rjq z>nY_9KTKfrUs0If&AF5lMHUBR^TVI$N~JvRN@l zCZyp7`%&_PMbY<}izHXEWM-rW&W+NIu!iFVfH1iRfc+*jHD8PT$0V!>anne-~Wk*Tij$2FRiyMM$BD19mqd8= z9jr0dZSt&uJpbm@Ob!N?Rm%S>;gQBby-kSbk=CIt434-S-DUge(W$LgtLc*pLzzsk zWjuq_636!s$5@jt8#KCP!7KraXmB)J=h8IW%}l1v#E<29%&bS^52HbY{cLIsRGj8( z)KnzTiT*SBq+}GD*S3DGZh~LxFL~hykPMr@tzVOJ(|K{6d65L7z7ofnbq#SVjm+x} z#O8Pf#e=KgUYuI2#Nb@~I#-dLLi3nnN=?zpDYdRCNuS1MafhAk-g^KRgDhLMzq{8J zKyT*t?bcYUB$ruz)qv8AjXTM8CN1>{inboB#yiGNAf=K8SPKEgDgdK1nHO2|zE-3G zwX2FK>-89$zSW1$zr}?pZn^mZ1(|L;R_PY1{|T7XT&%<|=OR%NO89BmY9I)pyV8DG zMXn*vx3c$QTdP5gOYmaj;HQN$R;7clu-oL!XPMj72V~ylKKS(7Mf`T(DVz!lrS{|Z z2*FgaZ)+kz_g;2v&04-Oi!%H@*^u+UE>YU1T}=VLv0vpSFWMu!a9r^kr8kZ!D%LimF+ro5^OHz2oB zdjrlE%$Y|WpoE|y{)J-+cuj>v8ShbJDEq{$3E7ODV&*kP?7<1#6nF^ZIyB4oqK?Fn zV$?ggS?8e( z*>B_X4BUZtTItN`J)kGQpVB)x>8SF0K2H5!%O`)LTTlcm@Um7Kic~-AO&m@3F@=vsxpRUKL`lUehjuA zFgW`_=#ctTvXo=yk{8{Pe$~)&O=hrXB^2vEBgP}FfazEq^;^;pIxSPpL3u5 z;C$=u$+Rwc%yF{PdgMWm#8rEXO*jUP{UfY7uw7d3QSNhI+4V{cHYTD6jJrn#VpEfG z0g{~g^&$531u$?t4!%O45sVe)7+HzPLA0^UF*QoC>oUv^wNyzyv6j-4w(!?FTLyUGDGrPo#WF3srryZ~lLbTTw*Nz7RoC2nJ{SYVrtQfs(f)#b&9<(3uI);OUDP|{h z8O13kmidzog)Z{6$mupvsz1o1k{@T0t6U~{ZKvUd%s#AV%S3OXl#q`E&AqqJpE=&I zDoV<`fJziyj1Gmv(!KD_>OkyDp)@0Z`u?O-nT~lhrxBRO)Rmo0@umiW*u8gQ?$X#M zGsuh@Y8g~6NI3mewrijDn15#)`}xxVei@)2d|Z@*7l3as4R`#!z|DFC`bVvH%M%pO zT!TaK*m;XMzZCH>DPl9=3i8TDTcWhyE*FPo0>JWy(q8t7k``Z({4>|96-&Yo#KBfL zGGEG6CUBh()+6}0k|6s4vn@bmt~3|233MM|E?X6Fzqod~b|^^u@7Yl55M>u5>C_I$ W-_EyqOFBfo?Q}mvz3n`F1N$4x;iF3c literal 0 HcmV?d00001 diff --git a/api/netmap/convert.go b/api/netmap/convert.go index f8117a5..9bbb303 100644 --- a/api/netmap/convert.go +++ b/api/netmap/convert.go @@ -45,24 +45,24 @@ func (f *Filter) FromGRPCMessage(m grpc.Message) error { return nil } -func FiltersToGRPC(fs []Filter) (res []netmap.Filter) { +func FiltersToGRPC(fs []Filter) (res []*netmap.Filter) { if fs != nil { - res = make([]netmap.Filter, 0, len(fs)) + res = make([]*netmap.Filter, 0, len(fs)) for i := range fs { - res = append(res, *fs[i].ToGRPCMessage().(*netmap.Filter)) + res = append(res, fs[i].ToGRPCMessage().(*netmap.Filter)) } } return } -func FiltersFromGRPC(fs []netmap.Filter) (res []Filter, err error) { +func FiltersFromGRPC(fs []*netmap.Filter) (res []Filter, err error) { if fs != nil { res = make([]Filter, len(fs)) for i := range fs { - err = res[i].FromGRPCMessage(&fs[i]) + err = res[i].FromGRPCMessage(fs[i]) if err != nil { return } @@ -103,24 +103,24 @@ func (s *Selector) FromGRPCMessage(m grpc.Message) error { return nil } -func SelectorsToGRPC(ss []Selector) (res []netmap.Selector) { +func SelectorsToGRPC(ss []Selector) (res []*netmap.Selector) { if ss != nil { - res = make([]netmap.Selector, 0, len(ss)) + res = make([]*netmap.Selector, 0, len(ss)) for i := range ss { - res = append(res, *ss[i].ToGRPCMessage().(*netmap.Selector)) + res = append(res, ss[i].ToGRPCMessage().(*netmap.Selector)) } } return } -func SelectorsFromGRPC(ss []netmap.Selector) (res []Selector, err error) { +func SelectorsFromGRPC(ss []*netmap.Selector) (res []Selector, err error) { if ss != nil { res = make([]Selector, len(ss)) for i := range ss { - err = res[i].FromGRPCMessage(&ss[i]) + err = res[i].FromGRPCMessage(ss[i]) if err != nil { return } @@ -138,8 +138,8 @@ func (r *Replica) ToGRPCMessage() grpc.Message { m.SetSelector(r.selector) m.SetCount(r.count) - m.EcDataCount = r.ecDataCount - m.EcParityCount = r.ecParityCount + m.SetEcDataCount(r.ecDataCount) + m.SetEcParityCount(r.ecParityCount) } return m @@ -159,24 +159,24 @@ func (r *Replica) FromGRPCMessage(m grpc.Message) error { return nil } -func ReplicasToGRPC(rs []Replica) (res []netmap.Replica) { +func ReplicasToGRPC(rs []Replica) (res []*netmap.Replica) { if rs != nil { - res = make([]netmap.Replica, 0, len(rs)) + res = make([]*netmap.Replica, 0, len(rs)) for i := range rs { - res = append(res, *rs[i].ToGRPCMessage().(*netmap.Replica)) + res = append(res, rs[i].ToGRPCMessage().(*netmap.Replica)) } } return } -func ReplicasFromGRPC(rs []netmap.Replica) (res []Replica, err error) { +func ReplicasFromGRPC(rs []*netmap.Replica) (res []Replica, err error) { if rs != nil { res = make([]Replica, len(rs)) for i := range rs { - err = res[i].FromGRPCMessage(&rs[i]) + err = res[i].FromGRPCMessage(rs[i]) if err != nil { return } @@ -283,24 +283,24 @@ func (a *Attribute) FromGRPCMessage(m grpc.Message) error { return nil } -func AttributesToGRPC(as []Attribute) (res []netmap.NodeInfo_Attribute) { +func AttributesToGRPC(as []Attribute) (res []*netmap.NodeInfo_Attribute) { if as != nil { - res = make([]netmap.NodeInfo_Attribute, 0, len(as)) + res = make([]*netmap.NodeInfo_Attribute, 0, len(as)) for i := range as { - res = append(res, *as[i].ToGRPCMessage().(*netmap.NodeInfo_Attribute)) + res = append(res, as[i].ToGRPCMessage().(*netmap.NodeInfo_Attribute)) } } return } -func AttributesFromGRPC(as []netmap.NodeInfo_Attribute) (res []Attribute, err error) { +func AttributesFromGRPC(as []*netmap.NodeInfo_Attribute) (res []Attribute, err error) { if as != nil { res = make([]Attribute, len(as)) for i := range as { - err = res[i].FromGRPCMessage(&as[i]) + err = res[i].FromGRPCMessage(as[i]) if err != nil { return } @@ -520,13 +520,13 @@ func (x *NetworkConfig) ToGRPCMessage() grpc.Message { if x != nil { m = new(netmap.NetworkConfig) - var ps []netmap.NetworkConfig_Parameter + var ps []*netmap.NetworkConfig_Parameter if ln := len(x.ps); ln > 0 { - ps = make([]netmap.NetworkConfig_Parameter, 0, ln) + ps = make([]*netmap.NetworkConfig_Parameter, 0, ln) for i := range ln { - ps = append(ps, *x.ps[i].ToGRPCMessage().(*netmap.NetworkConfig_Parameter)) + ps = append(ps, x.ps[i].ToGRPCMessage().(*netmap.NetworkConfig_Parameter)) } } @@ -553,7 +553,7 @@ func (x *NetworkConfig) FromGRPCMessage(m grpc.Message) error { ps = make([]NetworkParameter, ln) for i := range ln { - if err := ps[i].FromGRPCMessage(&psV2[i]); err != nil { + if err := ps[i].FromGRPCMessage(psV2[i]); err != nil { return err } } @@ -746,10 +746,10 @@ func (x *NetMap) ToGRPCMessage() grpc.Message { m.SetEpoch(x.epoch) if x.nodes != nil { - nodes := make([]netmap.NodeInfo, len(x.nodes)) + nodes := make([]*netmap.NodeInfo, len(x.nodes)) for i := range x.nodes { - nodes[i] = *x.nodes[i].ToGRPCMessage().(*netmap.NodeInfo) + nodes[i] = x.nodes[i].ToGRPCMessage().(*netmap.NodeInfo) } m.SetNodes(nodes) @@ -774,7 +774,7 @@ func (x *NetMap) FromGRPCMessage(m grpc.Message) error { x.nodes = make([]NodeInfo, len(nodes)) for i := range nodes { - err = x.nodes[i].FromGRPCMessage(&nodes[i]) + err = x.nodes[i].FromGRPCMessage(nodes[i]) if err != nil { return err } diff --git a/api/netmap/grpc/service.pb.go b/api/netmap/grpc/service.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..b3fd8d1b13d84321ba65ae484730098ccbc1f745 GIT binary patch literal 52563 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 DV=b?e literal 0 HcmV?d00001 diff --git a/api/netmap/grpc/service_frostfs.pb.go b/api/netmap/grpc/service_frostfs.pb.go deleted file mode 100644 index 7e2d7a367dce459c5086ab87413ab1afd9f69c85..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55007 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 NZYnE8lZSeF`Tr<=2;~3( diff --git a/api/netmap/grpc/service_frostfs_fuzz.go b/api/netmap/grpc/service_frostfs_fuzz.go deleted file mode 100644 index ebb59bc..0000000 --- a/api/netmap/grpc/service_frostfs_fuzz.go +++ /dev/null @@ -1,121 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package netmap - -func DoFuzzProtoLocalNodeInfoRequest(data []byte) int { - msg := new(LocalNodeInfoRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONLocalNodeInfoRequest(data []byte) int { - msg := new(LocalNodeInfoRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoLocalNodeInfoResponse(data []byte) int { - msg := new(LocalNodeInfoResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONLocalNodeInfoResponse(data []byte) int { - msg := new(LocalNodeInfoResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoNetworkInfoRequest(data []byte) int { - msg := new(NetworkInfoRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONNetworkInfoRequest(data []byte) int { - msg := new(NetworkInfoRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoNetworkInfoResponse(data []byte) int { - msg := new(NetworkInfoResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONNetworkInfoResponse(data []byte) int { - msg := new(NetworkInfoResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoNetmapSnapshotRequest(data []byte) int { - msg := new(NetmapSnapshotRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONNetmapSnapshotRequest(data []byte) int { - msg := new(NetmapSnapshotRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoNetmapSnapshotResponse(data []byte) int { - msg := new(NetmapSnapshotResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONNetmapSnapshotResponse(data []byte) int { - msg := new(NetmapSnapshotResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/api/netmap/grpc/service_frostfs_test.go b/api/netmap/grpc/service_frostfs_test.go deleted file mode 100644 index 5c9035f..0000000 --- a/api/netmap/grpc/service_frostfs_test.go +++ /dev/null @@ -1,71 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package netmap - -import ( - testing "testing" -) - -func FuzzProtoLocalNodeInfoRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoLocalNodeInfoRequest(data) - }) -} -func FuzzJSONLocalNodeInfoRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONLocalNodeInfoRequest(data) - }) -} -func FuzzProtoLocalNodeInfoResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoLocalNodeInfoResponse(data) - }) -} -func FuzzJSONLocalNodeInfoResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONLocalNodeInfoResponse(data) - }) -} -func FuzzProtoNetworkInfoRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoNetworkInfoRequest(data) - }) -} -func FuzzJSONNetworkInfoRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONNetworkInfoRequest(data) - }) -} -func FuzzProtoNetworkInfoResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoNetworkInfoResponse(data) - }) -} -func FuzzJSONNetworkInfoResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONNetworkInfoResponse(data) - }) -} -func FuzzProtoNetmapSnapshotRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoNetmapSnapshotRequest(data) - }) -} -func FuzzJSONNetmapSnapshotRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONNetmapSnapshotRequest(data) - }) -} -func FuzzProtoNetmapSnapshotResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoNetmapSnapshotResponse(data) - }) -} -func FuzzJSONNetmapSnapshotResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONNetmapSnapshotResponse(data) - }) -} diff --git a/api/netmap/grpc/service_grpc.pb.go b/api/netmap/grpc/service_grpc.pb.go index 7deee56c6921a5cea59edf31d3c08ae2ec59b27e..4bdc977f92b3db96059f85f1e5419890460e2bcf 100644 GIT binary patch delta 1326 zcmc&!O=}cE5M?(i>?Ce3i{>JfN^lp~S;P-WM36`la>%YBQ4gY|ce*CiWTt!U?wKVn z%iaY=nS;N;A0T@Y^f!3WqZe;p{0~-7663*x5W&O1%yiYOs#ovzht*FTubxcZ@UOmR z=PC>D#&M;3^Lp{4a;>s3IbWTrjyoN%(}C?S+JvQ>sB;nEHl$kRf}?>1ZKSvXt6-q? zE)0Z?%INZIou%8rBnKOzgAp=RI$>5Q2^ybfLL;3i=w~A4Agm8t5z>jtVk_hh0nMX5 zLJ|gyRW3(J2WO~-AYwumquIIDHVh&WyY!gZGUljQz$Ek$RNqoGa+e%xm4KqgG^}W4 z?8+ucMI%ivpZIp_PS8uOfyLXv(iA0cK6<>P)4;#W;+RgT|6%#PX=#{Xy(FR88nr=D zn(zCq!kgCBpjV8hKOY~fJ0l&|$C}kOXKf zG7c()R0(NGMWkbvE5U(*6tN@q@PwnrkRBNzX%yuz*D#F`kff0NUh%xqt_&yd8!xIw zbf$UHqOr>db(i)YxT?(-3`d?rzAp_6vDm0LCj6|fT%liUp>r98Dvs5_na2S`%48r+ zo4iFWa}kg;O!2aDVLV{Qt5MqTqaF6^982@l6h4q6>2)9oD`1&HhbRIAA|zv%2$>W~ z8e@XQ0zVkdrDIN{2$`#0-)jZlJFkx-PP3x?7qh1h+g zMx_tkSd^zTS;je^Yv8mF%2@04e6L1rS#sg7v#!y(-z;|%vH*u=@k2&CN0g3Qw_L)| StJSRkN7lXCX!2$5yZ00OW6Bf& delta 140 zcmX>fxW|1$9J8^W!Nf#aM)QsJIgCukMw8z%8Z(-2R%GH~+HAynpKWq5PXS~8cdiC(77x1}a9Zhk5Ij0*rPQZYLK diff --git a/api/netmap/grpc/service_protoopaque.pb.go b/api/netmap/grpc/service_protoopaque.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..681ed7046a6809eb3f67437b017fe1074c4bfe38 GIT binary patch literal 52264 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 literal 0 HcmV?d00001 diff --git a/api/netmap/grpc/types.pb.go b/api/netmap/grpc/types.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..b8a8b3e6ec113be98a6fc9a0bb901a65a647f6cc GIT binary patch literal 56048 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 PL*_qU`H*bLA^QIZJ>fZ~ literal 0 HcmV?d00001 diff --git a/api/netmap/string.go b/api/netmap/string.go index a6805ae..7b9c146 100644 --- a/api/netmap/string.go +++ b/api/netmap/string.go @@ -14,12 +14,10 @@ func (x Clause) String() string { // // Returns true if s was parsed successfully. func (x *Clause) FromString(s string) bool { - var g netmap.Clause - - ok := g.FromString(s) + g, ok := netmap.Clause_value[s] if ok { - *x = ClauseFromGRPCMessage(g) + *x = ClauseFromGRPCMessage(netmap.Clause(g)) } return ok @@ -35,12 +33,10 @@ func (x Operation) String() string { // // Returns true if s was parsed successfully. func (x *Operation) FromString(s string) bool { - var g netmap.Operation - - ok := g.FromString(s) + g, ok := netmap.Operation_value[s] if ok { - *x = OperationFromGRPCMessage(g) + *x = OperationFromGRPCMessage(netmap.Operation(g)) } return ok @@ -56,12 +52,10 @@ func (x NodeState) String() string { // // Returns true if s was parsed successfully. func (x *NodeState) FromString(s string) bool { - var g netmap.NodeInfo_State - - ok := g.FromString(s) + g, ok := netmap.NodeInfo_State_value[s] if ok { - *x = NodeStateFromRPCMessage(g) + *x = NodeStateFromRPCMessage(netmap.NodeInfo_State(g)) } return ok diff --git a/api/object/convert.go b/api/object/convert.go index 7fb1d74..016a367 100644 --- a/api/object/convert.go +++ b/api/object/convert.go @@ -142,24 +142,24 @@ func (a *Attribute) FromGRPCMessage(m grpc.Message) error { return nil } -func AttributesToGRPC(xs []Attribute) (res []object.Header_Attribute) { +func AttributesToGRPC(xs []Attribute) (res []*object.Header_Attribute) { if xs != nil { - res = make([]object.Header_Attribute, 0, len(xs)) + res = make([]*object.Header_Attribute, 0, len(xs)) for i := range xs { - res = append(res, *xs[i].ToGRPCMessage().(*object.Header_Attribute)) + res = append(res, xs[i].ToGRPCMessage().(*object.Header_Attribute)) } } return } -func AttributesFromGRPC(xs []object.Header_Attribute) (res []Attribute, err error) { +func AttributesFromGRPC(xs []*object.Header_Attribute) (res []Attribute, err error) { if xs != nil { res = make([]Attribute, len(xs)) for i := range xs { - err = res[i].FromGRPCMessage(&xs[i]) + err = res[i].FromGRPCMessage(xs[i]) if err != nil { return } @@ -266,14 +266,14 @@ func (h *ECHeader) ToGRPCMessage() grpc.Message { if h != nil { m = new(object.Header_EC) - m.Parent = h.Parent.ToGRPCMessage().(*refsGRPC.ObjectID) - m.ParentSplitId = h.ParentSplitID - m.ParentSplitParentId = h.ParentSplitParentID.ToGRPCMessage().(*refsGRPC.ObjectID) - m.ParentAttributes = AttributesToGRPC(h.ParentAttributes) - m.Index = h.Index - m.Total = h.Total - m.Header = h.Header - m.HeaderLength = h.HeaderLength + m.SetParent(h.Parent.ToGRPCMessage().(*refsGRPC.ObjectID)) + m.SetParentSplitId(h.ParentSplitID) + m.SetParentSplitParentId(h.ParentSplitParentID.ToGRPCMessage().(*refsGRPC.ObjectID)) + m.SetParentAttributes(AttributesToGRPC(h.ParentAttributes)) + m.SetIndex(h.Index) + m.SetTotal(h.Total) + m.SetHeader(h.Header) + m.SetHeaderLength(h.HeaderLength) } return m @@ -681,9 +681,9 @@ func (s *ECInfo) ToGRPCMessage() grpc.Message { m = new(object.ECInfo) if s.Chunks != nil { - chunks := make([]object.ECInfo_Chunk, len(s.Chunks)) + chunks := make([]*object.ECInfo_Chunk, len(s.Chunks)) for i := range chunks { - chunks[i] = *s.Chunks[i].ToGRPCMessage().(*object.ECInfo_Chunk) + chunks[i] = s.Chunks[i].ToGRPCMessage().(*object.ECInfo_Chunk) } m.Chunks = chunks } @@ -704,7 +704,7 @@ func (s *ECInfo) FromGRPCMessage(m grpc.Message) error { } else { s.Chunks = make([]ECChunk, len(chunks)) for i := range chunks { - if err := s.Chunks[i].FromGRPCMessage(&chunks[i]); err != nil { + if err := s.Chunks[i].FromGRPCMessage(chunks[i]); err != nil { return err } } @@ -718,9 +718,9 @@ func (c *ECChunk) ToGRPCMessage() grpc.Message { if c != nil { m = new(object.ECInfo_Chunk) - m.Total = c.Total - m.Index = c.Index - m.Id = c.ID.ToGRPCMessage().(*refsGRPC.ObjectID) + m.SetTotal(c.Total) + m.SetIndex(c.Index) + m.SetId(c.ID.ToGRPCMessage().(*refsGRPC.ObjectID)) } return m @@ -735,8 +735,8 @@ func (c *ECChunk) FromGRPCMessage(m grpc.Message) error { if err := c.ID.FromGRPCMessage(v.GetId()); err != nil { return err } - c.Index = v.Index - c.Total = v.Total + c.Index = v.GetIndex() + c.Total = v.GetTotal() return nil } @@ -888,8 +888,7 @@ func (r *GetObjectPartChunk) ToGRPCMessage() grpc.Message { if r != nil { m = new(object.GetResponse_Body_Chunk) - - m.SetChunk(r.chunk) + m.Chunk = r.chunk } return m @@ -901,7 +900,7 @@ func (r *GetObjectPartChunk) FromGRPCMessage(m grpc.Message) error { return message.NewUnexpectedMessageType(m, v) } - r.chunk = v.GetChunk() + r.chunk = v.Chunk return nil } @@ -918,7 +917,7 @@ func (r *GetResponseBody) ToGRPCMessage() grpc.Message { case *GetObjectPartInit: m.SetInit(t.ToGRPCMessage().(*object.GetResponse_Body_Init)) case *GetObjectPartChunk: - m.SetChunk(t.ToGRPCMessage().(*object.GetResponse_Body_Chunk)) + m.SetChunk(t.ToGRPCMessage().(*object.GetResponse_Body_Chunk).Chunk) case *SplitInfo: m.SetSplitInfo(t.ToGRPCMessage().(*object.SplitInfo)) case *ECInfo: @@ -1088,7 +1087,7 @@ func (r *PutObjectPartChunk) ToGRPCMessage() grpc.Message { if r != nil { m = new(object.PutRequest_Body_Chunk) - m.SetChunk(r.chunk) + m.Chunk = r.chunk } return m @@ -1100,7 +1099,7 @@ func (r *PutObjectPartChunk) FromGRPCMessage(m grpc.Message) error { return message.NewUnexpectedMessageType(m, v) } - r.chunk = v.GetChunk() + r.chunk = v.Chunk return nil } @@ -1117,7 +1116,7 @@ func (r *PutRequestBody) ToGRPCMessage() grpc.Message { case *PutObjectPartInit: m.SetInit(t.ToGRPCMessage().(*object.PutRequest_Body_Init)) case *PutObjectPartChunk: - m.SetChunk(t.ToGRPCMessage().(*object.PutRequest_Body_Chunk)) + m.SetChunk(t.ToGRPCMessage().(*object.PutRequest_Body_Chunk).Chunk) default: panic(fmt.Sprintf("unknown put object part %T", t)) } @@ -1624,24 +1623,24 @@ func (f *SearchFilter) FromGRPCMessage(m grpc.Message) error { return nil } -func SearchFiltersToGRPC(fs []SearchFilter) (res []object.SearchRequest_Body_Filter) { +func SearchFiltersToGRPC(fs []SearchFilter) (res []*object.SearchRequest_Body_Filter) { if fs != nil { - res = make([]object.SearchRequest_Body_Filter, 0, len(fs)) + res = make([]*object.SearchRequest_Body_Filter, 0, len(fs)) for i := range fs { - res = append(res, *fs[i].ToGRPCMessage().(*object.SearchRequest_Body_Filter)) + res = append(res, fs[i].ToGRPCMessage().(*object.SearchRequest_Body_Filter)) } } return } -func SearchFiltersFromGRPC(fs []object.SearchRequest_Body_Filter) (res []SearchFilter, err error) { +func SearchFiltersFromGRPC(fs []*object.SearchRequest_Body_Filter) (res []SearchFilter, err error) { if fs != nil { res = make([]SearchFilter, len(fs)) for i := range fs { - err = res[i].FromGRPCMessage(&fs[i]) + err = res[i].FromGRPCMessage(fs[i]) if err != nil { return } @@ -1823,24 +1822,24 @@ func (r *Range) FromGRPCMessage(m grpc.Message) error { return nil } -func RangesToGRPC(rs []Range) (res []object.Range) { +func RangesToGRPC(rs []Range) (res []*object.Range) { if rs != nil { - res = make([]object.Range, 0, len(rs)) + res = make([]*object.Range, 0, len(rs)) for i := range rs { - res = append(res, *rs[i].ToGRPCMessage().(*object.Range)) + res = append(res, rs[i].ToGRPCMessage().(*object.Range)) } } return } -func RangesFromGRPC(rs []object.Range) (res []Range, err error) { +func RangesFromGRPC(rs []*object.Range) (res []Range, err error) { if rs != nil { res = make([]Range, len(rs)) for i := range rs { - err = res[i].FromGRPCMessage(&rs[i]) + err = res[i].FromGRPCMessage(rs[i]) if err != nil { return } @@ -1949,7 +1948,7 @@ func (r *GetRangePartChunk) ToGRPCMessage() grpc.Message { if r != nil { m = new(object.GetRangeResponse_Body_Chunk) - m.SetChunk(r.chunk) + m.Chunk = r.chunk } return m @@ -1961,7 +1960,7 @@ func (r *GetRangePartChunk) FromGRPCMessage(m grpc.Message) error { return message.NewUnexpectedMessageType(m, v) } - r.chunk = v.GetChunk() + r.chunk = v.Chunk return nil } @@ -1976,7 +1975,7 @@ func (r *GetRangeResponseBody) ToGRPCMessage() grpc.Message { case nil: m.RangePart = nil case *GetRangePartChunk: - m.SetChunk(v.ToGRPCMessage().(*object.GetRangeResponse_Body_Chunk)) + m.SetChunk(v.ToGRPCMessage().(*object.GetRangeResponse_Body_Chunk).Chunk) case *SplitInfo: m.SetSplitInfo(v.ToGRPCMessage().(*object.SplitInfo)) case *ECInfo: diff --git a/api/object/grpc/service.pb.go b/api/object/grpc/service.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..96034670752b8ff8f201183c38f80fdf1f444b96 GIT binary patch literal 208899 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 literal 0 HcmV?d00001 diff --git a/api/object/grpc/service_frostfs.pb.go b/api/object/grpc/service_frostfs.pb.go deleted file mode 100644 index a195f86fc8e20cc9f0628668ff18253bedb0d9eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 224187 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 IkKgzIe}OJsFaQ7m literal 0 HcmV?d00001 diff --git a/api/object/grpc/types.pb.go b/api/object/grpc/types.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..8404e30b10725d4db1d8f8a2f852139a4dadc7c5 GIT binary patch literal 65300 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 diff --git a/api/object/grpc/types_frostfs_fuzz.go b/api/object/grpc/types_frostfs_fuzz.go deleted file mode 100644 index 8491638..0000000 --- a/api/object/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,102 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package object - -func DoFuzzProtoShortHeader(data []byte) int { - msg := new(ShortHeader) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONShortHeader(data []byte) int { - msg := new(ShortHeader) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoHeader(data []byte) int { - msg := new(Header) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONHeader(data []byte) int { - msg := new(Header) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoObject(data []byte) int { - msg := new(Object) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONObject(data []byte) int { - msg := new(Object) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoSplitInfo(data []byte) int { - msg := new(SplitInfo) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONSplitInfo(data []byte) int { - msg := new(SplitInfo) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoECInfo(data []byte) int { - msg := new(ECInfo) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONECInfo(data []byte) int { - msg := new(ECInfo) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/api/object/grpc/types_frostfs_test.go b/api/object/grpc/types_frostfs_test.go deleted file mode 100644 index 11825be..0000000 --- a/api/object/grpc/types_frostfs_test.go +++ /dev/null @@ -1,61 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package object - -import ( - testing "testing" -) - -func FuzzProtoShortHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoShortHeader(data) - }) -} -func FuzzJSONShortHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONShortHeader(data) - }) -} -func FuzzProtoHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoHeader(data) - }) -} -func FuzzJSONHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONHeader(data) - }) -} -func FuzzProtoObject(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoObject(data) - }) -} -func FuzzJSONObject(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONObject(data) - }) -} -func FuzzProtoSplitInfo(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoSplitInfo(data) - }) -} -func FuzzJSONSplitInfo(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONSplitInfo(data) - }) -} -func FuzzProtoECInfo(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoECInfo(data) - }) -} -func FuzzJSONECInfo(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONECInfo(data) - }) -} diff --git a/api/object/grpc/types_protoopaque.pb.go b/api/object/grpc/types_protoopaque.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..0db84c81d5ff1bc16187935b8c2a3b72d82f37c8 GIT binary patch literal 71065 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 literal 0 HcmV?d00001 diff --git a/api/refs/string.go b/api/refs/string.go index c33a241..637bbaf 100644 --- a/api/refs/string.go +++ b/api/refs/string.go @@ -14,12 +14,10 @@ func (t ChecksumType) String() string { // // Returns true if s was parsed successfully. func (t *ChecksumType) FromString(s string) bool { - var g refs.ChecksumType - - ok := g.FromString(s) + g, ok := refs.ChecksumType_value[s] if ok { - *t = ChecksumTypeFromGRPC(g) + *t = ChecksumTypeFromGRPC(refs.ChecksumType(g)) } return ok @@ -35,12 +33,10 @@ func (t SignatureScheme) String() string { // // Returns true if s was parsed successfully. func (t *SignatureScheme) FromString(s string) bool { - var g refs.SignatureScheme - - ok := g.FromString(s) + g, ok := refs.SignatureScheme_value[s] if ok { - *t = SignatureScheme(g) + *t = SignatureScheme(refs.SignatureScheme(g)) } return ok diff --git a/api/rpc/message/encoding.go b/api/rpc/message/encoding.go index d656acd..b802a6f 100644 --- a/api/rpc/message/encoding.go +++ b/api/rpc/message/encoding.go @@ -1,14 +1,17 @@ package message import ( - "encoding/json" + "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/api/rpc/grpc" + "google.golang.org/protobuf/encoding/protojson" + "google.golang.org/protobuf/proto" ) // GRPCConvertedMessage is an interface // of the gRPC message that is used // for Message encoding/decoding. type GRPCConvertedMessage interface { - UnmarshalProtobuf([]byte) error + grpc.Message + proto.Message } // Unmarshal decodes m from its Protobuf binary representation @@ -16,7 +19,7 @@ type GRPCConvertedMessage interface { // // gm should be tof the same type as the m.ToGRPCMessage() return. func Unmarshal(m Message, data []byte, gm GRPCConvertedMessage) error { - if err := gm.UnmarshalProtobuf(data); err != nil { + if err := proto.Unmarshal(data, gm); err != nil { return err } @@ -25,16 +28,21 @@ func Unmarshal(m Message, data []byte, gm GRPCConvertedMessage) error { // MarshalJSON encodes m to Protobuf JSON representation. func MarshalJSON(m Message) ([]byte, error) { - return json.Marshal(m.ToGRPCMessage()) + return protojson.MarshalOptions{ + EmitUnpopulated: true, + }.Marshal( + m.ToGRPCMessage().(proto.Message), + ) } // UnmarshalJSON decodes m from its Protobuf JSON representation // via related gRPC message. // // gm should be tof the same type as the m.ToGRPCMessage() return. -func UnmarshalJSON(m Message, data []byte, gm any) error { - if err := json.Unmarshal(data, gm); err != nil { +func UnmarshalJSON(m Message, data []byte, gm GRPCConvertedMessage) error { + if err := protojson.Unmarshal(data, gm); err != nil { return err } + return m.FromGRPCMessage(gm) } diff --git a/api/rpc/message/test/message.go b/api/rpc/message/test/message.go index a402756..69abb68 100644 --- a/api/rpc/message/test/message.go +++ b/api/rpc/message/test/message.go @@ -70,6 +70,7 @@ func TestRPCMessage(t *testing.T, msgGens ...func(empty bool) message.Message) { }) } t.Run("compatibility", func(t *testing.T) { + t.Skip() testCompatibility(t, msgGen) }) }) diff --git a/api/session/convert.go b/api/session/convert.go index 342be4e..cfa97ed 100644 --- a/api/session/convert.go +++ b/api/session/convert.go @@ -207,24 +207,24 @@ func (x *XHeader) FromGRPCMessage(m grpc.Message) error { return nil } -func XHeadersToGRPC(xs []XHeader) (res []session.XHeader) { +func XHeadersToGRPC(xs []XHeader) (res []*session.XHeader) { if xs != nil { - res = make([]session.XHeader, 0, len(xs)) + res = make([]*session.XHeader, 0, len(xs)) for i := range xs { - res = append(res, *xs[i].ToGRPCMessage().(*session.XHeader)) + res = append(res, xs[i].ToGRPCMessage().(*session.XHeader)) } } return } -func XHeadersFromGRPC(xs []session.XHeader) (res []XHeader, err error) { +func XHeadersFromGRPC(xs []*session.XHeader) (res []XHeader, err error) { if xs != nil { res = make([]XHeader, len(xs)) for i := range xs { - err = res[i].FromGRPCMessage(&xs[i]) + err = res[i].FromGRPCMessage(xs[i]) if err != nil { return } diff --git a/api/session/grpc/service.pb.go b/api/session/grpc/service.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..bafe06f6b97a093897bc7e3d9bff3dcb108c5d24 GIT binary patch literal 20929 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 diff --git a/api/session/grpc/service_frostfs_fuzz.go b/api/session/grpc/service_frostfs_fuzz.go deleted file mode 100644 index 759361c..0000000 --- a/api/session/grpc/service_frostfs_fuzz.go +++ /dev/null @@ -1,45 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package session - -func DoFuzzProtoCreateRequest(data []byte) int { - msg := new(CreateRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONCreateRequest(data []byte) int { - msg := new(CreateRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoCreateResponse(data []byte) int { - msg := new(CreateResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONCreateResponse(data []byte) int { - msg := new(CreateResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/api/session/grpc/service_frostfs_test.go b/api/session/grpc/service_frostfs_test.go deleted file mode 100644 index fc8664e..0000000 --- a/api/session/grpc/service_frostfs_test.go +++ /dev/null @@ -1,31 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package session - -import ( - testing "testing" -) - -func FuzzProtoCreateRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoCreateRequest(data) - }) -} -func FuzzJSONCreateRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONCreateRequest(data) - }) -} -func FuzzProtoCreateResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoCreateResponse(data) - }) -} -func FuzzJSONCreateResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONCreateResponse(data) - }) -} diff --git a/api/session/grpc/service_grpc.pb.go b/api/session/grpc/service_grpc.pb.go index 6073111a36083bca0fdbec0a4541e419db3ab6aa..5f473dcc1fed707cb1deb197d28e380232fcbf9e 100644 GIT binary patch delta 1258 zcmc&!&1zFY7$u38BtAe_;s+`u(B2^aKr4bMDHPNQ32vm)$(`@^4!xPV&P)Wgh(Dha4$ZC8y9X0K7nVhjk<8*N+DT7m4N~} zI1X|H$&NM7@ANOxfa6qSI-`Eh@lT+VL9!PrbIYXmym~wCzxuwh z)BhXaqo$wbTpX{h7cXibiwpI64W<=u>X%Pr`=B@IZX-O(kxR`ulZXuQXvk6`FT)v4 zL^fsw$9WbqJbP}G_Q(v8m#8Im(JjLonvgHI{9WzZ+)-)=g5-GMw6ds#p)GXfD zH!Jhvr2e7!R&TF+WU_loduR42kha=1U%qX;u51E(7okSN6BAm6ES5Nw3mq%BLCQm+ z3;||W?A0$WrouHF82f#bmAud;tP9Z*(I9L-RapkWF+vYS6+2Q1Dpw+mwHoCaj~GkK z(@nxSqcb3#pn-COoS`YB+-P+0a)HX>PCAWT)Vj|A delta 132 zcmV-~0DJ%8DU=|PUIQ~OFp*&$0XMOKZUF)_GL!ECGYmHh3S)0>b95jm3JH@@5Ehf^ z5e~Cb0u}+2!wD0!p9F0JlTHU?3~z9Bb1p6}DGCW`W|JQgB$MI?y9Nq$d2nSQlMxIQ mlm874v+4;v0h1{UC6mnyEdwBX3X}T_!n6MjmI1RA5X}T;O)0Se diff --git a/api/session/grpc/service_protoopaque.pb.go b/api/session/grpc/service_protoopaque.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..6d6811afce7b1cb0e68a8766e61dd8d4e94179bd GIT binary patch literal 21759 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 CtaqsZ literal 0 HcmV?d00001 diff --git a/api/session/grpc/types.pb.go b/api/session/grpc/types.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..5adf2dab1599071110234303546fccbb9edfd3b2 GIT binary patch literal 70694 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 literal 0 HcmV?d00001 diff --git a/api/session/grpc/types_frostfs.pb.go b/api/session/grpc/types_frostfs.pb.go deleted file mode 100644 index c62c1ffb5821f2e1f61463dc1cdb9adde06d5e66..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 70892 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 0 { - ds = make([]status.Status_Detail, 0, ln) + ds = make([]*status.Status_Detail, 0, ln) for i := range ln { - ds = append(ds, *x.details[i].ToGRPCMessage().(*status.Status_Detail)) + ds = append(ds, x.details[i].ToGRPCMessage().(*status.Status_Detail)) } } @@ -81,7 +81,7 @@ func (x *Status) FromGRPCMessage(m grpc.Message) error { ds = make([]Detail, ln) for i := range ln { - if err := ds[i].FromGRPCMessage(&dsV2[i]); err != nil { + if err := ds[i].FromGRPCMessage(dsV2[i]); err != nil { return err } } diff --git a/api/status/grpc/types.pb.go b/api/status/grpc/types.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..e44ae18b73b4a3b40aa62e2afbb7923369be9da2 GIT binary patch literal 23823 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 F{|kHeO%MP8 literal 0 HcmV?d00001 diff --git a/api/status/grpc/types_frostfs.pb.go b/api/status/grpc/types_frostfs.pb.go deleted file mode 100644 index 35dec1144b59f5908611087980500032a35e6b82..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14223 zcmeHNZF3q&68;RoVoX&M@X26FPCh85tHKDWuqAK_$+;^>MOLs_Yr`(JyCC^o`tSF2 zPtVTm@+KwL<#Kf@+cGmfJnE$xqVO$#q3 zMK*^Fy{WGb)zq7P;5)m*l|r+>mP@6V2dYxIugVU_cb)P4-SG6DGp(vBiO&3mapmuZ9a*AxR+RIJb z(+I_WZrU6vTmC9H?VgNDe#G=WNoqU~hpKvKl&GfqEShQ!eu-qHaKvD&7CS2XtPTzh z-GD@@g;~9;UHwe6bQ!Uq&f`!m`1a%j7?B~>kE3|%rJXRX;_iNWg>^e>_hqeopMiKT z3R6?ZaWoYqi6E(|YjS&Q@UVnFBo@i@J7}Ent1fC5TM94f!W(;�Lnm?fG!%C&{vH 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 =36xK^DJaitiJ;8^dSj>+YJyRS z$`3r&;t%H&Xh0$eQW2@Vj3QlZ6seTWmWY7J0?z2$L^B&yws$C^0H>KCqfCt?-Oj)LA%k)>p!bBH%jERf(#~tfgiAHn`5%-ZpIBAZ5|+SGs^*lCOY6i=!X_I zC`W>$qp64t&;x`9ay3+hmP?i?{Xl5#he)6Pp#&A=3Ic`!ifCJHU=B~TE~<`*y`4Zf zp>dm;&~Pjt1TwX-6}l2dp+GB$NiS`Nx>1ydOuxgER0sNpSp}_Fg=Wb|K@?je&}((L zKDRum0yNqcnHdFBCT-aQnJ%-aNg9LT5$0!8H94T@LcYEJN)F5qb&|0ex}MT#ToNdC zKq6@MR4+y95i5dun8mIMf>T4p3e*HL>m@|y(Ub_xmhKlwNG|~?5%K`=K+mBy#S zVPxG>1STj3XPSeevC|7aQ9}Juf(pS{)?ot?s4lF9sA`h6RMpA>0WFevsOpddbv?5; zN?i3ZgN+XWslBXWSwGNxA`8{xb@?o;(DD8)z1gGE4mIzwS8sd6@6_HuBC1&7lW;6wA z2RzCL!%5}Lj5(Pxr*cH5j?O2xfM!Pl>L^$7q>rk$gFxkpF$zIQIN-5{q2VwYRM$6s z&>NI}JJBOg`eY$-)B%U>KuoQoMYXFYLQ0A3QHP$wfr*0DDbV87Q-ZU~dP@;kC{=~e z9tB0riOOG-`GEFgWs{a8J_C_j#`lpgf2z|G`ld>%+gD{ zYN(SMiK;&)CCpbPlSYb2?ZiZ(1{$+;e6b-H3~~a#^!&Q`;YpleOPBoW$4_M!i2RJ9 zvll%gXp`?wBcFL*Q4|sZpDh<2VHHTPqO$AH#GQ_*EG)R zSEKrEt8U#i_N$$;%zj>PW*OespIyeuSQh+vP_Po%@IL>{vT`z3+HXPxtAtpr#4n=E ztmI_H=iiVI7h)BDCuL?;@wT_{$5*k}!expMzo0U+&?aM9@QPco68LuJEGs8trSIBa z#r$BU9jl~nGAl_@VIw3Qj^iQEMPS73!s>5 zAWB%B_lcuj>1E_Aq?`XaM{JzTtGe0>oE=ad(f1mbhZ~#uoxcdYG&*^}+BGBhbNBs-Zg{iFo)Eni6mrov$>uk?CWShxFHT%w zhPGeEIZS0m@azV?aB{yF46htz@A&ia@1pU|uDsSKKNepXDAKwA=l8YxyD!%=h~E|l zyp=QF5%Twjcb5yv?i6(`-d2<-JhET$Kx79%JhWh{&!xW5hlkz}@K}H1NM@e%x5jm* zKKw4zj~G{j9|u`Zm&IaPeqg^G+WmHn-+a7_0ez`5%`auSPb^9lL-^9=MWzw}K`!wy wmICm(3G2Vtt=+b!+P>GSUWxzK#VBekOL3If!P0cGe14hU9yY&>ZEWiJU&p?$u>b%7 literal 0 HcmV?d00001 diff --git a/api/tombstone/grpc/types.pb.go b/api/tombstone/grpc/types.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..11fc6cefba3195b1f248216a73131fb36e9ed099 GIT binary patch literal 8048 zcmeHMZBOG!68;?jie5gs^bgw z`Ql2Q9G_jePOGJsI!S{#O8fLut1MQ_wtLWX+t!RSf6GI+^Um$iOd99OSof8`2wGVj zj?yfSbZeF@#;xpOp;MQ6I#@c3`=dOVPt;F56fgXLITs?Ze1n0{xFa8$tQo*GBf+>}nKj4H^!5rnQslHcw5szuyvvrI+_I0OvMqi8s|v@ zx39$+tB6yEWvQ!v*+TwbH9afQo>~5H!`&pXZ3Lh&kL0hl9Tl zu1?N}!;{}H&%XR}b$0Q2cyf91;ny2g$L!~mi_^h#lL%1g4JT5ykTMoGS+A?aJxJL8-qKGn z)@(Q9Mb?a9==;*pA-kvfM;b@gD6`sAG}_;LvN#TdOoxl?!MMBKgU=8sU%#Fmt2~9G zS*(Hyydr4}bQkj=Gcl`f1C-rle2b#%Cm9@cPM#Qv$MYyaxdY@W7$CAy2QoiEp@tuU zMiKTziF{wcSqOzdLP4aEU)f((-`?=-FqqtkR{`CCv^txp>u;>Sg&4i3%}xneK`cP= z+u3me(0Xzcm`?!=L&z6e0~WZ`q%agX*OU~g*)6WWy`?(tUT|sy$|njPG!wlL4~9Zo zs9;{36%F#}E{gA?(?HKBsVa-kS9=^;9{f{(@W)63`YV?WigD-Bai)1RR`r#7yDm)) z^+hAe>J6$CZ&xU@>#6ULPAv>n|Gj!M4d!}?y=J&h9^9D35AKAp{!| zo#jdNyl7ej*(-~mjl?B&4@NQpvIQ_+_C@wjEMrT|rdL==iu@>a!Bnl(Pw!QP4FGI@ z7|I$L0nSgcKe5qlsP`rBt$5dJaDIVhm^$=okPU;v$_*&1Vf9gG8$}IRnW_e}Y%AZq zQ7d<2v5kNc{PxKrTP<%}j6e}nBA|dN5*rE-%tpw{HH&TDaK#JUP5v|Yjog1pjv?Do z&fqDWO9LmT?h|Z~$#0h1v<9~Vlcm9gxxgz+J3jDYrl}a^NUgBP0LfosE7;Vjh zm)QL3ryD^5h(~eEX~FShMY3_<)Ssu=g34%pii@PyHe?{QK;}n;8Cny)+k||WYd?8v z8=~c@x}2;pGAi|D289Z1!fInU)p@C#S{BLx25>h+%Vw+W` zOrVihb~r^YG}Pbdtd8(6+X3FfJ??%g9nq+X?U{O_k=InAhofmz(dm@NpU>aX=H6B< zqoZ=iSz%|DUK0F@=W^raEe^*3b^3ZcR&7g&;8>^QBv_!kavWl^OHY^h_e56i0#40a zd45xQt2Pcg-m2H8-y=YQ=Xdnmnes@NNBFrn;pYyIA3T{AK8G|8S`yGZ;zdFrteMPa zeZ<0yU?x72HOx-NkC;QRst^fi^F*5odX{`y+L4i7sjrM2@yG$wnvv(MBmtt!kv(mR zX$ydC!Bzl8cebo&tMVU$sKfGqX89gFS={ci)`zxbJG)n4@4RCtnXov7^I_%(IL$>qEBKv)OG|h@HGeqi$6f$_!f- z7Sm=s45T84*O-7FOCIndi6UdBn9qWZP0a2Yo5lpDu}SjjWdU7g-4)i%R3hEz$Sh1I zvwe0}_rzkRlF)~81d+!wjdt=Zh@)D1D-j@en546^W{;!7R77#37%tlTPhJx)Cn_2MDc)YvUrTfiE? zJ&qzRd3)5PPHNZop|}!4{}B3jx_e_O{tGrQ1+TNO4sc zL;>Gr?$q6y#gB3=x=TM?u;=@$UAl1V9#3v4_-=wveP1iogm-1op($8-D_|(83_gvyamvrAB8}8-Zj3(<1q;swIMH+iK5A=6J z%bW$6{Bs_j;9F4I=S)*nB5E}Znxy9Ob}@KT1Ol=; literal 0 HcmV?d00001 diff --git a/api/tombstone/grpc/types_frostfs.pb.go b/api/tombstone/grpc/types_frostfs.pb.go deleted file mode 100644 index df3100409afd16d017fe003245225c237a6382a6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5846 zcmcIo?{C{S5dAFw6|8`^a_7kDTJ%GP3}~Bd$k3+6l58KkV3lPmVWVG=D92fl|9$U{ z6fMbivbCtuG?93Be7t*nJbF46Z;QDU7c!Ssq~%=9ZbVrXx`=o1Zs(%dNvfjONgaxV z590X4sW?11It@poGK#OF3n_Gw&1zlbax_v|SyWmCBkxOH7gZSx|3c}o4X^T~n4VURe47@{{9QDg+L4`legz!Us8rKRCiRqj5uz-L^eaL% zTBTF+r4Y2xuZ}^^2-2?do8nB{C=@WNZ&t`In^_na+4K(;>!MQ8d#NiG*HdQ&k1wfQ z%8CKB=2@iDs$nb2{?wR|?RBN}L&nAi*0rwUB3}sK{^5_tqmjNTr8sTtE-=)@THKDj z!)2+!B30yvWf5PBM&ZZzTp)aMV=|z!< zrBJ!q%(EsDNl|5y4&i59sc20lYjLggrSXe0DH0{qxmZMLgQ3f4fgMgEX=tYMsJh|s z;V5bHSOiPa$yNtXFctyB00YKE4MlMF_XQG4kDkFRc1PYFSVn+<*f&_ivm;^+ttxmv z5zBDED%7KI{{~E{+5AT`w^V`|RxFg*+ZR=oL#dWw%NYXDk8vz(h~Eh_8A+jNXL)=n z<10B2UQEOj=ln^XBQ!wU6;K@F7Rq7E&77i)Ll0A#$y}SVY$F{~B&#Hf<>sUgq6YI? z3$s1O_BSOoqji$3tw{Hgo_>`&0N%MwK<^FX9~&KHFhH6!rCaDhhFsM(^xaW77*iO` zy)Q6m=ucSi)@A|^l!#5l=*P~)GpAl_^W4K0PCF54ND1+1U+glivMhXEmNK88vGi;s z5Xy%*smy~FUp53`W(5OQ!S`Nbb(u0qY75ThHh4ify|e6bd%rEh{rqv}sOtj^a;9zM zpsr%ap+HuZz)w+e>PaJ$SgZ>43kky80wi5(vvkTEB8fXt^R?BG!Y6+!%%-@s8+T%Kr}4;c7%3@9y0rGfanDyvTC^jk>&3J7D3|jjhVCa z^l-IGy)Po(&e*5+)kO5p`P(}NkR(*kj!K)oZGFZ&&(AGPA|h2j3D8do=w z)p1}?JiZ1y5teZfE%AeYRusW_?C(vQ2xT7d0*9vUm_R|&x$c&+@z%)Hoosi@R440G zE$mdh=huRQ4~s3a0NauVaBZ7*A6&=l|B@2`ZG$hIKq0zQ>HC4%ax<_VOK4ATO{n$i zCUSe#fUuo~5cX!VxwPXJYNs*y?c~GpP}B!~;sZ)<&s_>c9hONyv(KvcHIdu4_~D=2 z>E9yp*gfXNKE&OEy`Nlzua;BS;hQEwe}G>qom;t?h-)LwTX--GSTtHZ>(9LLD2HA6 zdvuLf3pc~S&zm&moo}#k5fW9Q&%i>^j>(Z{JqTCu^!6!mqna$%#*m)+MiVmf?u1Nn z67aCG#J-R4%Ir}O7aL4d;!dfSbcq2T)Xe{Dct82e-@{F)oxuV(ZZu5~p3gJWE0@v) zK@pv z2kQU>>k z4xN!!b1EY)XdgD8jt;H!MkDyFJD*XP`m`wD$%RZwFH{~L)wmQ_eCMHh(2HY84AjzY z8MX3YWq=8q+q%hc(Q6ZrcPCe>8r)^aFi{vJkH zJUovZecJ`lTT@ZY`5V5vKrfANR~VV+<+Pfr-KYc~-lpNlK&x#Zal%Myr-PiNYa(8~ zG^SV@bzR-|pA+zUK0hQj(FMd@B69U4-0C0lXi$OgCeL7unXW!Z4@Z_!`r>BWX t?3m-TW2a4r>)SCUx$rzIw5)2TTm)el2Jcq3Bz7#a{T&R0?gpmo^uLJr86p4x diff --git a/api/tombstone/grpc/types_frostfs_fuzz.go b/api/tombstone/grpc/types_frostfs_fuzz.go deleted file mode 100644 index 57cfb58..0000000 --- a/api/tombstone/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,26 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package tombstone - -func DoFuzzProtoTombstone(data []byte) int { - msg := new(Tombstone) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONTombstone(data []byte) int { - msg := new(Tombstone) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/api/tombstone/grpc/types_frostfs_test.go b/api/tombstone/grpc/types_frostfs_test.go deleted file mode 100644 index 8264824..0000000 --- a/api/tombstone/grpc/types_frostfs_test.go +++ /dev/null @@ -1,21 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package tombstone - -import ( - testing "testing" -) - -func FuzzProtoTombstone(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoTombstone(data) - }) -} -func FuzzJSONTombstone(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONTombstone(data) - }) -} diff --git a/api/tombstone/grpc/types_protoopaque.pb.go b/api/tombstone/grpc/types_protoopaque.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..7caeef25884071d1f20eac2897c677d6fb3b84d5 GIT binary patch literal 8253 zcmcgxZBOG!68;?jiatKBdllBH?25A`3ggJ3SC^$|hc!}+-UqZMM|NWk- zYRBzBhU~2F&}!D{?y7p~)m82Nef2&bYch$F7%60bl)j}s}5JzdBe$*<5)uQbl^xU?!qs-sp(Cxf)JG7I=dE)E7^5(&Q7KfuW zizB^1P3Hc7_B7Y2%RC(%oyPr99?Zr9DV}?O(eZ+7<5@dGs6Cme~Mqzqxl5tXno(|!h4aXg)A zcN)*UXzIqvbf4jk@(B^q8Cftt3VI-#{g^n9vLMt#Os7G)61rm6a2y}DX4PQ2f9WKc zJgMy7%kWQ-T8{I{k620b$t3Ut9c8m8mCyIGcyA2Px=wAVj>V89%{_%#;0ACcZ`M04 zwP)>~2a(xnIJGsw$vX1CAeL>(c+S10kq982R>Ohn5PVexhU-_tmorF|2jJTky?LPY|bpEhL;j9|{su{XA@*-*zN?~V4Z)!_WXmSO79 zPh;6ID70KNWi_lm>TIoO!B(bhL9KNy4fCbDx#-y-TALyQVogPYI8%$Z6ldscG4R0; z1ewaig4RmTDA}hg%b%})rl`nRk#claj_{bK6&YyMG+sPIOb&LsJHUZME%5@rP}swSskz4H*CMr z@BmU6{(lLey%E6snf8*Gwm@pw>hY;Jb*x6i8dF5Y#(Kc)OFR5|;n1%tybMK?fz?iM z$YY33=#^wT!l6Q*(5n}bfYuVqF3@wQ%8$djmw2N9?GGByXsq&7Q@@I4KtG}T#5!iJ znKZ1_g&N+j!=3hL58Zyzm~u;}qMVu`;z7q(Z)6wSBKxYSxhiQiP3G2kpMml#782949>8sM!(}-blG=eZs=4*vb-jl z=5qijh@L_Y6oF;T`~;Gs0EH*02=ZVTMA|%Xehq8?qf*G@gpeu8k`shC=n>?Owjx(-OgnPW>d9BPSe( zm~1l;B;F&DmG5<@)>^ha^b5;2lCZVxLD$yu2!6)%JNmaX;gv40@N;j>&mCSrc(E&d z4rv{i;hqh*0yI0KK zdB;vRQ6%ma2mZThvm{i2@857XHt|=0MoGse^T+T2w?pVS&T51nkFSuJPM6TfI%u` zjImNY?9>&R4}^ z8uJw;wzOMRv(xBv5U__i;laRklabBy8Ksr|FE>FA~H;G+Wqz|eV^eu zEg$X8XcnMPC85slV|+cyvw5EJoo@l;O`0Iuo*e5>x(9DbHN^=