Switch to using a lightly modified version of GTMKeychain_iOS for all platforms, doing away with GTMKeychain_macOS which used the legacy Keychain API. This opens the door to using kSecUseDataProtectionKeychain on macOS.
In order to allow the unified GTMKeychain implementation to read existing keychain items created by GTMKeychain_macOS, we will stop setting and querying for kSecAttrGeneric which is unavailable to the legacy Keychain API and not needed for our use case.
Switch to using a lightly modified version of GTMKeychain_iOS for all platforms, doing away with GTMKeychain_macOS which used the legacy Keychain API. This opens the door to using kSecUseDataProtectionKeychain on macOS.
In order to allow the unified GTMKeychain implementation to read existing keychain items created by GTMKeychain_macOS, we will stop setting and querying for kSecAttrGeneric which is unavailable to the legacy Keychain API and not needed for our use case.