Skip to forum content

You are not logged in. Please login or register.


forums.pvpgn.pro → [RU] Research & Development → Поправьте, пожалуйста: could not give up privileges (exiting)

Pages 1

You must login or register to post a reply

RSS topic feed

Posts: 6

1 (edited by iltmpz 20.10.2014 23:08)

Topic: Поправьте, пожалуйста: could not give up privileges (exiting)

Собрал pvpgn 1.9.9, от рута запускается, выставил в конфиге бесправного юзера - получаю сабж.

Полез разбираться:
Оказалось, что ошибку возвращает функция gurp_uname2id в src/common/give_up_root_privileges.cpp:

Конкретно, не срабатывает блок #ifdef HAVE_GETPWNAM.

Хотя cmake проверяет getpwnam и находит его.

В общем, оказалось, что в конфигах cmake параметр называется HAVE_GETPWNAME
А в коде - HAVE_GETPWNAM.

Поправьте, пожалуйста, в актуальной версии.

P.S:
Спасибо большое за ваш труд! Объем работы просто огромный проделали за последнее время!
Прямо все мои хотелки учли, о которых я писал и год, и два назад, и которые только начинал продумывать!
Кучу всего, о чем я писал грамотно сделали, и уязвимости поисправляли, и доделали логи команд админа, и немедленный сброс состояния сервера в базу, и /mute, и кроме этого - просто огромное количество улучшений!

Сейчас, надеюсь-таки обновить свою древнюю 1.8.5 до 1.9.9, после чего буду по возможности обновлять ее по мере выхода обновлений.

Добавлено: 24.10.2014 18:37

Также вот ошибка, лишняя запятая:

In file included from /root/pvpgn-1.9.9/pvpgn/src/bnetd/connection.h:239:0,
                 from /root/pvpgn-1.9.9/pvpgn/src/bnetd/attrgroup.cpp:37:
/root/pvpgn-1.9.9/pvpgn/src/bnetd/game.h:186:30: warning: comma at end of enumerator list [-pedantic]

Собирал на freebsd 10 - там сыплется куча варнингов, на каждый компилируемый файл,
на freebsd 8.4 вообще выдало error и остановилось.

2

Re: Поправьте, пожалуйста: could not give up privileges (exiting)

Спасибо за найденные ошибки.

К сожалению, нет возможности тестировать на всех возможных дистрибутивах. Warnings для Linux и Windows будут исправлены ближе к окончанию релиза - сейчас пока делаются промежуточные версии.
Если у вас есть возможность исследовать и исправить ошибки для Freebsd, то это будет очень кстати. Проект на Github с радостью примет ваши Pull request'ы!

Do not ask for support in PM.

3

Re: Поправьте, пожалуйста: could not give up privileges (exiting)

HarpyWar wrote:

Спасибо за найденные ошибки.

К сожалению, нет возможности тестировать на всех возможных дистрибутивах. Warnings для Linux и Windows будут исправлены ближе к окончанию релиза - сейчас пока делаются промежуточные версии.
Если у вас есть возможность исследовать и исправить ошибки для Freebsd, то это будет очень кстати. Проект на Github с радостью примет ваши Pull request'ы!

Спасибо за оперативные правки!

Можно я чуть пофлужу тут?..

1. Зарегистрировался на github, попытался запостить pull request тут: https://github.com/HarpyWar/pvpgn/pulls (New pull request), в итоге он почему-то появился в /d1zzy/pvpgn/pulls...
Если в /HarpyWar/pvpgn/pulls нажимаю New pull request, то вижу опять свой прошлый запрос, не понял, как его удалить, закрыть или перенести куда нужно...
(Прошу прощения за глупый вопрос, никогда с контролем версий не работал, если не считать немножко svn, давным-давно, но там не было так мудрено)
В общем, напишу тут:

2. Числа вместо констант в topic:
В поисках, почему обрезается длина топика 128 байт, хотя задано 201:
В ./bnetd/topic.cpp строка:
snprintf(msgtemp, sizeof(msgtemp), "%.64s topic: %.128s", channel_name, token);
Тогда как для данных параметров заданы константы:
MAX_CHANNELNAME_LEN, MAX_TOPIC_LEN.
Просьба числа заменить на константы.

