Bug 18837 - Не корректно обрабатывается обратный слеш в именах временных каталогов пользователей
: Не корректно обрабатывается обратный слеш в именах временных каталогов пользо...
Status: NEW
: Sisyphus
(All bugs in Sisyphus/rpm-build)
: unstable
: all Linux
: P2 normal
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2009-02-15 02:21 by
Modified: 2009-02-15 04:52 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2009-02-15 02:21:58
Для пользователей, по умолчанию, формируется временный каталог содержащий имя
соответствующего пользователя. При попытке работы с пользователями в именах
которых присутствует обратный слеш, возникает ошибка:
[sin@kafedra03 sudo]$ gear-rpm -ba
ошибка: Файл /tmp/.private/MAINsin/gear.fb5ovGsV/out/sudo-1.7.0.tar: Нет такого
файла или каталога

$ getent passwd MAIN\\sin
sin:*:16782791:16777729:Синельников Евгений
Александрович:/home/MAIN/sin:/bin/bash
------- Comment #1 From 2009-02-15 02:38:36 -------
(In reply to comment #0)
> Для пользователей, по умолчанию, формируется временный каталог содержащий имя
> соответствующего пользователя.

Нет, Вызывается обычный mktemp -dt, который создаёт временный каталог внутри
$TMPDIR.

> При попытке работы с пользователями в именах
> которых присутствует обратный слеш, возникает ошибка:
> [sin@kafedra03 sudo]$ gear-rpm -ba
> ошибка: Файл /tmp/.private/MAINsin/gear.fb5ovGsV/out/sudo-1.7.0.tar: Нет такого
> файла или каталога

Просто $TMPDIR содержит обратный слэш.
И gear-rpm тут не при чём, он вызывает rpmbuild с правильными параметрами.
Просто rpmbuild неправильно их обрабатывает.
------- Comment #2 From 2009-02-15 04:27:31 -------
Ну, тогда у rpm-build проблемы не только со слешом, но и с пробельными
символами. Теперь в имени группы:

$ gear-rpm -ba                              
Выполняется(%prep): /bin/sh -e /home/MAIN/sin/tmp/rpm-tmp.61889 
+ umask 022                                                     
+ /bin/mkdir -p /home/MAIN/sin/RPM/BUILD                        

[...]

/bin/sh ./install-sh -c -O 0 -G 0 -M 0444 ./sudoers.ldap.man
/home/MAIN/sin/tmp/sudo-buildroot/usr/share/man/man5/sudoers.ldap.5
make: *** No rule to make target `домена'.  Stop.
make: Leaving directory `/home/MAIN/sin/RPM/BUILD/sudo-1.7.0'
ошибка: Неверный код возврата из /home/MAIN/sin/tmp/rpm-tmp.80190 (%install)


Ошибки сборки пакетов:
    Неверный код возврата из /home/MAIN/sin/tmp/rpm-tmp.80190 (%install)

[sin@kafedra03 sudo]$ id
uid=16782791(sin) gid=16777729(пользователи домена)
группы=10(wheel),502(admins),503(remote),16777729(пользователи
домена),16786336(стс),16788486(сотрудники кафедры тоиит),16796594(csit web
developers),16796755(администраторы тоиит),16798277(студенты
2003x21),16798279(студенты кафедры тоиит)
------- Comment #3 From 2009-02-15 04:52:32 -------
Не все детали скопировал:

[...]
ln /home/MAIN/sin/tmp/sudo-buildroot/usr/bin/sudo
/home/MAIN/sin/tmp/sudo-buildroot/usr/bin/sudoedit
/bin/sh ./install-sh -c -O 0 -G 0 -M 0111 -s visudo
/home/MAIN/sin/tmp/sudo-buildroot/usr/sbin/visudo
test -f .libs/sudo_noexec.so && /bin/sh ./install-sh -c -O 0 -G 0 -M 0755
.libs/sudo_noexec.so /home/MAIN/sin/tmp/sudo-buildroot/usr/libexec/sudo
test -f /home/MAIN/sin/tmp/sudo-buildroot/etc/sudoers || \
            /bin/sh ./install-sh -c -O sin -G пользователи -M 0400 \
                                             ^^^^^^^^^^^^^^
                ./sudoers /home/MAIN/sin/tmp/sudo-buildroot/etc/sudoers
/bin/sh ./install-sh -c -O 0 -G 0 -M 0444 ./sudo.man
/home/MAIN/sin/tmp/sudo-buildroot/usr/share/man/man8/sudo.8
ln /home/MAIN/sin/tmp/sudo-buildroot/usr/share/man/man8/sudo.8
/home/MAIN/sin/tmp/sudo-buildroot/usr/share/man/man8/sudoedit.8
/bin/sh ./install-sh -c -O 0 -G 0 -M 0444 ./visudo.man
/home/MAIN/sin/tmp/sudo-buildroot/usr/share/man/man8/visudo.8
/bin/sh ./install-sh -c -O 0 -G 0 -M 0444 ./sudoers.man
/home/MAIN/sin/tmp/sudo-buildroot/usr/share/man/man5/sudoers.5
#/bin/sh ./install-sh -c -O 0 -G 0 -M 0444 ./sudoers.ldap.man
/home/MAIN/sin/tmp/sudo-buildroot/usr/share/man/man5/sudoers.ldap.5
make: *** No rule to make target `домена'.  Stop.
                                 ^^^^^^^^
make: Leaving directory `/home/MAIN/sin/RPM/BUILD/sudo-1.7.0'
ошибка: Неверный код возврата из /home/MAIN/sin/tmp/rpm-tmp.80190 (%install)
[...]