Netflix DRM error N8152 fedora 18

Asked by AnalyticaL

Hi!

I am trying to watch netflix on my fedora 18 box.
I got the bunny video http://www.iis.net/media/experiencesmoothstreaming working after a lot of compiling.

Netflix was failing with all kinds of errors.

Discovered the XATTR requirement and install libattr-devel, reconfigured and recompiled wine-1.7.3 with all the patches.
Also enabled the user_xattr attribute on my ext4 filesystem. (disabled tmpfs to be sure as wine seems to put files in /tmp)

Removed my ~/.wine-pipelight and manually installed corefonts and silverlight.

Now netflix player loads up to 98% and then failes with drm error N8152.

Did i miss anything? or is it currently not working?

(used patches from http://bazaar.launchpad.net/~pipelight/netflix-desktop/wine-compholio/files/head:/patches/ downloaded 5-okt-2013)

to compile wine i used: tools/make_requests, autoreconf, ./configure, make depend && make, sudo make install

Question information

Language:
English Edit question
Status:
Solved
For:
Pipelight Edit question
Assignee:
No assignee Edit question
Solved by:
Michael Müller
Solved:
Last query:
Last reply:
Revision history for this message
Sebastian Lackner (slackner) said :
#1

Hiho!

The N8152 error can be caused by two things:

* you should check that you have a user agent switcher installed that modifies the JS user agent string. I would also recommend to set it to Firefox 15, which is known to work for most pages, see: https://answers.launchpad.net/pipelight/+faq/2351.
To verify if the user agent switcher works correctly you can use our diagnostic page: http://fds-team.de/pipelight/

* it can be caused by missing XATTR support.

Concerning the second problem: Unfortunately wine uses some kind of weird auto-magic to detect if XATTR is available, and fails in some cases. I have experienced that although I didn't do anything different, in some cases XATTR wasn't detected by configure and not compiled in.

You can check if this is the issue with the following command (execute in the wine build directory):
cat config.log | grep XATTR
If this returns an empty output, then XATTR was not detected. You can try the following trick to force it - just define the environment variable CFLAGS before running configure.

CFLAGS=-DHAVE_ATTR_XATTR_H=1 ./configure

and then compile it again. This helped in my case.

( You can also join our IRC channel #pipelight on IRC freenode if you have additional questions, most of the pipelight devs are on there and in some cases a chat is easier to figure out problems than an issue tracker ;-) )

Sebastian

Revision history for this message
AnalyticaL (kamminga-m) said :
#2

Hi!

My user agent string : Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1
cat config.log | grep XATTR provides lots of output.

I can also see attributes being set on the Playready directory
# file: home/menne/.wine-pipelight/drive_c/users/Public/Application Data/Microsoft/PlayReady/
user.wine.acl="0,3,10000000,S-1-5-18;0,3,10000000,S-1-5-32-544;0,3,10000000,S-1-5-32-545;0,3,10000000,S-1-5-11"

So i am guessing wine is applying the ACL's...

Revision history for this message
Sebastian Lackner (slackner) said :
#3

Hi,

I have just rechecked the previous answered questions and bug reports, and noticed, that noone else had exactly this error code yet (with similar error codes it was always caused by one of the reasons above). Moreover I know from some other people, that they managed to run it on Fedora, so I assume that there has to be something special with exactly your setup.

* Do you use the pipelight-sandbox (default is disabled, but can be enabled via config file)? It is still in beta stage, and doesn't work well with DRM protected content. If this is the case please disable it again.

* Are you using SELinux or something similar? It might be possible that some of the DRM functions don't work properly if this is the case (Silverlight for example spawns separate processes for DRM stuff, which is denied for browser plugins in the default configuration.)

* Are you using a very old kernel? It could be possible that a specific kernel feature like for example the RTMGRP_IPV4_IFADDR flag is not yet available.

* Which SIlverlight version do you use and how did you install everything? I would recommend to use 5.1 - the easiest way is to get it is to use the install-dependency script provided in the misc/ folder of the pipelight repo. A manual installation would also work, of course. Additionally it might be necessary to change the config paths. The mpg2splt-dependency is not needed for netflix, but for some other streaming services.

If none of these ideas helps, please include the full terminal output (close your browsers first, then start your browser from a terminal, and redirect stdout&stderr):

chromium-browser &> ~/pipelight.log

Sebastian

Revision history for this message
AnalyticaL (kamminga-m) said :
#4

Hi! thx for the quick responses.

I dont use pipelight-sandbox, i use the default config with a changed wine path... (mine is in /usr/local)

SELinux status: disabled

Kernel version: 3.10.12-100.fc18.i686.PAE, did not find any references to RTMGRP_IPV4_IFADDR in config.

Removed ~/.wine-pipelight and reinstalled with install-dependency script

Still the same error.

Here is the log:

[7164:7164:1009/192642:ERROR:password_store_factory.cc(110)] Could not initialize login database.
[7164:7164:1009/192642:ERROR:profile_sync_service.cc(1202)] History Delete Directives datatype error was encountered: Delete directives not supported with encryption.
[7164:7164:1009/192642:ERROR:non_frontend_data_type_controller.cc(198)] Passwords datatype error was encountered: Failed loading
[7164:7164:1009/192642:ERROR:model_association_manager.cc(315)] Failed to associate models for Passwords
[PIPELIGHT:LIN] attached to process.
[PIPELIGHT:LIN] trying to load config file from '/home/menne/.config/pipelight'.
[PIPELIGHT:LIN] basicplugin.c:324:checkGraphicDriver(): GPU driver check script not found - treating test as failure.
[PIPELIGHT:LIN] using wine prefix directory /home/menne/.wine-pipelight/.
[PIPELIGHT:LIN] checking Silverlight installation - this might take some time.
wine: cannot find L"C:\\windows\\system32\\winemenubuilder.exe"
err:wineboot:ProcessRunKeys Error running cmd L"C:\\windows\\system32\\winemenubuilder.exe -a -r" (2)
[PIPELIGHT:WIN] windowless mode is off.
[PIPELIGHT:WIN] embedded mode is on.
[PIPELIGHT:WIN] usermode Timer is off.
fixme:advapi:RegisterTraceGuidsW (0x2b1f87, 0x350118, {aa087e0e-0b35-4e28-8f3a-440c3f51eef1}, 1, 0x63f648, (null), (null), 0x350118,): stub
[PIPELIGHT:WIN] init successful!
fixme:advapi:UnregisterTraceGuids 0: stub
[PIPELIGHT:LIN] attached to process.
[PIPELIGHT:LIN] trying to load config file from '/home/menne/.config/pipelight'.
[PIPELIGHT:LIN] basicplugin.c:324:checkGraphicDriver(): GPU driver check script not found - treating test as failure.
[PIPELIGHT:LIN] using wine prefix directory /home/menne/.wine-pipelight/.
[PIPELIGHT:LIN] checking Silverlight installation - this might take some time.
wine: cannot find L"C:\\windows\\system32\\winemenubuilder.exe"
err:wineboot:ProcessRunKeys Error running cmd L"C:\\windows\\system32\\winemenubuilder.exe -a -r" (2)
[PIPELIGHT:WIN] windowless mode is off.
[PIPELIGHT:WIN] embedded mode is on.
[PIPELIGHT:WIN] usermode Timer is off.
fixme:advapi:RegisterTraceGuidsW (0x2b1f87, 0x350118, {aa087e0e-0b35-4e28-8f3a-440c3f51eef1}, 1, 0x63f648, (null), (null), 0x350118,): stub
[PIPELIGHT:WIN] init successful!
fixme:advapi:UnregisterTraceGuids 0: stub
[PIPELIGHT:LIN] attached to process.
[PIPELIGHT:LIN] trying to load config file from '/home/menne/.config/pipelight'.
[PIPELIGHT:LIN] basicplugin.c:324:checkGraphicDriver(): GPU driver check script not found - treating test as failure.
[PIPELIGHT:LIN] using wine prefix directory /home/menne/.wine-pipelight/.
[PIPELIGHT:LIN] checking Silverlight installation - this might take some time.
[PIPELIGHT:WIN] windowless mode is off.
[PIPELIGHT:WIN] embedded mode is on.
[PIPELIGHT:WIN] usermode Timer is off.
fixme:advapi:RegisterTraceGuidsW (0x2c1f87, 0x360118, {aa087e0e-0b35-4e28-8f3a-440c3f51eef1}, 1, 0x63f648, (null), (null), 0x360118,): stub
[PIPELIGHT:WIN] init successful!
[PIPELIGHT:LIN] using timer based event handling.
fixme:advapi:CreateProcessAsUserW 0xfc L"C:\\Program Files\\Silverlight\\5.1.20513.0\\agcp.exe" L"agcp.exe 35 244" (nil) (nil) 1 0x00004000 (nil) (null) 0x63f1b8 0x63f1a8 - semi- stub
fixme:heap:HeapSetInformation (nil) 1 (nil) 0
fixme:file:K32GetMappedFileNameW (0xffffffff, 0x4015f4, 0x50e1f4, 520): stub
fixme:module:GetModuleHandleExW should pin refcount for 0x250000
fixme:urlmon:Uri_GetPropertyBSTR (0x146828)->(6 0x63dfb4 4)
fixme:process:GetNumaHighestNodeNumber (0x63ea50): stub
fixme:thread:SetThreadStackGuarantee (0x63ea40): stub
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e5e0, (nil) 0x63e5d8
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e5e0, (nil) 0x63e5d8
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e650, (nil) 0x63e648
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e5d4, (nil) 0x63e5cc
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e5d4, (nil) 0x63e5cc
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e650, (nil) 0x63e648
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e830, (nil) 0x63e828
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e830, (nil) 0x63e828
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e858, (nil) 0x63e850
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e858, (nil) 0x63e850
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e4f0, (nil) 0x63e4e8
fixme:process:FlushProcessWriteBuffers : stub
fixme:thread:GetThreadPreferredUILanguages 48, 0x63d438, (nil) 0x63d430
fixme:thread:GetThreadPreferredUILanguages 48, 0x63d438, (nil) 0x63d430
fixme:thread:GetThreadPreferredUILanguages 48, 0x63c93c, (nil) 0x63c934
fixme:thread:GetThreadPreferredUILanguages 48, 0x63d938, (nil) 0x63d930
fixme:thread:GetThreadPreferredUILanguages 48, 0x63d938, (nil) 0x63d930
fixme:thread:GetThreadPreferredUILanguages 48, 0x63d938, (nil) 0x63d930
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e420, (nil) 0x63e418
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e420, (nil) 0x63e418
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e940, (nil) 0x63e938
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e940, (nil) 0x63e938
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e9b0, (nil) 0x63e9a8
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e934, (nil) 0x63e92c
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e934, (nil) 0x63e92c
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e970, (nil) 0x63e968
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e85c, (nil) 0x63e854
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e7f0, (nil) 0x63e7e8
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e7c8, (nil) 0x63e7c0
fixme:thread:GetThreadPreferredUILanguages 48, 0x63eca0, (nil) 0x63ec98
fixme:thread:GetThreadPreferredUILanguages 48, 0x63ec60, (nil) 0x63ec58
0
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e5e8, (nil) 0x63e5e0
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e5e8, (nil) 0x63e5e0
fixme:module:GetModuleHandleExW should pin refcount for 0x250000
fixme:advapi:RegisterTraceGuidsW (0x10015fbb, 0x1008c460, {00000000-7ac4-430a-94e4-b0dfd254650f}, 1, 0x8a2e038, (null), (null), 0x1008c468,): stub
fixme:ntdll:NtLockFile I/O completion on lock not implemented yet
fixme:mountmgr:harddisk_ioctl returning zero-filled buffer for IOCTL_VOLUME_GET_VOLUME_DISK_EXTENTS
fixme:advapi:GetCurrentHwProfileW (0x8c2e670)
fixme:mountmgr:harddisk_ioctl returning zero-filled buffer for IOCTL_VOLUME_GET_VOLUME_DISK_EXTENTS
fixme:advapi:GetCurrentHwProfileW (0x8c2e5e0)
fixme:thread:GetThreadPreferredUILanguages 48, 0x63e7cc, (nil) 0x63e7c4
^Cfixme:console:CONSOLE_DefaultHandler Terminating process 23 on event 0
fixme:advapi:UnregisterTraceGuids 0: stub

Revision history for this message
Sebastian Lackner (slackner) said :
#5

Hi,

Sorry for the late reply, but I was running out of ideas myself. Did you manage to get rid of this error yourself, or does it still persist?

I don't think that we've changed that much, but you could try to start again with the latest versions of pipelight and wine-compholio. We also have some a bit more detailed explanations how to compile everything.

(Please uninstall all previous versions of pipelight first, and verify that it doesn't appear anymore in the browser plugin list and in /usr/lib/mozilla/plugins! Otherwise you'll end up with multiple versions.)

Wine 1.7.4: http://fds-team.de/cms/pipelight-compile-wine.html
Pipelight 0.2.0: http://fds-team.de/cms/pipelight-installation.html#section_1_5

Please note that it shouldn't be necessary to modify pipelight config files manually anymore - just take a look at the command line arguments of ./configure:

Usage: ./configure [--prefix=PREFIX] [--wine-path=PATH]
                   [--moz-plugin-path=PATH] [--gcc-runtime-dlls=PATH]

The default paths are (you should see the paths after running configure):
 prefix = '/usr/local'
 winepath = '/opt/wine-compholio/bin/wine'
 mozpluginpath = '/usr/lib/mozilla/plugins'
 gccruntimedlls = '/usr/lib/gcc/i686-w64-mingw32/4.6/'

Moreover: Which file system do you use exactly? For most people this error disappeared after wiping the wine prefix ~/.wine-pipelight, when it still persists after doing this it could probably be related to some file system issues.

Sebastian

Revision history for this message
AnalyticaL (kamminga-m) said :
#6

I recompiled the latest as soon as it arrived.
Still the same error, just now I remembered that I mount my filesystem with the noatime option, could that be the problem? I'll also delete my localized config.
I'll post back with results once I tested.

Revision history for this message
Best Michael Müller (mqchael) said :
#7

Hi Analytical,

I just created some packages for Fedora and was able to play a DRM protected video with them. You should try to use them since they are known to work. Simply remove all files you may still have from older tries (mostly /usr/{local,}/share/pipelight/* and /usr/lib/mozilla/plugins/libpipelight*) and follow these instructions:

-------------------------

# Install Microsoft core fonts
sudo yum install cabextract
sudo rpm -i http://sourceforge.net/projects/mscorefonts2/files/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm

# Add repository
sudo wget http://download.opensuse.org/repositories/home:/DarkPlayer:/Pipelight/Fedora_19/home:DarkPlayer:Pipelight.repo -O /etc/yum.repos.d/pipelight.repo

# Install Pipelight and enable Silverlight
sudo yum install pipelight
sudo pipelight-plugins --enable silverlight

-------------------------

Just replace Fedora_19 with Fedora_18 in the repository url to get the Fedora 18 packages. After installing a user agent switcher I was able to play DRM protected videos, although there were some SELinux warnings because of mmap. I hope this works for you. Nevertheless I have to warn you that this was literally the second time I ever booted Fedora and don't have much experience in RPM based distributions so I can't guarantee that there might not be any problem with the packages (missing dependencies or similar). Any feedback is welcome.

Michael

Revision history for this message
AnalyticaL (kamminga-m) said :
#8

Hi, fixed it, turned out to be the untangle intrusion detection.
Turning that off fixed the error.