Почему важно использовать setsid()

Для того, чтобы процесс стал демоном, программисты используют вызов fork(), например, следующим образом:

[-]
View Code C
chdir("/");
close(STDIN_FILENO);
close(STDOUT_FILENO);
close(STDERR_FILENO);

pid_t pid = fork();
switch (pid) {
    case 0:
        // Child code — hello from the daemon
        break;

    case -1:
        perror("fork");
        exit(EXIT_FAILURE);

    default:
        exit(EXIT_SUCCESS);
}

Код рабочий, но с точки зрения безопасности не самый лучший. Далее »

Автор: , опубликовано в: C/C++, Безопасность, комментариев: 1
8
Мар
2009

va_list и Segmentation Fault

Недавно пришлось вспомнить молодость и программирование на C. В результате столкнулся с одной очень неочевидной ошибкой.

Те, кто программируют под /, вероятно, знают о функции vsyslog. Её приятной особенностью является то, что вместо переменного количества аргументов она берет фиксированное количество, последним из которых является аргумент типа va_list. Недостаток функции — она не входит в стандарты POSIX (то есть в коде её можно использовать на свой страх и риск — и не забыть добавить проверку на её существование в autoconf). Далее »

Автор: , опубликовано в: C/C++, комментариев: нет
3
Мар
2009

Подсчёт трафика в nginx: часть 2

В статье «Подсчёт трафика в nginx» я приводил один из возможных вариантов живого подсчёта трафика в .

У прошлого решения есть недостатки:

  • используется три лишних процесса;
  • используется много файловых дескрипторов (зависит от количества виртуальных хостов).

Я на днях нашёл еще один вариант. Далее »

Автор: , опубликовано в: Linux, MySQL, nginx, Администрирование, комментариев: 7
21
Фев
2009

Настройка SPF в Postfix

Данная статья написана по просьбам трудящихся.

Начнём с теории: что такое и для чего он нужен.

Sender Policy Framework (SPF, структура политики отправителя) — расширение для протокола отправки электронной почты SMTP, благодаря которму можно проверить, не подделан ли домен отправителя.

SPF позволяет указать в записи TXT (или SPF), соответствующей имени домена, специальным образом сформированную строку, указывающую список серверов, имеющих право отправлять email-сообщения с обратными адресами в данном домене. Дальнейшие детали, а также мастер создания SPF-записей можно найти на официальном сайте проекта. Далее »

Автор: , опубликовано в: Linux, Администрирование, комментариев: 4
31
Авг
2008