3. Очень мало информации удается найти про последние разработки в области pvpgn. В частности, нашел некий milestone:"PvPGN 2.0". Это что, абсолютно новая сырая версия, апдейты 1.9.9, существенно расширяющие функциональность или что-то другое?
Почитал в частности про пакет 0x17, не особо понял детали, но выглядит мощно.
Хочу, но стоит ли?

4. Список "что нового" на странице https://github.com/HarpyWar/pvpgn - актуален, или там существенно больше изменений?
Интересно также было бы почитать, что нового в 1.9.9 по сравнению с 1.8.5 - нет где-нибудь более-менее подробного списка исправлений и нововведений?

4

Re: Поправьте, пожалуйста: could not give up privileges (exiting)

Сначала репозитарий нужно форкнуть, затем сделать изменения в виде коммитов, и уже затем нажимать Pull request у своего проекта, чтобы предложить внесение этих изменений в тот проект, с которого он был форкнут. https://help.github.com/articles/using-pull-requests/
Если нажимать на моем репозитарии Pull request, то конечно же все мои изменения будут предложены в старый pvpgn 1.99 от Dizzy. Но поскольку там изменения не принимаются из-за прекращения разработки, я начал развивать свой.
Pull request можно закрыть в самом низу кнопкой Close.
В репозитарии есть раздел Issues - там вносят предложения, обсуждения, и сообщают о багах. Скорее, ваш комментарий предназначался туда, раз явных правок в коде не было.

PvPGN 2.0 - это то, к чему идет текущая разработка. Полный список изменений можно отследить по коммитам и в закрытых Issues. Все основное я добавил в Readme, может что-то и забыл, но остальное это мелочи или доработка.

Пакет 0x17 SID_READMEMORY читает область памяти процесса игры на стороне клиента, не работает в Warcraft 3 и Diablo 2. Он был реализован до исследования пакета 0x4B SID_EXTRAWORK, который изначально считался невозможным из-за подписи Blizzard. Но в итоге оказалось, что он подписан слабой подписью (weak signature), которую получилось взломать. С помощью него можно выполнить любой C++ код у клиента, поэтому целесообразнее использовать его - область применения ограничена только навыками программирования.

Do not ask for support in PM.

5

Re: Поправьте, пожалуйста: could not give up privileges (exiting)

Кажется, получилось.

Сначала пытался сделать новую ветку для своих коммитов, почему-то в итоге так их у себя и не увидел, потом потратил неделю свободных вечеров на изучение всяких разных мануалов и howto, в итоге решил начинать с малого:

Сделал просто 1 коммит с 1 измененным файлом в ветке master и отправил pull request:
https://github.com/HarpyWar/pvpgn/pull/117

Получилось то что нужно?
Конкретно, проблема была в кривой раскладке при отображении русского motd при входе через warcraft 2.

До этого были планы понаделать веток для своих фиксов и делать pull request целых веток, как написано тут: habrahabr.ru/post/125999/

При этом вести свой форк, с автоматическим отслеживанием обновлений родительского и отправляя pull-request'ы нужных всем коммитов,
Но потом понял, что для меня на данном этапе понимания git это перебор...

6

Re: Поправьте, пожалуйста: could not give up privileges (exiting)

Pull request сделан верно.
Но если предполагается делать не одно изменение, то лучше их делать в разных ветках - это стандартная практика. Иначе, если pull request из твоей master ветки будет висеть долго без закрытия, и в нее будешь добавлять новые изменения, то они автоматически добавятся в существующий pull request.
После принятия изменений из сделанного pull request'a ветку, из которой он был сделан, можно удалить за ненадобностью.

Do not ask for support in PM.

Posts: 6

Pages 1

You must login or register to post a reply

Who now at forum

Currently view post: 0 guests, 0 registered users

forums.pvpgn.pro → [RU] Research & Development → Поправьте, пожалуйста: could not give up privileges (exiting)