nspluginwrapper (was Re: linux-f10-flashplugin11 not works for
9-stable (Linuxulator?))
Andrey Chernov
ache at FreeBSD.org
Thu Feb 16 20:31:11 UTC 2012
On Thu, Feb 16, 2012 at 11:47:05AM +0200, Volodymyr Kostyrko wrote:
> Andrey Chernov wrote:
> > Having 9-stable and ports from Feb 14, all builded from sources, I get
> > this commonly looking error attempting to view flash in FF 10.0.1:
> >
> > *** NSPlugin Wrapper *** ERROR: failed to initialize plugin-side RPC
> > client connection
> > NOTE: child process received `Goodbye', closing down
> >
> > Looking into ktrace I found error reason:
> >
> > 82037 plugin-container CALL connect(0x16,0x2c04f9d4,0x42)
> > 82037 plugin-container STRU struct sockaddr { AF_LOCAL, invalid }
> > 82037 plugin-container NAMI
> > "/tmp/_org_wrapper_NSPlugins_libflashplayer.so_82037-2_1804289383"
> > 82037 plugin-container RET connect -1 errno 2 No such file or directory
> >
> > (repeated several times).
> >
> > This "invalid" in sockaddr looks familiar as for some time ago added
> > sockaddr length checks our kernel, but as bz@ says this should be
> > already fixed.
> >
> > Does anybody runs flash successfly on 9-stable? If yes, where else the
> > problem can be?
>
> Am running flash successfully on 9-stable (daily rebuild). Works for me
> under chromium/seamonkey.
>
> Just filed a patch for the latest flash version... Works for me also.
Do you have recently-builded nspluginwrapper from sources? It seems the
bug is there, since even that does not work:
# nspluginplayer --verbose type=application/x-shockwave-flash
src=some.swf
*** NSPlugin Player *** swf application/x-shockwave-flash Shockwave Flash
*** NSPlugin Player *** spl application/futuresplash FutureSplash Player
*** NSPlugin Wrapper *** ERROR: failed to initialize plugin-side RPC client connection
*** NSPlugin Player *** ERROR: could not execute: NPERR_MODULE_LOAD_FAILED_ERROR
And I see very suspicious socket_addr_len size related code (which recent
SA-fixes address) in rpc.c there:
connection->socket_addr_len = _rpc_socket_path(&connection->socket_path,
ident);
memcpy(&connection->socket_addr.sun_path[0], connection->socket_path,
connection->socket_addr_len);
connection->socket_addr_len += offsetof(struct sockaddr_un, sun_path);
/* though POSIX says size of the actual sockaddr structure */
#ifdef HAVE_SOCKADDR_UN_SUN_LEN
connection->socket_addr.sun_len = connection->socket_addr_len;
#endif
--
http://ache.vniz.net/
More information about the freebsd-ports
mailing list