Package: screen
Version: 4.0.3-14
Severity: important
Tags: upstream

Dear Maintainer,

i am starting two screen sessions in parallel on system startup.

Sometimes one of the sessions does not start, writing this message:
Cannot make directory '/var/run/screen/S-root': File exists

Having a look into screen.c reveals the problem.
The existing code looks like this:

if (access(SockPath, F_OK)) {
  if (mkdir(SockPath, 0700) == -1)
    Panic(errno, "Cannot make directory '%s'", SockPath);
}

There should either be a lock around the startup code (which might fix some 
other issues as well) or the code should be changed to something like this:

if (access(SockPath, F_OK)) {
  if (mkdir(SockPath, 0700) == -1 && errno != EEXIST)
    Panic(errno, "Cannot make directory '%s'", SockPath);
}

Regards, Tim

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.1.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash

Versions of packages screen depends on:
ii  dpkg          1.16.1.2
ii  install-info  4.13a.dfsg.1-8
ii  libc6         2.13-24
ii  libncursesw5  5.9-4
ii  libpam0g      1.1.3-6

screen recommends no packages.

screen suggests no packages.

-- debconf information:
  screen/old_upgrade_prompt: false

-- debsums errors found:
prelink: /usr/bin/screen: at least one of file's dependencies has changed since 
prelinking
debsums: changed file /usr/bin/screen (from screen package)



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to