2016-04-29 10 views
6

Podpisanie pliku .app, który otacza skrypt powłoki przy użyciu systemu OS X 10.11, nie daje się zweryfikować w wersji 10.10 lub niższej. Mogę się zalogować 10.10 i 10.9 i weryfikuje 10.9, 10.10 i 10.11.Czy podpisywanie aplikacji do pakowania skryptów powłoki jest uszkodzone w systemie OS X 10.11?

Położyłem dwie przykładowe aplikacje i skrypt na , aby to pokazać. Dwa pliki HelloWorld.app różnią się tylko zawartością binarną w Contents/MacOS/HelloWorld. Jednym z nich jest skrypt powłoki, a drugi jest skompilowany jako obiekt-c.

Podpisanie prace i weryfikuje na 10.11 dla obu wersji:

wersja

Shell Script:

codesign -s "${signing_identity}" -v shell-script/HelloWorld.app 
signed bundle with generic [liamsharp.helloworld] 

codesign -vv shell-script/HelloWorld.app 
shell-script/HelloWorld.app: valid on disk 
shell-script/HelloWorld.app: satisfies its Designated Requirement 

Objective-C wersja:

codesign -s "${signing_identity}" -v objective-c/HelloWorld.app 
signed bundle with Mach-O thin (x86_64) [liamsharp.helloworld] 

codesign -vv objective-c/HelloWorld.app 
objective-c/HelloWorld.app: valid on disk 
objective-c/HelloWorld.app: satisfies its Designated Requirement 

ale wersja skrypt nie sprawdza się na 10.10 i 10.9:

codesign -vv shell-script/HelloWorld.app 
shell-script/HelloWorld.app: invalid signature (code or signature have been modified) 

Mam dostęp do innego komputera z procesorem 10.11 i ten sam problem występuje, gdy jest on podpisany .app. Mam dostęp do maszyny 10.9, której również nie można zweryfikować.

Występuje różnica w katalogu _CodeSignature utworzonym dla skryptu powłoki .app.

Oto jak to kiedy podpisana jest na 10.10:

CodeDirectory 
CodeRequirements 
CodeResources 
CodeSignature 

Ale kiedy podpisana w dniu 10.11 mamy jakieś dodatkowe pliki:

CodeDirectory 
CodeRequirements 
CodeRequirements-1 
CodeResources 
CodeSignature 
CodeTopDirectory 

Czy istnieje magia opcja tęsknię za codesign do pozwolić na to? Czy jest jakiś błąd?

+0

To wygląda na błąd z 'codesign' na OS X 10.11. Błąd dotyczy także pakietów '.definition' firmy Automator. Zgłaszałem błąd z Apple jako rdr: // 26297046. –

+1

Wypełniłem również 26363618. – CodeBuddy

+0

Dziękuję. Doceniam twoją prośbę o to pytanie i tworzenie scenariusza testowego. To było uspokajające, aby znaleźć innych, którzy natknęli się na ten błąd OS X. –

Odpowiedz

1

miałem również odpowiedzi od firmy Apple teraz inny numer do Graham choć:

Engineering has determined that your bug report is a duplicate of another issue and will be closed. 

Duplicate of 25457707 (Open) 

zaksięguje aktualizację jeśli/kiedy słyszę więcej. Nie podano dalszych szczegółów dotyczących eta dla poprawki, a nawet jeśli zostanie ona naprawiona.

Aktualizacja: Zostało to naprawione w wersji 10.11.5 - Nie otrzymałem żadnego wskazania od Apple, ale teraz działa po aktualizacji.

Powiązane problemy