sandboxd禁止我的自定义后端在OS X Yosemite上运行

时间:2014-10-08 22:37:46

标签: macos perl sandbox osx-yosemite cups

我在Perl中制作了一个自定义CUPS后端。它在10.7-10.9中完美运行,但10.10(Yosemite)显然有一个新的沙箱功能,阻止我从“/ opt”的子目录中包含一个文件。

欢迎任何建议!

这是来自杯子error_log:

Can't locate Net/IPP/IPP.pm in @INC (you may need to install the Net::IPP::IPP module) (@INC contains: /opt/msipp [redacted] .) at /usr/libexec/cups/backend/msipp line 73.

这是来自系统日志:

sandboxd[286]: ([11381]) perl5.18(11381) deny file-read-metadata /opt/msipp/Net/IPP/IPP.pm

完整的系统日志条目:

perl5.18(11381) deny file-read-metadata /opt/msipp/Net/IPP/IPP.pm

Process:         perl5.18 [11381]
Path:            /usr/bin/perl5.18
Load Address:    0x10dd8b000
Identifier:      perl5.18
Version:         ??? (???)
Code Type:       x86_64 (Native)
Parent Process:  cupsd [10823]

Date/Time:       2014-10-09 00:15:41.756 +0200
OS Version:      Mac OS X 10.10 (14A379a)
Report Version:  8

Thread 0:
0   libsystem_kernel.dylib          0x00007fff8de28a6e stat$INODE64 + 10
1   libperl.dylib                   0x000000010de5241e
2   libperl.dylib                   0x000000010de519cc Perl_pp_require + 3076
3   libperl.dylib                   0x000000010de171ca Perl_runops_standard + 210
4   libperl.dylib                   0x000000010ddaf2cd Perl_call_sv + 938
5   libperl.dylib                   0x000000010ddabe46 Perl_call_list + 355
6   libperl.dylib                   0x000000010dda220f
7   libperl.dylib                   0x000000010dda1ef3 Perl_newATTRSUB_flags + 3620
8   libperl.dylib                   0x000000010dd9c9bf Perl_utilize + 747
9   libperl.dylib                   0x000000010ddd78ae Perl_yyparse + 2514
10  libperl.dylib                   0x000000010ddae0c6 perl_parse + 7886
11  perl5.18                        0x000000010dd8bccb main + 203
12  libdyld.dylib                   0x00007fff8873d5c9 start + 1

Binary Images:
       0x10dd8b000 -        0x10dd8bfff  perl5.18 (103) <dd623cf6-275a-3bc8-bde0-09566702484d> /usr/bin/perl5.18
       0x10dd93000 -        0x10deb7ff7  libperl.dylib (103) <8fc40e39-a06c-3454-8ada-f82bbfd179f2> /System/Library/Perl/5.18/darwin-thread-multi-2level/CORE/libperl.dylib
    0x7fff8873a000 -     0x7fff8873dff7  libdyld.dylib (353.2.1) <19faf435-c165-3374-9def-d7bba7d61db6> /usr/lib/system/libdyld.dylib
    0x7fff8de11000 -     0x7fff8de2efff  libsystem_kernel.dylib (2782.1.97) <93e0e0a9-75b6-3904-bb4e-4bc7c05f4b6b> /usr/lib/system/libsystem_kernel.dylib 

2 个答案:

答案 0 :(得分:1)

尝试更新至Yosemite GM 3.0。它解决了我的问题。

答案 1 :(得分:0)

我通过将依赖项从/ opt / msipp移动到/ usr / share / cups / msipp来解决它