netty / netty/netty

libio_grpc_netty_shaded_netty_tcnative_osx_x86_64 not signed

Open
#10,569 9 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
35.1k
Forks
16.3k
Avg merge
1d 5h
Merged PRs (30d)
143

Description

Expected behavior

The file grpc-netty-shaded-1.31.1.jar/META-INF/native/libio_grpc_netty_shaded_netty_tcnative_osx_x86_64.jnilib being signed.

Actual behavior

That it's not signed.

Steps to reproduce

Submit a package to Apple for Notarization containing grpc-netty-shaded-1.31.1.jar. The Notarization process will fail, with the following being reported:

{
  "severity": "error",
  "code": null,
  "path": "MyApp-1.0-alpha-1.dmg/My App.app/Contents/Java/lib/grpc-netty-shaded-1.27.1.jar/META-INF/native/libio_grpc_netty_shaded_netty_tcnative_osx_x86_64.jnilib",
  "message": "The binary is not signed.",
  "docUrl": null,
  "architecture": "x86_64"
}

I've worked around this by extracting the libio_grpc_netty_shaded_netty_tcnative_osx_x86_64.jnilib out of the jar, signing it, then replacing it in the jar before sending off to Apple. I think ideally the binary should be signed as part of the build phase of the

Minimal yet complete reproducer code (or URL to code)
Netty version

1.31.1

JVM version (e.g. java -version)

N/A

OS version (e.g. uname -a)

macOS

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by inspecting how grpc-netty-shaded-1.31.1.jar packages META-INF/native/libio_grpc_netty_shaded_netty_tcnative_osx_x86_64.jnilib and how the build handles macOS native artifacts. Done means the embedded jnilib is signed in the produced JAR and a package containing it passes Apple's notarization check.

Written by the indexing model from the issue text.

Assessment

Tech stack
grpc, java, macos
Domain
build-system, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.