ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
* [sisyphus] Пакет bluemote
@ 2005-06-05 19:58 Dmitry (Mothlike) Marochko
  2005-06-05 20:37 ` Eugene Ostapets
  2005-06-07  7:26 ` Alexey Tourbin
  0 siblings, 2 replies; 21+ messages in thread
From: Dmitry (Mothlike) Marochko @ 2005-06-05 19:58 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

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

Добрый вечер.

Я заинтересовался пакетом bluemote как хорошей утилитой для remote
control компьютера через мобильник. Этакая лентяйка, действующая через
стены :) Заставить работаеть и опакетить ее оказалось совсем несложно,
но в процессе обточки напильником знающие люди сказали, что следующие
конструкции крайне небезопасны:

#define MAXLEN 500

[...]

char lockfile[MAXLEN];

[...]

int get_lock()
{
struct flock fl;

strcpy(lockfile, getenv("HOME"));
strcat(lockfile, BLUEMOTEDIR);
strcat(lockfile, LOCKFILE);


Подобным же образом в этой утилите задаются и конфигурационные файлы.
Стоит ли выкладывать такое в Сизиф, с учетом того что эта утилита
работает под обычным пользователем и не предполагается ее использовать
на сервере?

-- 
With best wishes,
Dmitry Marochko aka Mothlike


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 256 bytes --]

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

* Re: [sisyphus] Пакет bluemote
  2005-06-05 19:58 [sisyphus] Пакет bluemote Dmitry (Mothlike) Marochko
@ 2005-06-05 20:37 ` Eugene Ostapets
  2005-06-06 16:05   ` Dmitry (Mothlike) Marochko
  2005-06-07  7:26 ` Alexey Tourbin
  1 sibling, 1 reply; 21+ messages in thread
From: Eugene Ostapets @ 2005-06-05 20:37 UTC (permalink / raw)
  To: mothlike, ALT Linux Sisyphus discussion list

05.06.05, Dmitry (Mothlike) Marochko<mothlike gmail.com> написал(а):
> Добрый вечер.
> знающие люди сказали, что следующие конструкции крайне небезопасны:

Истинну сказали...

> 
> Подобным же образом в этой утилите задаются и конфигурационные файлы.
> Стоит ли выкладывать такое в Сизиф, с учетом того что эта утилита
> работает под обычным пользователем и не предполагается ее использовать
> на сервере?
Все равно не стоит... Лучше попытаться ее причесать, заодно и проекту
патчами поможете... Для начала замените все str* на strn* lkz для
контроля длины строк...

-- 
С уважением,
Евгений Остапец
uin: 23747217
jid: eugene_ostapets@jabber.ru

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

* Re: [sisyphus] Пакет bluemote
  2005-06-05 20:37 ` Eugene Ostapets
@ 2005-06-06 16:05   ` Dmitry (Mothlike) Marochko
  2005-06-06 19:50     ` Boldin Pavel
  2005-06-07  5:59     ` Epiphanov Sergei
  0 siblings, 2 replies; 21+ messages in thread
From: Dmitry (Mothlike) Marochko @ 2005-06-06 16:05 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

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

Eugene Ostapets пишет:

>>работает под обычным пользователем и не предполагается ее использовать
>>на сервере?
>>    
>>
>Все равно не стоит... Лучше попытаться ее причесать, заодно и проекту
>патчами поможете... Для начала замените все str* на strn* lkz для
>контроля длины строк...
>  
>
Примерно понял. А где взять тот самый n? Использовать в качестве его MAXLEN?

А что такое lkz, так и осталось для меня загадкой...

Просто я совсем не программист и мне трудно шарить в чужом коде. И в
этот-то баг меня ткнули случайно, когда я показывал сей кусок кода
совсем по другой причине. Ну да ладно, главное что оно у меня работает :)

-- 
With best wishes,
Dmitry Marochko aka Mothlike


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 256 bytes --]

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

* Re: [sisyphus] Пакет bluemote
  2005-06-06 16:05   ` Dmitry (Mothlike) Marochko
@ 2005-06-06 19:50     ` Boldin Pavel
  2005-06-07  5:59     ` Epiphanov Sergei
  1 sibling, 0 replies; 21+ messages in thread
From: Boldin Pavel @ 2005-06-06 19:50 UTC (permalink / raw)
  To: mothlike, ALT Linux Sisyphus discussion list

Dmitry (Mothlike) Marochko пишет:

>Eugene Ostapets пишет:
>
>  
>
>А что такое lkz, так и осталось для меня загадкой...
>  
>
lkz = для. :)



-- 

Boldin Pavel aka davinchi. mail-to: ldavinchi /at\ inbox _dot_ ru
    ZU - Zagovor Unixoidov. SSAU 303.




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

* Re: [sisyphus] Пакет bluemote
  2005-06-06 16:05   ` Dmitry (Mothlike) Marochko
  2005-06-06 19:50     ` Boldin Pavel
@ 2005-06-07  5:59     ` Epiphanov Sergei
  2005-06-07  6:36       ` Epiphanov Sergei
  1 sibling, 1 reply; 21+ messages in thread
From: Epiphanov Sergei @ 2005-06-07  5:59 UTC (permalink / raw)
  To: mothlike, ALT Linux Sisyphus discussion list

В сообщении от 6 Июнь 2005 20:05 Dmitry (Mothlike) Marochko написал:
> Примерно понял. А где взять тот самый n? Использовать в качестве его
> MAXLEN?

Да. Хотя, насколько мне известно, есть константа максимальной длины пути к 
файлу вместе с именем файла, которая была равна 4096.

Нашёл, в файле linux/limits.h:

#define PATH_MAX        4096    /* # chars in a path name including nul */

Так что посоветовал бы везде MAXLEN заменить на PATH_MAX.

-- 
С уважением, Епифанов Сергей


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

* Re: [sisyphus] Пакет bluemote
  2005-06-07  5:59     ` Epiphanov Sergei
@ 2005-06-07  6:36       ` Epiphanov Sergei
  2005-06-07  7:13         ` Andrei Bulava
                           ` (2 more replies)
  0 siblings, 3 replies; 21+ messages in thread
From: Epiphanov Sergei @ 2005-06-07  6:36 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

В сообщении от 7 Июнь 2005 09:59 Epiphanov Sergei написал:
> В сообщении от 6 Июнь 2005 20:05 Dmitry (Mothlike) Marochko написал:
> > Примерно понял. А где взять тот самый n? Использовать в качестве его
> > MAXLEN?
>
> Да. Хотя, насколько мне известно, есть константа максимальной длины пути к
> файлу вместе с именем файла, которая была равна 4096.
>
> Нашёл, в файле linux/limits.h:
>
> #define PATH_MAX        4096    /* # chars in a path name including nul */
>
> Так что посоветовал бы везде MAXLEN заменить на PATH_MAX.

То есть в данном случае

char lockfile[MAXLEN];
заменить на
char lockfile[PATH_MAX];

Перед использованием этой переменной я бы написал

bzero (lockfile, PATH_MAX);
или
lockfile[PATH_MAX - 1] = 0;

Главное - чтобы последний байт строки всегда был бы нулевым. Это на случай, 
если исходная строка будет больше PATH_MAX. Далее, заменить команды вида

strcpy (lockfile, srcfile);
на
strncpy (lockfile, srcfile, PATH_MAX - 1);

Тоже самое с sprintf (на snprintf) и другими. И не забыть в начале 
исправленных файлов добавить

#include <linux/limits.h>

-- 
С уважением, Епифанов Сергей


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

* Re: [sisyphus] Пакет bluemote
  2005-06-07  6:36       ` Epiphanov Sergei
@ 2005-06-07  7:13         ` Andrei Bulava
  2005-06-07  7:22           ` Epiphanov Sergei
  2005-06-07  9:28         ` Andrey Rahmatullin
  2005-06-09 16:20         ` Dmitry (Mothlike) Marochko
  2 siblings, 1 reply; 21+ messages in thread
From: Andrei Bulava @ 2005-06-07  7:13 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

Epiphanov Sergei wrote:
> В сообщении от 7 Июнь 2005 09:59 Epiphanov Sergei написал:

<skip/>

> И не забыть в начале исправленных файлов добавить
> 
> #include <linux/limits.h>

Дилетантсткий вопрос: а разве

#include <limits.h>

недостаточно? Не Linux'ом единым, всё же...

-- 
// AB1002-UANIC


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

* Re: [sisyphus] Пакет bluemote
  2005-06-07  7:13         ` Andrei Bulava
@ 2005-06-07  7:22           ` Epiphanov Sergei
  0 siblings, 0 replies; 21+ messages in thread
From: Epiphanov Sergei @ 2005-06-07  7:22 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

В сообщении от 7 Июнь 2005 11:13 Andrei Bulava написал:
> > И не забыть в начале исправленных файлов добавить
> >
> > #include <linux/limits.h>
>
> Дилетантсткий вопрос: а разве
>
> #include <limits.h>
>
> недостаточно? Не Linux'ом единым, всё же...

Можно. Определяется простой проверкой. Просто я нашёл эту константу в 
linux/limit.h, вот этот файл и указал

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

* [sisyphus] Re: Пакет bluemote
  2005-06-05 19:58 [sisyphus] Пакет bluemote Dmitry (Mothlike) Marochko
  2005-06-05 20:37 ` Eugene Ostapets
@ 2005-06-07  7:26 ` Alexey Tourbin
  2005-06-07  7:36   ` Epiphanov Sergei
  2005-06-07 18:04   ` [sisyphus] Re: Пакет bluemote Dmitry (Mothlike) Marochko
  1 sibling, 2 replies; 21+ messages in thread
From: Alexey Tourbin @ 2005-06-07  7:26 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

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

On Sun, Jun 05, 2005 at 11:58:38PM +0400, Dmitry (Mothlike) Marochko wrote:
> char lockfile[MAXLEN];
> 
> [...]
> 
> int get_lock()
> {
> struct flock fl;
> 
> strcpy(lockfile, getenv("HOME"));
> strcat(lockfile, BLUEMOTEDIR);
> strcat(lockfile, LOCKFILE);

Используйте asprintf.

	char *lockfile = NULL;
	char *home = getenv("HOME");
	if (!home) {
		// ...
		exit(1);
	}
	if (asprintf(&lockfile, "%s/%s/%s", home, BLUEMOTEDIR, LOCKFILE) > 0) {
		struct flock fl;
		// ...
		free(lockfile);
	}
	else {
		perror("asprintf");
		exit(1);
	}

Существует портабельная реализация asprintf --
http://www.ijs.si/software/snprintf/

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [sisyphus] Re: Пакет bluemote
  2005-06-07  7:26 ` Alexey Tourbin
@ 2005-06-07  7:36   ` Epiphanov Sergei
  2005-06-07  7:43     ` Alexey I. Froloff
  2005-06-07 18:04   ` [sisyphus] Re: Пакет bluemote Dmitry (Mothlike) Marochko
  1 sibling, 1 reply; 21+ messages in thread
From: Epiphanov Sergei @ 2005-06-07  7:36 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

В сообщении от 7 Июнь 2005 11:26 Alexey Tourbin написал:
> On Sun, Jun 05, 2005 at 11:58:38PM +0400, Dmitry (Mothlike) Marochko wrote:
> Используйте asprintf.
>
> 	char *lockfile = NULL;
...
> 	if (asprintf(&lockfile, "%s/%s/%s", home, BLUEMOTEDIR, LOCKFILE) > 0) {

Боюсь, во второй строке получите SIGSEGV или постоянную ошибку.

-- 
С уважением, Епифанов Сергей


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

* Re: [sisyphus] Re: Пакет bluemote
  2005-06-07  7:36   ` Epiphanov Sergei
@ 2005-06-07  7:43     ` Alexey I. Froloff
  2005-06-07  8:16       ` Epiphanov Sergei
  0 siblings, 1 reply; 21+ messages in thread
From: Alexey I. Froloff @ 2005-06-07  7:43 UTC (permalink / raw)
  To: ALT Linux Sisyphus

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

