[Bug 192014] getaddrinfo(3) broken in jail on loopback
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Thu Jun 25 10:30:36 UTC 2015
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=192014
Francisco de Borja Lopez Rio <borja at codigo23.net> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |borja at codigo23.net
--- Comment #1 from Francisco de Borja Lopez Rio <borja at codigo23.net> ---
I've hit this bug here too, as it causes phantomjs (ports/lang/phantomjs) to
not be able to resolve host names.
I've tried to run the following snippet on phantomjs:
var page = require('webpage').create();
page.open('http://freebsd.org', function(status) {
console.log("Status: " + status);
if(status === "success") {
page.render('freebsd.png');
}
phantom.exit();
});
Running it in debug mode in phantomjs:
2015-06-25T12:22:36 [DEBUG] CookieJar - Created but will not store cookies (use
option '--cookies-file=<filename>' to enable persisten cookie storage)
2015-06-25T12:22:36 [DEBUG] Phantom - execute: Configuration
2015-06-25T12:22:36 [DEBUG] 0 objectName : ""
2015-06-25T12:22:36 [DEBUG] 1 cookiesFile : ""
2015-06-25T12:22:36 [DEBUG] 2 diskCacheEnabled : "false"
2015-06-25T12:22:36 [DEBUG] 3 maxDiskCacheSize : "-1"
2015-06-25T12:22:36 [DEBUG] 4 ignoreSslErrors : "false"
2015-06-25T12:22:36 [DEBUG] 5 localToRemoteUrlAccessEnabled : "false"
2015-06-25T12:22:36 [DEBUG] 6 outputEncoding : "UTF-8"
2015-06-25T12:22:36 [DEBUG] 7 proxyType : "http"
2015-06-25T12:22:36 [DEBUG] 8 proxy : ":1080"
2015-06-25T12:22:36 [DEBUG] 9 proxyAuth : ":"
2015-06-25T12:22:36 [DEBUG] 10 scriptEncoding : "UTF-8"
2015-06-25T12:22:36 [DEBUG] 11 webSecurityEnabled : "true"
2015-06-25T12:22:36 [DEBUG] 12 offlineStoragePath : ""
2015-06-25T12:22:36 [DEBUG] 13 offlineStorageDefaultQuota : "-1"
2015-06-25T12:22:36 [DEBUG] 14 printDebugMessages : "true"
2015-06-25T12:22:36 [DEBUG] 15 javascriptCanOpenWindows : "true"
2015-06-25T12:22:36 [DEBUG] 16 javascriptCanCloseWindows : "true"
2015-06-25T12:22:36 [DEBUG] 17 sslProtocol : "tlsv1"
2015-06-25T12:22:36 [DEBUG] 18 sslCertificatesPath : ""
2015-06-25T12:22:36 [DEBUG] 19 webdriver : ":"
2015-06-25T12:22:36 [DEBUG] 20 webdriverLogFile : ""
2015-06-25T12:22:36 [DEBUG] 21 webdriverLogLevel : "INFO"
2015-06-25T12:22:36 [DEBUG] 22 webdriverSeleniumGridHub : ""
2015-06-25T12:22:36 [DEBUG] Phantom - execute: Script & Arguments
2015-06-25T12:22:36 [DEBUG] script: "example.js"
2015-06-25T12:22:36 [DEBUG] Phantom - execute: Starting normal mode
2015-06-25T12:22:36 [DEBUG] WebPage - setupFrame ""
2015-06-25T12:22:36 [DEBUG] FileSystem - _open: ":/modules/fs.js" QMap(("mode",
QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open: ":/modules/system.js"
QMap(("mode", QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open: ":/modules/_coffee-script.js"
QMap(("mode", QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open:
":/modules/../coffee-script/package.json" QMap(("mode", QVariant(QString, "r")
) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open:
":/modules/../coffee-script/./lib/coffee-script/coffee-script.js" QMap(("mode",
QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open:
":/modules/../coffee-script/./lib/coffee-script/./lexer.js" QMap(("mode",
QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open:
":/modules/../coffee-script/./lib/coffee-script/././rewriter.js" QMap(("mode",
QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open:
":/modules/../coffee-script/./lib/coffee-script/././helpers.js" QMap(("mode",
QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open:
":/modules/../coffee-script/./lib/coffee-script/./parser.js" QMap(("mode",
QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open:
":/modules/../coffee-script/./lib/coffee-script/./helpers.js" QMap(("mode",
QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open:
":/modules/../coffee-script/./lib/coffee-script/./nodes.js" QMap(("mode",
QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open:
":/modules/../coffee-script/./lib/coffee-script/././scope.js" QMap(("mode",
QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open:
":/modules/../coffee-script/./lib/coffee-script/./././helpers.js" QMap(("mode",
QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open:
":/modules/../coffee-script/./lib/coffee-script/././lexer.js" QMap(("mode",
QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open:
":/modules/../coffee-script/./lib/coffee-script/./././rewriter.js"
QMap(("mode", QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open: ":/modules/webpage.js"
QMap(("mode", QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] WebPage - updateLoadingProgress: 10
2015-06-25T12:22:36 [DEBUG] Network - Resource request error: 3 ( "Host
codigo23.net not found" ) URL: "http://freebsd.org/"
2015-06-25T12:22:36 [DEBUG] WebPage - updateLoadingProgress: 100
Status: fail
2015-06-25T12:22:36 [DEBUG] WebPage - setupFrame ""
2015-06-25T12:22:36 [DEBUG] FileSystem - _open: ":/modules/fs.js" QMap(("mode",
QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open: ":/modules/system.js"
QMap(("mode", QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open: ":/modules/_coffee-script.js"
QMap(("mode", QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open: ":/modules/webpage.js"
QMap(("mode", QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] WebPage - updateLoadingProgress: 10
2015-06-25T12:22:36 [DEBUG] WebPage - setupFrame ""
2015-06-25T12:22:36 [DEBUG] FileSystem - _open: ":/modules/fs.js" QMap(("mode",
QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open: ":/modules/system.js"
QMap(("mode", QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open: ":/modules/_coffee-script.js"
QMap(("mode", QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] FileSystem - _open: ":/modules/webpage.js"
QMap(("mode", QVariant(QString, "r") ) )
2015-06-25T12:22:36 [DEBUG] WebPage - updateLoadingProgress: 100
2015-06-25T12:22:36 [DEBUG] WebPage - updateLoadingProgress: 10
2015-06-25T12:22:36 [DEBUG] WebPage - updateLoadingProgress: 100
2015-06-25T12:22:36 [DEBUG] WebPage - setupFrame ""
2015-06-25T12:22:36 [DEBUG] WebPage - setupFrame ""
After compiled phantomjs with debug symbols and ran it in a gdb session, I
traced the error back to this call to getaddrinfo():
https://github.com/ariya/phantomjs/blob/1.9/src/qt/src/network/kernel/qhostinfo_unix.cpp#L213
which fails in a similar way to the sample code provided by Oleg.
This server is running:
10.1-STABLE FreeBSD 10.1-STABLE #4 r280361: Mon Mar 23 16:31:23 CET 2015
built from sources (GENERIC kernel) and the jail.conf file is:
#
# /etc/jails.conf
#
# Common configuration options
path = "/jails/${name}";
interface = "lo0";
allow.raw_sockets = 0;
exec.clean;
exec.system_user = "root";
exec.jail_user = "root";
exec.start += "/bin/sh /etc/rc";
exec.stop = "/bin/sh /etc/rc.shutdown";
exec.consolelog = "/var/log/jail_${name}_console.log";
mount.devfs;
allow.set_hostname = 0;
allow.sysvipc = 1;
betabug {
host.hostname = "phantomjs.codigo23.net";
ip4.addr += "lo0|127.0.0.2/32";
}
I had not tried Oleg fix (this is a production server), so I was wondering if
there would be any workaround while a fix gets into the official sources... ?
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list