iTunes входящие соединения
После покупки SSD-диска и переустановки системы, я заметил, что при первом после перезагрузки запуске iTunes всегда появляется окно с запросом на разрешение этой программе принимать входящие соединения.
![iTunes Incoming Connection](http://mactrick.com/wp-content/uploads/2011/04/itunes_incomin_connection.jpg)
Поразбиравшись в проблеме, я выяснил, что это происходит от того, что в бандл программы были внесены изменения. Из-за этого она не проходит проверку электронной подписи.
Проверить, подписана ли программа или нет можно такой командой в терминале:
codesign -vvv /Applications/iTunes.app/
При удачной проверке вывод будет таким:
/Applications/iTunes.app/: valid on disk
/Applications/iTunes.app/: satisfies its Designated Requirement
При неудачной примерно таким (могут отличаться имена файлов):
/Applications/iTunes.app/: a sealed resource is missing or invalid
/Applications/iTunes.app/Contents/Resources/English.lproj/AutofillSettings.nib/objects.xib: resource added
/Applications/iTunes.app/Contents/Resources/English.lproj/iTunesDJSettings.nib/objects.xib: resource added
/Applications/iTunes.app/Contents/Resources/English.lproj/MobilePhonePrefs.nib/objects.xib: resource added
/Applications/iTunes.app/Contents/Resources/English.lproj/MobilePhoneSetup.nib/objects.xib: resource added
/Applications/iTunes.app/Contents/Resources/English.lproj/UniversalAccess.nib/objects.xib: resource added
Как видно, в бандл добавились лишние файлы. Подозреваю, что изменение содержимого бандла произошло после какого-то из обновлений или после установки каких-то программ для айфона (сам-то я уж точно ничего не менял).
Для того, чтобы избавиться от надоедливого окошка можно пойти двумя путями. Первый — скачать с сайта Apple установочный файл и переустановить iTunes.
Второй сложнее. Можно удалить лишние файлы. Я написал простенький однострочный шелл-скрипт, который удаляет лишние файлы.
codesign -vvv /Applications/iTunes.app/ 2>/dev/null| awk ‘{print $1}’ | tr -d ‘:’ | xargs sudo rm
Для его работы понадобится ввести пароль. И обязательно сделайте резервную копию iTunes. Можно просто скопировать его из папки Applications.
Рапрос на разрешение соединений пропал после применения обоих способов.