* Epiphanov Sergei <serpiph@> [050607 11:36]:
> > Используйте asprintf.
> > 	char *lockfile = NULL;
> ...
> > 	if (asprintf(&lockfile, "%s/%s/%s", home, BLUEMOTEDIR, LOCKFILE) > 0) {
> Боюсь, во второй строке получите SIGSEGV или постоянную ошибку.
Учите матчасть...

-- 
Regards, Sir Raorn.
-------------------
[...] он не следует нашей PAM Policy.  Насколько я понимаю, этим
правилам в Сизифе следуют только мои пакеты. :(
		-- ldv in devel@

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [sisyphus] Re: Пакет bluemote
  2005-06-07  7:43     ` Alexey I. Froloff
@ 2005-06-07  8:16       ` Epiphanov Sergei
  2005-06-07  9:38         ` Alexey Tourbin
  0 siblings, 1 reply; 21+ messages in thread
From: Epiphanov Sergei @ 2005-06-07  8:16 UTC (permalink / raw)
  To: ALT Linux Sisyphus

В сообщении от 7 Июнь 2005 11:43 Alexey I. Froloff написал:
> > >     if (asprintf(&lockfile, "%s/%s/%s", home, BLUEMOTEDIR, LOCKFILE) >
> > > 0) {
> >
> > Боюсь, во второй строке получите SIGSEGV или постоянную ошибку.
>
> Учите матчасть...
Мда, оплошал. Перепутал * с &. Вот только непонятно, зачем двойной указатель 
в функции. Не знаете, что такое '*__restrict'?

-- 
С уважением, Епифанов Сергей


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

* Re: [sisyphus] Пакет bluemote
  2005-06-07  6:36       ` Epiphanov Sergei
  2005-06-07  7:13         ` Andrei Bulava
@ 2005-06-07  9:28         ` Andrey Rahmatullin
  2005-06-09 16:20         ` Dmitry (Mothlike) Marochko
  2 siblings, 0 replies; 21+ messages in thread
From: Andrey Rahmatullin @ 2005-06-07  9:28 UTC (permalink / raw)
  To: sisyphus

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

On Tue, Jun 07, 2005 at 10:36:14AM +0400, Epiphanov Sergei wrote:
> bzero (lockfile, PATH_MAX);
Не надо. Он deprecated и непортабельный к тому же.
man bzero, man memset

-- 
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(8):

Иногда тишина бывает гораздо красноречивее пространной речи.
Послушайте эту тишину, может быть, вы услышите что-нибудь полезное
для себя.
		-- ldv in community@

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* [sisyphus] Re: Пакет bluemote
  2005-06-07  8:16       ` Epiphanov Sergei
@ 2005-06-07  9:38         ` Alexey Tourbin
  2005-06-07 10:41           ` Epiphanov Sergei
  0 siblings, 1 reply; 21+ messages in thread
From: Alexey Tourbin @ 2005-06-07  9:38 UTC (permalink / raw)
  To: ALT Linux Sisyphus

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

On Tue, Jun 07, 2005 at 12:16:36PM +0400, Epiphanov Sergei wrote:
> В сообщении от 7 Июнь 2005 11:43 Alexey I. Froloff написал:
> > > >     if (asprintf(&lockfile, "%s/%s/%s", home, BLUEMOTEDIR, LOCKFILE) >
> > > > 0) {
> > >
> > > Боюсь, во второй строке получите SIGSEGV или постоянную ошибку.
> >
> > Учите матчасть...
> Мда, оплошал. Перепутал * с &. Вот только непонятно, зачем двойной указатель 
> в функции. Не знаете, что такое '*__restrict'?

Не знаете, что такое asprintf? :)

int asprintf(char **strp, const char *fmt, ...);

Внутри asprintf() делает malloc и, таким образом, возвращает указатель
на новую строку через первый аргумент.

	*strp = malloc(...);

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [sisyphus] Re: Пакет bluemote
  2005-06-07  9:38         ` Alexey Tourbin
@ 2005-06-07 10:41           ` Epiphanov Sergei
  2005-06-07 11:52             ` [sisyphus] asprintf(3) manpage? (was: Пакет bluemote) Alexey Tourbin
  0 siblings, 1 reply; 21+ messages in thread
From: Epiphanov Sergei @ 2005-06-07 10:41 UTC (permalink / raw)
  To: ALT Linux Sisyphus

В сообщении от 7 Июнь 2005 13:38 Alexey Tourbin написал:
> Не знаете, что такое asprintf? :) :)
>
> int asprintf(char **strp, const char *fmt, ...);
>
> Внутри asprintf() делает malloc и, таким образом, возвращает указатель
> на новую строку через первый аргумент.
>
>         *strp = malloc(...);

Да, до недавнего времени не знал.

А Вы смотрели man asprintf? Про сам asprintf там написано 1 (одно) 
предложение без указания параметров. А в stdio.h прототип указан в виде

extern int asprintf (char **__restrict __ptr,
                     __const char *__restrict __fmt, ...)
     __THROW __attribute__ ((__format__ (__printf__, 2, 3)));

И вот что такое '*__restrict'?

-- 
С уважением, Епифанов Сергей


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

* [sisyphus] asprintf(3) manpage? (was: Пакет bluemote)
  2005-06-07 10:41           ` Epiphanov Sergei
@ 2005-06-07 11:52             ` Alexey Tourbin
  2005-06-07 12:37               ` Epiphanov Sergei
  2005-06-07 15:32               ` Andrey Rahmatullin
  0 siblings, 2 replies; 21+ messages in thread
From: Alexey Tourbin @ 2005-06-07 11:52 UTC (permalink / raw)
  To: ALT Linux Sisyphus

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

On Tue, Jun 07, 2005 at 02:41:16PM +0400, Epiphanov Sergei wrote:
> А Вы смотрели man asprintf? Про сам asprintf там написано 1 (одно) 

Гуглом.  На него вообще-то отдельная man страница есть, но у нас
её почему-то нет.  А, ну ясно, это у нас /usr/lib/rpm/brp-compress...
При сборке пакета man-pages:

removed `/home/at/tmp/man-pages-buildroot/usr/share/man/man3/asprintf.3'
create symbolic link `/home/at/tmp/man-pages-buildroot/usr/share/man/man3/asprintf.3.gz' to `printf.3.gz'

Повесьте на кого-нибудь баг...

> предложение без указания параметров. А в stdio.h прототип указан в виде
> 
> extern int asprintf (char **__restrict __ptr,
>                      __const char *__restrict __fmt, ...)
>      __THROW __attribute__ ((__format__ (__printf__, 2, 3)));
> 
> И вот что такое '*__restrict'?

Что-то ГНУсное.  В `info gcc' прочитать можно.  Знать не обязательно.

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [sisyphus] asprintf(3) manpage? (was: Пакет bluemote)
  2005-06-07 11:52             ` [sisyphus] asprintf(3) manpage? (was: Пакет bluemote) Alexey Tourbin
@ 2005-06-07 12:37               ` Epiphanov Sergei
  2005-06-07 15:32               ` Andrey Rahmatullin
  1 sibling, 0 replies; 21+ messages in thread
From: Epiphanov Sergei @ 2005-06-07 12:37 UTC (permalink / raw)
  To: ALT Linux Sisyphus

В сообщении от 7 Июнь 2005 15:52 Alexey Tourbin написал:
> Повесьте на кого-нибудь баг...

#7022.

-- 
С уважением, Епифанов Сергей


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

* Re: [sisyphus] asprintf(3) manpage? (was: Пакет bluemote)
  2005-06-07 11:52             ` [sisyphus] asprintf(3) manpage? (was: Пакет bluemote) Alexey Tourbin
  2005-06-07 12:37               ` Epiphanov Sergei
@ 2005-06-07 15:32               ` Andrey Rahmatullin
  1 sibling, 0 replies; 21+ messages in thread
From: Andrey Rahmatullin @ 2005-06-07 15:32 UTC (permalink / raw)
  To: sisyphus

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

On Tue, Jun 07, 2005 at 03:52:52PM +0400, Alexey Tourbin wrote:
> Что-то ГНУсное.  
С99'ное.

> В `info gcc' прочитать можно.
6.3 Restricting Pointer Aliasing

> Знать не обязательно.
maybe

-- 
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(8):

От чрута с сидящей в нем половиной системы никакой пользы,
кроме вреда. :)
		-- force in sisyphus@

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [sisyphus] Re: Пакет bluemote
  2005-06-07  7:26 ` Alexey Tourbin
  2005-06-07  7:36   ` Epiphanov Sergei
@ 2005-06-07 18:04   ` Dmitry (Mothlike) Marochko
  1 sibling, 0 replies; 21+ messages in thread
From: Dmitry (Mothlike) Marochko @ 2005-06-07 18:04 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

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

Alexey Tourbin пишет:

>>strcpy(lockfile, getenv("HOME"));
>>strcat(lockfile, BLUEMOTEDIR);
>>strcat(lockfile, LOCKFILE);
>>    
>>
>
>Используйте asprintf.
>  
>
А вот это для меня слишком сложно, поскольку мое знакомство с Си
началось где-то неделю назад. Если смысл str{n}* я улавливаю, то смысл
вышеописанного от меня ускользает :(

-- 
With best wishes,
Dmitry Marochko aka Mothlike


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 256 bytes --]

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

* Re: [sisyphus] Пакет bluemote
  2005-06-07  6:36       ` Epiphanov Sergei
  2005-06-07  7:13         ` Andrei Bulava
  2005-06-07  9:28         ` Andrey Rahmatullin
@ 2005-06-09 16:20         ` Dmitry (Mothlike) Marochko
  2005-06-13  6:32           ` [sisyphus] " Alexey Tourbin
  2 siblings, 1 reply; 21+ messages in thread
From: Dmitry (Mothlike) Marochko @ 2005-06-09 16:20 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

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

Epiphanov Sergei пишет:

>>Так что посоветовал бы везде MAXLEN заменить на PATH_MAX.
>>    
>>
>
>То есть в данном случае
>
>char lockfile[MAXLEN];
>заменить на
>char lockfile[PATH_MAX];
>  
>
Спасибо за помощь, в этом у меня разобраться получилось. Теперь
наличествует конструкция вида:

char logfile[PATH_MAX];

[...]

logfile[PATH_MAX - 1] = 0;
strncpy(logfile, getenv("HOME"), PATH_MAX - 1);
strncat(logfile, BLUEMOTEDIR, PATH_MAX - 1);
strncat(logfile, LOGFILE, PATH_MAX - 1);

и так везде, где используются каки-либо конфигурационные или иные файлы.
Иные использования strcat я не осилил, поскольку совершенно не понимаю,
откуда брать третий аргумент :(

 Пакет у меня нормально собирается и работает, но все же, что еще
общественность может посоветовать посмотреть внутри на предмет
безопасности? Причем такого, что можно бы было понять неискушенному
человеку :)

-- 
With best wishes,
Dmitry Marochko aka Mothlike


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 256 bytes --]

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

