Skip to content

Add an Apple privacy info file for OpenSSL.#24032

Closed
slontis wants to merge 1 commit intoopenssl:masterfrom
slontis:apple_privacyinfo
Closed

Add an Apple privacy info file for OpenSSL.#24032
slontis wants to merge 1 commit intoopenssl:masterfrom
slontis:apple_privacyinfo

Conversation

@slontis
Copy link
Copy Markdown
Member

@slontis slontis commented Apr 4, 2024

Checklist
  • documentation is added or updated
  • tests are added or updated

@slontis slontis added branch: master Applies to master branch approval: review pending This pull request needs review by a committer approval: otc review pending labels Apr 4, 2024
@slontis slontis force-pushed the apple_privacyinfo branch from a2a5c48 to 629ddce Compare April 4, 2024 04:46
@slontis
Copy link
Copy Markdown
Member Author

slontis commented Apr 4, 2024

Fixes #23494

@t8m
Copy link
Copy Markdown
Member

t8m commented Apr 4, 2024

Should we treat it as a bug fix and add it on all branches?

@t8m t8m added triaged: bug The issue/pr is/fixes a bug triaged: documentation The issue/pr deals with documentation (errors) tests: exempted The PR is exempt from requirements for testing labels Apr 4, 2024
@t8m
Copy link
Copy Markdown
Member

t8m commented Apr 4, 2024

Or documentation actually.

@t8m t8m added branch: 3.0 Applies to openssl-3.0 branch branch: 3.1 Applies to openssl-3.1 (EOL) branch: 3.2 Applies to openssl-3.2 (EOL) branch: 3.3 Applies to openssl-3.3 labels Apr 4, 2024
@t8m
Copy link
Copy Markdown
Member

t8m commented Apr 4, 2024

As @fwh-dc is the community maintainer of iOS platforms I kindly ask him to review this.

@fwh-dc
Copy link
Copy Markdown
Contributor

fwh-dc commented Apr 4, 2024

LGTM.

I have one minor thing to consider:
Should we copy this file to the install location of ios build targets to make it more convenient when packaging an xcframework?

@kroeckx
Copy link
Copy Markdown
Member

kroeckx commented Apr 4, 2024

There is also a discussion about this at #23262

Copy link
Copy Markdown
Contributor

@paulidale paulidale left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm fine back merging this anywhere.

@paulidale paulidale added approval: done This pull request has the required number of approvals and removed approval: review pending This pull request needs review by a committer labels Apr 4, 2024
@slontis
Copy link
Copy Markdown
Member Author

slontis commented Apr 5, 2024

someone with better knowledge of the config/perl would need to add it to the install process.. At least this gives a reference file.

@t8m
Copy link
Copy Markdown
Member

t8m commented Apr 5, 2024

@fwh-dc Which directory it should be installed to? The same where the libcrypto/libssl .dylib is installed to? BTW the iOS targets by default disable shared build so there is actually no .dylib built. So I would skip installing this anywhere for now.

The iOS targets really need some fine-tuning/cleanups IMO to be more comprehensive and useful.

@fwh-dc
Copy link
Copy Markdown
Contributor

fwh-dc commented Apr 5, 2024

@fwh-dc Which directory it should be installed to? The same where the libcrypto/libssl .dylib is installed to? BTW the iOS targets by default disable shared build so there is actually no .dylib built. So I would skip installing this anywhere for now.

Good question. I think it's fine to just have the file for reference as suggested. We can always improve from there.

@MichaelWellsSM
Copy link
Copy Markdown

Doesn't this need to be added to the appropriate directory in the podspec and packaging (resource bundle) ?

@davidben
Copy link
Copy Markdown
Contributor

davidben commented Apr 5, 2024

Based on #23494 (comment), I take it this was derived from the BoringSSL one? Keep in mind that stat appears in this list:
https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api?language=objc

We have an empty one, but we'd also removed our remaining stat call. I haven't looked too carefully at this, but it's possible you all may need either code changes or a different manifest.

@openssl-machine
Copy link
Copy Markdown
Collaborator

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set. Please review the updates and set the label manually.

@paulidale
Copy link
Copy Markdown
Contributor

I do not see a need for us to install this. It's useful documentation for folks building for Apple products.
This is very unlikely to stand by itself as the only things an application needs.

@t8m
Copy link
Copy Markdown
Member

t8m commented Apr 8, 2024

Based on #23494 (comment), I take it this was derived from the BoringSSL one? Keep in mind that stat appears in this list: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api?language=objc

We have an empty one, but we'd also removed our remaining stat call. I haven't looked too carefully at this, but it's possible you all may need either code changes or a different manifest.

Yeah maybe we need to declare C617.1 Although we never use the timestamp info obtained with stat.

@t8m t8m added the hold: discussion The community needs to establish a consensus how to move forward with the issue or PR label Apr 10, 2024
@t8m
Copy link
Copy Markdown
Member

t8m commented Apr 16, 2024

OTC: We are OK with adding the file. The contents need to be right. It seems we need to declare C617.

@t8m t8m removed approval: done This pull request has the required number of approvals hold: discussion The community needs to establish a consensus how to move forward with the issue or PR labels Apr 16, 2024
@kroeckx
Copy link
Copy Markdown
Member

kroeckx commented Apr 17, 2024 via email

@t8m
Copy link
Copy Markdown
Member

t8m commented Apr 18, 2024

C617 is probably not right, and we might need to ask apple for a new id.

Any reason why C617 is not right?

@kroeckx
Copy link
Copy Markdown
Member

kroeckx commented Apr 19, 2024 via email

@kroeckx
Copy link
Copy Markdown
Member

kroeckx commented Apr 19, 2024 via email

<plist version="1.0">
<!--
This is an Apple related Privacy Manifest File for OpenSSL as required by
https://developer.apple.com/support/third-party-SDK-requirements/
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(minor) should there be a space at the beginning of this line?

@slontis
Copy link
Copy Markdown
Member Author

slontis commented Apr 23, 2024

Is there someone who actually has Xcode installed who can generate this file
I dont feel comfortable trying to add this entry manually - and I dont have access to Xcode + MAC to do this..

(Submit a new PR if you want)
Basically the NSPrivacyAccessedAPITypes section needs
NSPrivacyAccessedAPIType=APICategoryFileTimeStamp
NSPrivacyAccessedAPITypeReasons=C617.1

@mattcaswell
Copy link
Copy Markdown
Member

In light of #24260 can this be closed now?

@slontis
Copy link
Copy Markdown
Member Author

slontis commented Oct 30, 2024

I would think so.

@slontis slontis closed this Oct 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

branch: master Applies to master branch branch: 3.0 Applies to openssl-3.0 branch branch: 3.1 Applies to openssl-3.1 (EOL) branch: 3.2 Applies to openssl-3.2 (EOL) branch: 3.3 Applies to openssl-3.3 tests: exempted The PR is exempt from requirements for testing triaged: bug The issue/pr is/fixes a bug triaged: documentation The issue/pr deals with documentation (errors)

Projects

None yet

Development

Successfully merging this pull request may close these issues.