rdiff-backup-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [rdiff-backup-users] Socket error: AF_UNIX path too long


From: Scott Lamb
Subject: Re: [rdiff-backup-users] Socket error: AF_UNIX path too long
Date: Sat, 13 May 2006 12:28:01 -0700

On May 13, 2006, at 4:31 AM, address@hidden wrote:
$ zcat error_log.2006-04-29T02\:18\:43+02\:00.data.gz
SpecialFileError var/lib/mysql/mysql.sock AF_UNIX path too long
SpecialFileError var/run/authdaemon.courier-imap/socket Socket error: AF_UNIX path too long

does anybody have a clue, what this means and why this only happened on april 29 ?

I can answer the first half of your question:

/*
 * [XSI] Definitions for UNIX IPC domain.
 */
struct  sockaddr_un {
unsigned char sun_len; /* sockaddr len including null */
        sa_family_t     sun_family;     /* [XSI] AF_UNIX */
        char            sun_path[104];  /* [XSI] path name (gag) */
};

<http://svn.python.org/view/python/trunk/Modules/socketmodule.c? view=log> in getsockaddrarg:

                        if (len >= sizeof addr->sun_path) {
                                PyErr_SetString(socket_error,
"AF_UNIX path too long");
                                return 0;
                        }

so you can't create a UNIX domain socket if the entire path is longer than 104 characters - trailing null = 103 characters.

I'm not sure if the OS would accept a longer one if you allocated a larger memory region and set sun_len appropriately, but you definitely can't do it with a current version of Python.

rdiff-backup must be copying these files to a path with a prefix longer than 79 characters. I don't know why it'd be doing so on this day but not others, but I'm not familiar with its internal format.

--
Scott Lamb <http://www.slamb.org/>






reply via email to

[Prev in Thread] Current Thread [Next in Thread]