* [sisyphus] Re: Пакет bluemote
  2005-06-09 16:20         ` Dmitry (Mothlike) Marochko
@ 2005-06-13  6:32           ` Alexey Tourbin
  0 siblings, 0 replies; 21+ messages in thread
From: Alexey Tourbin @ 2005-06-13  6:32 UTC (permalink / raw)
  To: ALT Linux Sisyphus discussion list

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

On Thu, Jun 09, 2005 at 08:20:39PM +0400, Dmitry (Mothlike) Marochko wrote:
> logfile[PATH_MAX - 1] = 0;
> strncpy(logfile, getenv("HOME"), PATH_MAX - 1);
> strncat(logfile, BLUEMOTEDIR, PATH_MAX - 1);
> strncat(logfile, LOGFILE, PATH_MAX - 1);
> 
> и так везде, где используются каки-либо конфигурационные или иные файлы.
> Иные использования strcat я не осилил, поскольку совершенно не понимаю,
> откуда брать третий аргумент :(
> 
>  Пакет у меня нормально собирается и работает, но все же, что еще
> общественность может посоветовать посмотреть внутри на предмет
> безопасности? Причем такого, что можно бы было понять неискушенному
> человеку :)

Попробуйте сделать `unset HOME' и запустить программу -- будет SIGSEGV.

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

end of thread, other threads:[~2005-06-13  6:32 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-06-05 19:58 [sisyphus] Пакет bluemote Dmitry (Mothlike) Marochko
2005-06-05 20:37 ` Eugene Ostapets
2005-06-06 16:05   ` Dmitry (Mothlike) Marochko
2005-06-06 19:50     ` Boldin Pavel
2005-06-07  5:59     ` Epiphanov Sergei
2005-06-07  6:36       ` Epiphanov Sergei
2005-06-07  7:13         ` Andrei Bulava
2005-06-07  7:22           ` Epiphanov Sergei
2005-06-07  9:28         ` Andrey Rahmatullin
2005-06-09 16:20         ` Dmitry (Mothlike) Marochko
2005-06-13  6:32           ` [sisyphus] " Alexey Tourbin
2005-06-07  7:26 ` Alexey Tourbin
2005-06-07  7:36   ` Epiphanov Sergei
2005-06-07  7:43     ` Alexey I. Froloff
2005-06-07  8:16       ` Epiphanov Sergei
2005-06-07  9:38         ` Alexey Tourbin
2005-06-07 10:41           ` Epiphanov Sergei
2005-06-07 11:52             ` [sisyphus] asprintf(3) manpage? (was: Пакет bluemote) Alexey Tourbin
2005-06-07 12:37               ` Epiphanov Sergei
2005-06-07 15:32               ` Andrey Rahmatullin
2005-06-07 18:04   ` [sisyphus] Re: Пакет bluemote Dmitry (Mothlike) Marochko

ALT Linux Sisyphus discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/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 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
		sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
	public-inbox-index sisyphus

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


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