Hi,
I'm building a network troubleshooting app for the Mac App Store (so it's a Mac app). I am using wget. Since I can't call the wget tool normally (because of App Sandboxing) in /usr/local/bin, I tried bundling wget inside of my app (in Contents/MacOS) and code signed it. Wget was also sandboxed itself, and it works okay that way. However, when I uploaded my build to the App Store, I submitted the app for review. But it was rejected. This is the rejection letter, which I don't understand:
"
Guideline 2.5.1 - Performance
Your app links against the following non-public framework(s):
• Contents/MacOS/wget/_SSL_CTX_set_options
Next Steps
The use of non-public APIs is not permitted on the App Store as it can lead to a poor user experience should these APIs change.
If you are unable to reproduce this issue, ensure you are testing the exact version of the app that you submitted for review, and that you're doing so in a minimally privileged environment. See Technical Q&A QA1778: How to reproduce bugs reported against Mac App Store submissions.
For additional information on crash reports, see Diagnosing Issues Using Crash Reports and Device Logs."
I do not know what to do. How can I use wget and get my app approved? I also don’t know how to reproduce a bug like that without wget’s source code.
I also do not fully understand this rejection. What is “_SSL_CTX_set_options,” and why is my app being rejected for using it? I don’t use that framework directly, and “Contents/MacOS/wget” is even mentioned in the letter, so that must be it. But what do I do? What I’m asking is either:
Option A: Is there a way to use wget without bundling it in my app (so the app is accepted), even from a sandbox that blocks access to /usr/local/bin and wget (with no temporary exceptions)? Or
Option B: Is there a way to troubleshoot this, so I can stop wget from using this framework (while still keeping it’s functionality), or stop Apple from rejecting it for this reason (maybe with an entitlement that allows this framework, or even a temporary exception?)?
I think Option A would be a lot easier, but if you can’t think of a solution maybe you can look at Option B? I really need to use wget, and need your help!
I'm building a network troubleshooting app for the Mac App Store (so it's a Mac app). I am using wget. Since I can't call the wget tool normally (because of App Sandboxing) in /usr/local/bin, I tried bundling wget inside of my app (in Contents/MacOS) and code signed it. Wget was also sandboxed itself, and it works okay that way. However, when I uploaded my build to the App Store, I submitted the app for review. But it was rejected. This is the rejection letter, which I don't understand:
"
Guideline 2.5.1 - Performance
Your app links against the following non-public framework(s):
• Contents/MacOS/wget/_SSL_CTX_set_options
Next Steps
The use of non-public APIs is not permitted on the App Store as it can lead to a poor user experience should these APIs change.
If you are unable to reproduce this issue, ensure you are testing the exact version of the app that you submitted for review, and that you're doing so in a minimally privileged environment. See Technical Q&A QA1778: How to reproduce bugs reported against Mac App Store submissions.
For additional information on crash reports, see Diagnosing Issues Using Crash Reports and Device Logs."
I do not know what to do. How can I use wget and get my app approved? I also don’t know how to reproduce a bug like that without wget’s source code.
I also do not fully understand this rejection. What is “_SSL_CTX_set_options,” and why is my app being rejected for using it? I don’t use that framework directly, and “Contents/MacOS/wget” is even mentioned in the letter, so that must be it. But what do I do? What I’m asking is either:
Option A: Is there a way to use wget without bundling it in my app (so the app is accepted), even from a sandbox that blocks access to /usr/local/bin and wget (with no temporary exceptions)? Or
Option B: Is there a way to troubleshoot this, so I can stop wget from using this framework (while still keeping it’s functionality), or stop Apple from rejecting it for this reason (maybe with an entitlement that allows this framework, or even a temporary exception?)?
I think Option A would be a lot easier, but if you can’t think of a solution maybe you can look at Option B? I really need to use wget, and need your help!