Bug 207079

Summary: Pass a hint from the extension to decidePolicyForSOAuthorizationLoadWithCurrentPolicy
Product: WebKit Reporter: Jiewen Tan <jiewen_tan>
Component: WebKit Misc.Assignee: Jiewen Tan <jiewen_tan>
Status: RESOLVED FIXED    
Severity: Normal CC: bfulgham, commit-queue, ggaren, jiewen_tan, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch
none
Patch
none
Patch none

Jiewen Tan
Reported 2020-01-31 15:45:54 PST
Pass a hint from the extension to decidePolicyForSOAuthorizationLoadWithCurrentPolicy.
Attachments
Patch (72.99 KB, patch)
2020-01-31 15:55 PST, Jiewen Tan
no flags
Patch (74.50 KB, patch)
2020-01-31 16:06 PST, Jiewen Tan
no flags
Patch (74.65 KB, patch)
2020-01-31 22:16 PST, Jiewen Tan
no flags
Patch (74.47 KB, patch)
2020-02-01 19:13 PST, Jiewen Tan
no flags
Jiewen Tan
Comment 1 2020-01-31 15:46:09 PST
Jiewen Tan
Comment 2 2020-01-31 15:55:16 PST
Jiewen Tan
Comment 3 2020-01-31 16:06:08 PST
Brent Fulgham
Comment 4 2020-01-31 16:48:52 PST
Looks like you have an iOS build failure. Otherwise looks good: CompileC /Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/WebKit.build/Release-iphoneos/WebKit.build/Objects-normal/arm64/UnifiedSource36-mm.o /Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/Release-iphoneos/DerivedSources/WebKit2/unified-sources/UnifiedSource36-mm.mm normal arm64 objective-c++ com.apple.compilers.llvm.clang.1_0.compiler cd /Volumes/Data/worker/iOS-13-Build-EWS/build/Source/WebKit export LANG=en_US.US-ASCII export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x objective-c++ -target arm64-apple-ios13.2 -fmessage-length=0 -fdiagnostics-show-note-include-stack -fmacro-backtrace-limit=0 -std=gnu++1z -stdlib=libc++ -fobjc-weak -gmodules -Wno-trigraphs -fno-exceptions -fno-rtti -fno-sanitize=vptr -fpascal-strings -Os -fno-common -Werror -Wno-missing-field-initializers -Wmissing-prototypes -Wunreachable-code -Wno-implicit-atomic-properties -Wno-objc-interface-ivars -Wno-arc-repeated-use-of-weak -Wimplicit-retain-self -Wnon-virtual-dtor -Wno-overloaded-virtual -Wno-exit-time-destructors -Wduplicate-method-match -Wno-missing-braces -Wparentheses -Wswitch -Wunused-function -Wno-unused-label -Wno-unused-parameter -Wunused-variable -Wunused-value -Wempty-body -Wuninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion -Wconstant-conversion -Wint-conversion -Wbool-conversion -Wenum-conversion -Wno-float-conversion -Wnon-literal-null-conversion -Wobjc-literal-conversion -Wsign-compare -Wno-shorten-64-to-32 -Wnewline-eof -Wno-selector -Wno-strict-selector-match -Wundeclared-selector -Wdeprecated-implementations -Wno-c++11-extensions -DNDEBUG -DENABLE_3D_TRANSFORMS -DENABLE_APPLE_PAY -DENABLE_APPLE_PAY_SESSION_V3 -DENABLE_APPLE_PAY_SESSION_V4 -DENABLE_APPLICATION_MANIFEST -DENABLE_ATTACHMENT_ELEMENT -DENABLE_AVF_CAPTIONS -DENABLE_CACHE_PARTITIONING -DENABLE_CHANNEL_MESSAGING -DENABLE_CONTENT_FILTERING -DENABLE_CSS_BOX_DECORATION_BREAK -DENABLE_CSS_COMPOSITING -DENABLE_CSS_CONIC_GRADIENTS -DENABLE_CSS_PAINTING_API -DENABLE_CSS_SCROLL_SNAP -DENABLE_CSS_SELECTORS_LEVEL4 -DENABLE_CSS_TRAILING_WORD -DENABLE_CSS_TYPED_OM -DENABLE_CURSOR_VISIBILITY -DENABLE_DARK_MODE_CSS -DENABLE_DATACUE_VALUE -DENABLE_DATALIST_ELEMENT -DENABLE_DATA_INTERACTION -DENABLE_DEVICE_ORIENTATION -DENABLE_DRAG_SUPPORT -DENABLE_ENCRYPTED_MEDIA -DENABLE_EXPERIMENTAL_FEATURES -DENABLE_FILTERS_LEVEL_2 -DENABLE_FTL_JIT -DENABLE_FULLSCREEN_API -DENABLE_PICTURE_IN_PICTURE_API -DENABLE_GAMEPAD -DENABLE_GEOLOCATION -DENABLE_GPU_PROCESS -DENABLE_INDEXED_DATABASE -DENABLE_INDEXED_DATABASE_IN_WORKERS -DENABLE_INPUT_TYPE_COLOR -DENABLE_INPUT_TYPE_DATE -DENABLE_INPUT_TYPE_DATETIMELOCAL -DENABLE_INPUT_TYPE_MONTH -DENABLE_INPUT_TYPE_TIME -DENABLE_INPUT_TYPE_WEEK -DENABLE_INSPECTOR_ALTERNATE_DISPATCHERS -DENABLE_INSPECTOR_TELEMETRY -DENABLE_INTERSECTION_OBSERVER -DENABLE_INTL -DENABLE_LAYOUT_FORMATTING_CONTEXT -DENABLE_LEGACY_CSS_VENDOR_PREFIXES -DENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER -DENABLE_LEGACY_ENCRYPTED_MEDIA -DENABLE_LETTERPRESS -DENABLE_MATHML -DENABLE_MEDIA_CAPTURE -DENABLE_MEDIA_CONTROLS_SCRIPT -DENABLE_MEDIA_STREAM -DENABLE_MEMORY_SAMPLER -DENABLE_METER_ELEMENT -DENABLE_NAVIGATOR_STANDALONE -DENABLE_NETWORK_CACHE_SPECULATIVE_REVALIDATION -DENABLE_NETWORK_CACHE_STALE_WHILE_REVALIDATE -DENABLE_OVERFLOW_SCROLLING_TOUCH -DENABLE_PAYMENT_REQUEST -DENABLE_POINTER_EVENTS -DENABLE_PUBLIC_SUFFIX_LIST -DENABLE_REMOTE_INSPECTOR -DENABLE_RESIZE_OBSERVER -DENABLE_RESOURCE_LOAD_STATISTICS -DENABLE_RESOURCE_USAGE -DENABLE_SANDBOX_EXTENSIONS -DENABLE_SERVER_PRECONNECT -DENABLE_SERVICE_WORKER -DENABLE_SHAREABLE_RESOURCE -DENABLE_SPEECH_SYNTHESIS -DENABLE_STREAMS_API -DENABLE_SVG_FONTS -DENABLE_TELEPHONE_NUMBER_DETECTION -DENABLE_TEXT_AUTOSIZING -DENABLE_USERSELECT_ALL -DENABLE_USER_MESSAGE_HANDLERS -DENABLE_VARIATION_FONTS -DENABLE_VIDEO -DENABLE_VIDEO_PRESENTATION_MODE -DENABLE_VIDEO_TRACK -DENABLE_WEBDRIVER_KEYBOARD_INTERACTIONS -DENABLE_WEBDRIVER_TOUCH_INTERACTIONS -DENABLE_WEBGL -DENABLE_WEBGL2 -DENABLE_WEBGPU -DENABLE_WEB_AUDIO -DENABLE_WEB_AUTHN -DENABLE_WEB_CRYPTO -DENABLE_WEB_RTC -DENABLE_WIRELESS_PLAYBACK_TARGET -DENABLE_XSLT -DHAVE_CORE_PREDICTION -DU_HIDE_DEPRECATED_API -DU_DISABLE_RENAMING=1 -DU_SHOW_CPLUSPLUS_API=0 -DFRAMEWORK_NAME=WebKit -DOBJC_OLD_DISPATCH_PROTOTYPES=0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.2.sdk -fstrict-aliasing -Wprotocol -Wdeprecated-declarations -Winvalid-offsetof -g -fvisibility=hidden -fvisibility-inlines-hidden -fno-threadsafe-statics -Wno-sign-conversion -Winfinite-recursion -Wmove -Wcomma -Wblock-capture-autoreleasing -Wstrict-prototypes -Wrange-loop-analysis -Wno-semicolon-before-method-body -iquote /Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/WebKit.build/Release-iphoneos/WebKit.build/WebKit-generated-files.hmap -I/Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/WebKit.build/Release-iphoneos/WebKit.build/WebKit-own-target-headers.hmap -I/Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/WebKit.build/Release-iphoneos/WebKit.build/WebKit-all-target-headers.hmap -iquote /Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/WebKit.build/Release-iphoneos/WebKit.build/WebKit-project-headers.hmap -I/Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/Release-iphoneos/include -I/Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/Release-iphoneos/usr/local/include -I/Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/Release-iphoneos/WebCore.framework/PrivateHeaders/ForwardingHeaders -I/Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/Release-iphoneos/DerivedSources/WebKit2 -I/Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/Release-iphoneos/usr/local/include/WebKitAdditions -I/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.2.sdk/usr/local/include/WebKitAdditions -I/Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/Release-iphoneos/usr/local/include/webrtc -I/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.2.sdk/usr/local/include/webrtc -I/Volumes/Data/worker/iOS-13-Build-EWS/build/Source/WebKit -I/Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/WebKit.build/Release-iphoneos/WebKit.build/DerivedSources-normal/arm64 -I/Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/WebKit.build/Release-iphoneos/WebKit.build/DerivedSources/arm64 -I/Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/WebKit.build/Release-iphoneos/WebKit.build/DerivedSources -Wall -Wextra -Wcast-qual -Wchar-subscripts -Wconditional-uninitialized -Wextra-tokens -Wformat-security -Winit-self -Wmissing-format-attribute -Wmissing-noreturn -Wno-unused-parameter -Wpacked -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings -Wexit-time-destructors -Wglobal-constructors -Wtautological-compare -Wimplicit-fallthrough -F/Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/Release-iphoneos -F/Volumes/Data/worker/iOS-13-Build-EWS/build/Source/WebKit/../../WebKitLibraries/WebKitPrivateFrameworkStubs/iOS/13 -iframework /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.2.sdk/System/Library/PrivateFrameworks -iframework /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.2.sdk/System/Library/Frameworks -iframework /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.2.sdk/System/Library/PrivateFrameworks -isystem /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.2.sdk/System/Library/Frameworks/System.framework/PrivateHeaders -include /Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/PrecompiledHeaders/WebKit2Prefix-gvqcbjjmpdxaschbrgxmqbsmhhof/WebKit2Prefix.h -MMD -MT dependencies -MF /Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/WebKit.build/Release-iphoneos/WebKit.build/Objects-normal/arm64/UnifiedSource36-mm.d --serialize-diagnostics /Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/WebKit.build/Release-iphoneos/WebKit.build/Objects-normal/arm64/UnifiedSource36-mm.dia -c /Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/Release-iphoneos/DerivedSources/WebKit2/unified-sources/UnifiedSource36-mm.mm -o /Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/WebKit.build/Release-iphoneos/WebKit.build/Objects-normal/arm64/UnifiedSource36-mm.o In file included from /Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/Release-iphoneos/DerivedSources/WebKit2/unified-sources/UnifiedSource36-mm.mm:1: In file included from /Volumes/Data/worker/iOS-13-Build-EWS/build/Source/WebKit/UIProcess/Cocoa/SOAuthorization/SOAuthorizationSession.mm:27: In file included from /Volumes/Data/worker/iOS-13-Build-EWS/build/Source/WebKit/UIProcess/Cocoa/SOAuthorization/SOAuthorizationSession.h:30: /Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/Release-iphoneos/usr/local/include/pal/spi/cocoa/AppSSOSPI.h:83:109: error: unknown type name 'SOAuthorizationHints'; did you mean 'SOAuthorization'? - (void)getAuthorizationHintsWithURL:(NSURL *)url responseCode:(NSInteger)responseCode completion:(void (^)(SOAuthorizationHints * _Nullable authorizationHints, NSError * _Nullable error))completion; ^~~~~~~~~~~~~~~~~~~~ SOAuthorization /Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/Release-iphoneos/usr/local/include/pal/spi/cocoa/AppSSOSPI.h:78:12: note: 'SOAuthorization' declared here @interface SOAuthorization : NSObject ^ In file included from /Volumes/Data/worker/iOS-13-Build-EWS/build/WebKitBuild/Release-iphoneos/DerivedSources/WebKit2/unified-sources/UnifiedSource36-mm.mm:1: /Volumes/Data/worker/iOS-13-Build-EWS/build/Source/WebKit/UIProcess/Cocoa/SOAuthorization/SOAuthorizationSession.mm:134:115: error: cannot initialize a parameter of type 'void (^ _Nonnull)(SOAuthorization * _Nullable, NSError * _Nullable)' with an rvalue of type 'WTF::BlockPtr<void (SOAuthorizationHints *, NSError *)>::BlockType' (aka 'void (^)(SOAuthorizationHints *, NSError *)')
Jiewen Tan
Comment 5 2020-01-31 22:16:59 PST
Jiewen Tan
Comment 6 2020-02-01 19:13:02 PST
Jiewen Tan
Comment 7 2020-02-01 22:26:28 PST
The API test failures don't seem to be related.
Brent Fulgham
Comment 8 2020-02-03 19:10:12 PST
Comment on attachment 389467 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=389467&action=review > Source/WebKit/UIProcess/Cocoa/SOAuthorization/SOAuthorizationSession.mm:172 > + // FIXME: <rdar://problem/48909336> Replace the below with AppSSO constants. It might be nice to resolve this one, soon!
Jiewen Tan
Comment 9 2020-02-03 20:58:58 PST
Comment on attachment 389467 [details] Patch Thanks Brent for r+ this patch.
WebKit Commit Bot
Comment 10 2020-02-03 21:29:56 PST
Comment on attachment 389467 [details] Patch Clearing flags on attachment: 389467 Committed r255660: <https://trac.webkit.org/changeset/255660>
WebKit Commit Bot
Comment 11 2020-02-03 21:29:58 PST
All reviewed patches have been landed. Closing bug.
Jiewen Tan
Comment 12 2020-02-03 21:31:56 PST
(In reply to Brent Fulgham from comment #8) > Comment on attachment 389467 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=389467&action=review > > > Source/WebKit/UIProcess/Cocoa/SOAuthorization/SOAuthorizationSession.mm:172 > > + // FIXME: <rdar://problem/48909336> Replace the below with AppSSO constants. > > It might be nice to resolve this one, soon! Sure thing.
Note You need to log in before you can comment on or make changes to this bug.