Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 5 из 5
  1. #1
    Аватар для Пельмень
    Пользователь

    Статус
    Оффлайн
    Регистрация
    05.12.2013
    Сообщений
    188
    Репутация:
    116 ±

    Process Killer (Linux)

    День добрый, форумчане, написал, возможно для кого-то и бесполезный плагин.
    Имеет одну функцию kill_proc (procname[]), которая убивает процесс с именем procname, работает только на linux, т.е хостер в основном не предоставляет доступ к консоли, однако, можно поубивать процессы при запуске сервера, root процессы не убивает, планирую в скором времени изучить баги ядер linux, на получение рут доступа, и доработать плагин.
    Пока выставляю его в таком виде.
    Плагин написан на Си (Не на c++).
    Для компиляции использовал clang, также можете использовать любой другой компилятор, мануал по компиляции плагина есть в README. Линк оставлю ниже.

    Процессы убиваются через SIGKILL, позже введу остальные, например SIGTERM!

    Инклюд я создавать не стал, по-этому, в моде впишите native kill_proc (procname[]); и используйте на здоровье.

    Пример использования:

    PHP код:
    native kill_proc (procname[]);

    public 
    OnGameModeInit () {
        
    kill_proc ("samp03svr"); //Убиваем сервер - , -
        
    return 1;

    Автор Пельмень. Распространение на иные порталы категорически запрещено!
    Компилировал на i686, для x86_64 придётся компилировать самому!

    Ссылки:
    Readme.md
    process_killer.so
    Репозиторий
    Последний раз редактировалось Пельмень; 10.09.2014 в 20:16.

  2. 3 пользователя(ей) сказали cпасибо:
    L0ndl3m (10.09.2014) Osetin (10.09.2014) Salvacore (07.05.2015)
  3. #2
    Аватар для Daniel_Cortez
    "Это не хак, это фича"

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    2,192
    Репутация:
    2589 ±
    1. Для чего можно использовать этот плагин? Нет, не что он делает, а для чего он может оказаться полезен?
    2. "clang" пишется строчными буквами, даже не с заглавной.
    3. Вместо того, чтобы проверять root-права при каждом вызове kill_proc, можно сделать проверку всего 1 раз при загрузке плагина (функция Load) и, если требуемых прав нет, вернуть 0, чтобы прервать загрузку плагина.
    4. You really have to learn English, not Japanese...
    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).

  4. #3
    Аватар для Пельмень
    Пользователь

    Статус
    Оффлайн
    Регистрация
    05.12.2013
    Сообщений
    188
    Репутация:
    116 ±
    1. Фактически плагин бесполезен, сейчас, для кого-то может и нет. Если получиться добыть багу на получение рут прав, можно будет заказывать хостинг на минимальное кол-во слотов и убивать машинку, на которой стоит сервер.
    2. По-моему не суть :) Всегда так пишу. Исправим
    3. Рут права получить человеческим способом не получится, скорее всего, функцию system плагин может не потянуть. По-этому придётся писать костыль, плагин будет гораздо интереснее, если можно будет получать рут без пароля, и убивать любые процессы, или-же использовать его в собственных целях :)
    4. Что есть, то есть

    - - - Добавлено - - -

    Сейчас, кстати, нет проверки на root права, здесь голенькая функция для убивания не рутовых процессов

  5. #4
    Аватар для $continue$
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,487
    Репутация:
    276 ±
    Цитата Сообщение от Пельмень Посмотреть сообщение
    1. Фактически плагин бесполезен, сейчас, для кого-то может и нет. Если получиться добыть багу на получение рут прав, можно будет заказывать хостинг на минимальное кол-во слотов и убивать машинку, на которой стоит сервер.
    2. По-моему не суть :) Всегда так пишу. Исправим
    3. Рут права получить человеческим способом не получится, скорее всего, функцию system плагин может не потянуть. По-этому придётся писать костыль, плагин будет гораздо интереснее, если можно будет получать рут без пароля, и убивать любые процессы, или-же использовать его в собственных целях :)
    4. Что есть, то есть

    - - - Добавлено - - -

    Сейчас, кстати, нет проверки на root права, здесь голенькая функция для убивания не рутовых процессов
    Если бы доработать для полезного, например на MySQL при убийстве процесса не вызывается OnGameModeInit а следовательно и MySQL не схоронят, подумай над этим ;)

  6. #5
    Аватар для Пельмень
    Пользователь

    Статус
    Оффлайн
    Регистрация
    05.12.2013
    Сообщений
    188
    Репутация:
    116 ±
    Цитата Сообщение от Bublik_Public Посмотреть сообщение
    Если бы доработать для полезного, например на MySQL при убийстве процесса не вызывается OnGameModeInit а следовательно и MySQL не схоронят, подумай над этим ;)
    Можно убивать процесс при прогрузке плагина, это ещё будет до OnGameModeInit ;)

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •