Dependencies with unfixed advisories, MPL license, deprecated sodiumoxide, and OpenSSL #7
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Run through a typical
cargo denypolicy (advisories plus a license allow-list without MPL-2.0), the dependency tree fails:h2 0.3: unbounded empty DATA frames;rustls-webpki 0.101: three advisories (URI name constraints, wildcard name constraints, CRL parsing panic);rustls-pemfile: unmaintained;webpki-roots 0.25: MPL-2.0;sodiumoxide: deprecated (viamacaroon 0.3).Most of these come from
ldk-server-client, which pinshyper 0.14,hyper-rustls 0.24,reqwest 0.11andrustls 0.21. The rest come from satsettle's ownreqwest 0.11. OpenSSL is used for SHA-256, HMAC and random bytes, which adds a native dependency.Suggestion
ldk-server-grpc(types, framing) andldk-server-macaroons(bind_macaroon_to_request), with a small client overreqwest 0.12andrustls 0.23. LDK Server serves only HTTP/2 (h2via ALPN), so the client must usehttp2_prior_knowledge()and reqwest'shttp2feature. Without that, the TLS handshake fails. The calls needed areBolt11Receive,Bolt11ReceiveForHash,Bolt11ClaimForId,Bolt11FailForId,GetPaymentDetails,ListPayments, and the server-streamingSubscribeEvents. Read the stream by buffering gRPC frames fromresponse.chunk(), with HTTP/2 keep-alive pings instead of a request timeout. npub.cash does this in about 300 lines and checked it against LDK Server on regtest.hmacandsha2, instead of themacarooncrate.opensslwithsha2,hmac, andgetrandomorrand.reqwest 0.12withrustls-tlseverywhere.deny.tomland runcargo deny checkin CI.