gst_all_1.gst-plugins-rs: check that system libwebp was linked#254915
gst_all_1.gst-plugins-rs: check that system libwebp was linked#254915yu-re-ka merged 1 commit intoNixOS:masterfrom yu-re-ka:libwebp-gst-plugins-rs
Conversation
|
The idea behind this looks fine to me, but I'll give it a more thorough review late today. Thank you! It kinda sucks libwebp-sys2 doesn't even bother trying Edit: Wait wouldn't this fail for cross build/host pairs where |
Indeed it would, but intentionally because it would have the insecure libwebp version. currently there is no easy way to build a secure version on those systems. |
|
Yeah I'd rather set |
|
So, curiously enough, I cross-compiled gst-plugins-rs (x86_64-linux -> aarch64-linux) and it does still link against system libwebpdemux.so, despite what the upstream libwebp-sys2 crate seems like it should be doing based on the And indeed the symbols are dynamically loaded (i.e. it's not just unnecessarily marked "needed" for some reason in the ELF header) |
|
Ah it actually checks So I think it should never be using the vendored |
Great, even better! |
lilyinstarlight
left a comment
There was a problem hiding this comment.
So yeah I'm fine with this as-is then. Are you considering this a permanent change?
If so, libwebp might not be the only one we do this for if other serious vulns come out, so the installCheck would need to be updated to accomodate. But that can be done if/when that occurs, so I don't think it's a blocker here
|
I would like to keep this permanently. One thing less to worry about when the next libwebp vulnerability comes around. |
I meant the conditional would need to be adjusted to not bother with the webp plugin check and instead the tests in the installCheckPhase would need to be dynamically added based on selected plugins But again that can be done if/when others are added, since I really don't care enough |
|
Just realized, I forgot to say thank you for checking on this package! The libwebp thing seems a bit of an unfortunate mess of random vendoring and I appreciate your (and everyone's) work on it! |
|
Could we |
I'm not sure how we'd do that for a vendored libwebp copy in a dependent crate. If you have something more specific, I suppose we could add it though (although it shouldn't be using the vendored libwebp in our gst-plugins-rs anyway on major platforms or for cross to major platforms afaict) |
|
Ah, looks like |
Description of changes
#254798
Things done
sandbox = trueset innix.conf? (See Nix manual)nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/)