Opened 8 years ago
Closed 8 years ago
#141 closed defect (fixed)
printing fails with "Unable to open listen socket for address"
Reported by: | Lewis Rosenthal | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | |
Component: | cups | Version: | |
Severity: | highest | Keywords: | |
Cc: |
Description
Fresh install on Blue Lion beta 4.9.3.
cups-filters-libs-1.8.2-5.oc00.i686
cups-libs-2.1.3-7.oc00.i686
gutenprint-cups-5.2.11-3.oc00.i686
cups-filesystem-2.1.3-7.oc00.noarch
cups-client-2.1.3-7.oc00.i686
cups-2.1.3-7.oc00.i686
cups-filters-1.8.2-5.oc00.i686
Upon cups daemon startup, we get:
E [07/Feb/2017:20:51:47 +0500] Unable to open listen socket for address /@unixroot/var/run/cups/cups.sock:0 - No such file or directory.
The last message repeats.
cupsd.conf contains:
# Only listen for connections from the local machine. Listen localhost:631 Listen /@unixroot/var/run/cups/cups.sock
This port configuration is as expected, I believe.
Change History (8)
comment:1 by , 8 years ago
comment:3 by , 8 years ago
Yes, /@unixroot/var/run/cups is there. The directory itself (fresh install; same error) only contains the certs subdirectory, which itself contains a single file (0) of 32 bytes, as expected.
The cups directory only has attributes of D and A, which seems normal. The directory is writeable.
comment:4 by , 8 years ago
Added /var/run to path rewriter as C:\var\run, and got past this error. Now stopping with "Failed to execute ghostscript to determine number of input pages!" - will investigate further.
Meanwhile, this seems to be a path error, at this point. The above kludge is obviously just for testing.
comment:5 by , 8 years ago
Unlike linux, OS/2 local sockets are not bound to local file system, they only need to start with \socket\. If application fails because dir does not exist, it is only because application is checking file system for directory. This kind of check can be disabled on OS/2.
comment:6 by , 8 years ago
Ah. So what you are saying is that the check for the actual existence of the directory in the filesystem which I addressed with the path rewriter is really just an unnecessary check, anyway, but apparently when it fails, the processing stops?
comment:7 by , 8 years ago
yes, if check fails the application exists because (in linux) the socket is mapped to a file in a real file system. If you create the path, the check is ok but then OS/2 API fails because \socket\ is not present. Just change the name in the configuration file.
local sockets name must start with \socket\ or /socket/