[devel] [git update] packages/katrin: heads/master
Slava Semushin
=?iso-8859-1?q?slava=2Esemushin_=CE=C1_gmail=2Ecom?=
Чт Июн 21 16:15:03 MSD 2007
2007/6/19, Denis Klimov <zver / altlinux.org>:
[...]
> diff --git a/src/tc/katrin-tc.c b/src/tc/katrin-tc.c
[...]
> +if (argv[1]!=NULL && (strcmp(argv[1],"remove")==0 || strcmp(argv[1],"reload")==0))
> +{
> + char *iface = strdup("eth0");
> + char *allrate = strdup("100mbit");
strdup() выделяет новую память с помощью malloc(). Это значит, что её
можно (и нужно) освободить во избежание утечек.
[...]
> + //open tmp script file
> + char prog[] = "/tmp/katrin-tc-tmp";
> + char path[] = "/tmp";
[...]
Эти строчки несколько коробят глаз. Я не знаю всех тонкостей вашей
задачи, но кажется, что использование mkstemp(3) тут было бы к месту.
[...]
> + sprintf(command,"tc qdisc del dev %s root handle 1: htb;\n",iface);
Многочисленное использование sprintf() и strcpy() в коде наводит на
мысль, что пользователям вашего билинга может повезти :)
[...]
> + fclose(fh);
Вот здесь (если не ошибаюсь) можно и память освободить:
+ free(iface);
+ free(allrate);
[...]
JFYI.
--
+ Slava Semushin | slava.semushin @ gmail.com
+ ALT Linux Team | php-coder @ altlinux.ru
Подробная информация о списке рассылки Devel