ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] usermod -m -d ...
@ 2008-09-16  7:14 Timur Batyrshin
  2008-09-16  7:18 ` Slava Semushin
  0 siblings, 1 reply; 2+ messages in thread
From: Timur Batyrshin @ 2008-09-16  7:14 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 1217 bytes --]

Случайно заглянул в исходники usermod и возник такой вопрос:


static void move_home (void)
{
. . .
      if (errno == EXDEV) {
        if (mkdir
              (user_newhome, sb.st_mode & 0777)) {
                 fprintf (stderr,
                          _
                         ("%s: can't create %s\n"),
                         Prog, user_newhome);
        }

        if (chown (user_newhome,
                   sb.st_uid, sb.st_gid)) {
          fprintf (stderr,
                   _("%s: can't chown %s\n"),
                   Prog, user_newhome);
          rmdir (user_newhome);
          fail_exit (E_HOMEDIR);
        }
. . .
}

Если не удается создать каталог user_newhome выводится ошибка
об этом, но аварийный выход не осуществляется. Это так и задумано?

Ведь если указанный каталог не существует (проверка на это проходит
чуть раньше) и его не удается создать, то смысла в chown и последующих
операциях нет.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [devel] usermod -m -d ...
  2008-09-16  7:14 [devel] usermod -m -d Timur Batyrshin
@ 2008-09-16  7:18 ` Slava Semushin
  0 siblings, 0 replies; 2+ messages in thread
From: Slava Semushin @ 2008-09-16  7:18 UTC (permalink / raw)
  To: ALT Linux Team development discussions

16 сентября 2008 г. 14:14 пользователь Timur Batyrshin
<batyrshin%ieml.ru> написал:
> Случайно заглянул в исходники usermod и возник такой вопрос:

Ну вы даёте :)

[...]
> Если не удается создать каталог user_newhome выводится ошибка
> об этом, но аварийный выход не осуществляется. Это так и задумано?
>
> Ведь если указанный каталог не существует (проверка на это проходит
> чуть раньше) и его не удается создать, то смысла в chown и последующих
> операциях нет.

Так если каталог не существует, то ведь и chown, вероятно, не
отработает? Вернёт ошибку и уже тогда произойдёт аварийный выход.

Хотя более очевидно было бы сделать этот аварийный выход явным IMHO.


-- 
+ Slava Semushin | slava.semushin @ gmail.com
+ ALT Linux Team | php-coder @ altlinux.ru

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2008-09-16  7:18 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-09-16  7:14 [devel] usermod -m -d Timur Batyrshin
2008-09-16  7:18 ` Slava Semushin

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git