Comments (5)
@jschwinger233 Oh, I reproduced this error in my internal environment :)
https://transfer.sh/CjQtWc/dump.pcap
https://transfer.sh/BFUH6U/protos.tar.gz
The command I'm using with:
./grpcdump -p 2379 -r dump.pcap -f kvproto/proto/pdpb.proto -m AUTO
panic: runtime error: slice bounds out of range [5:0]
goroutine 1 [running]:
github.com/jschwinger233/grpcdump/parser/grpcparser.(*Parser).unmarshalDataFrame(0xc000516b40, {0x91faf2, 0x11}, {0xc0002ce7e0, 0x22}, 0xc000216f60)
/home/runner/work/grpcdump/grpcdump/parser/grpcparser/parser.go:180 +0x22b
github.com/jschwinger233/grpcdump/parser/grpcparser.(*Parser).Parse(0xc000516b40, {0x9c85f8, 0xc0007dc840})
/home/runner/work/grpcdump/grpcdump/parser/grpcparser/parser.go:148 +0x1005
main.main.func3(0xc00023a9a0)
/home/runner/work/grpcdump/grpcdump/main.go:79 +0xd7
github.com/urfave/cli/v2.(*App).RunContext(0xc0000adba0, {0x9bc510, 0xc0000380b0}, {0xc000032090, 0x9, 0x9})
/home/runner/work/grpcdump/grpcdump/vendor/github.com/urfave/cli/v2/app.go:322 +0x7a8
github.com/urfave/cli/v2.(*App).Run(...)
/home/runner/work/grpcdump/grpcdump/vendor/github.com/urfave/cli/v2/app.go:224
main.main()
/home/runner/work/grpcdump/grpcdump/main.go:91 +0x268
from grpcdump.
@jschwinger233 Oh, I reproduced this error in my internal environment :)
https://transfer.sh/CjQtWc/dump.pcap https://transfer.sh/BFUH6U/protos.tar.gz
The command I'm using with:
./grpcdump -p 2379 -r dump.pcap -f kvproto/proto/pdpb.proto -m AUTO panic: runtime error: slice bounds out of range [5:0] goroutine 1 [running]: github.com/jschwinger233/grpcdump/parser/grpcparser.(*Parser).unmarshalDataFrame(0xc000516b40, {0x91faf2, 0x11}, {0xc0002ce7e0, 0x22}, 0xc000216f60) /home/runner/work/grpcdump/grpcdump/parser/grpcparser/parser.go:180 +0x22b github.com/jschwinger233/grpcdump/parser/grpcparser.(*Parser).Parse(0xc000516b40, {0x9c85f8, 0xc0007dc840}) /home/runner/work/grpcdump/grpcdump/parser/grpcparser/parser.go:148 +0x1005 main.main.func3(0xc00023a9a0) /home/runner/work/grpcdump/grpcdump/main.go:79 +0xd7 github.com/urfave/cli/v2.(*App).RunContext(0xc0000adba0, {0x9bc510, 0xc0000380b0}, {0xc000032090, 0x9, 0x9}) /home/runner/work/grpcdump/grpcdump/vendor/github.com/urfave/cli/v2/app.go:322 +0x7a8 github.com/urfave/cli/v2.(*App).Run(...) /home/runner/work/grpcdump/grpcdump/vendor/github.com/urfave/cli/v2/app.go:224 main.main() /home/runner/work/grpcdump/grpcdump/main.go:91 +0x268
Will look into it in the evening, thanks.
from grpcdump.
@breezewish Please try the latest rc release: https://github.com/jschwinger233/grpcdump/releases/tag/v22.08.25-rc.1
BTW, I noted the enormous data:(unknown)
output which indicates the failure of decoding grpc data bytes, and it draws my attention that parts of the parsing failure are actually linked to etcdserverpb.KV service, which ain't included in pdpb.proto.
Therefore, I made some improvements and now grpcdump accepts multiple -f
flags such as ./grpcdump -p 2379 -r dump.pcap -f kvproto/proto/pdpb.proto -f etcd/rpc.proto -m AUTO
, and in this way multiple rpc services can be taken into account simultaneously.
Hope this change is helpful.
from grpcdump.
@breezewish Please try the latest rc release: https://github.com/jschwinger233/grpcdump/releases/tag/v22.08.25-rc.1
BTW, I noted the enormous
data:(unknown)
output which indicates the failure of decoding grpc data bytes, and it draws my attention that parts of the parsing failure are actually linked to etcdserverpb.KV service, which ain't included in pdpb.proto.Therefore, I made some improvements and now grpcdump accepts multiple
-f
flags such as./grpcdump -p 2379 -r dump.pcap -f kvproto/proto/pdpb.proto -f etcd/rpc.proto -m AUTO
, and in this way multiple rpc services can be taken into account simultaneously.Hope this change is helpful.
Awesome work! The updated version successfully decoded my original large pcap file :)
Thanks a lot for your great tool!
from grpcdump.
Would you mind sending me the pcap using email? I'd appreciate that very much.
base64 encoded email address: Z3JleXNjaHdpbmdlckBnbWFpbC5jb20K
from grpcdump.
Related Issues (4)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from grpcdump.