Помощ - Търси - Регистрирани - Календар
Пълна версия: Bug, или на мен така ми се струва?
UniBG Forums > Дискусии > Dexter's Lab > Програмиране
Polizei
Първо какво пиша в канала:
CODE
* Polizei sets mode: +b *!*@87.126.247.42
* inetd (inetd@87-126-247-42.btc-net.bg) has left #testb0ts

После в бота:
CODE
<Polizei> .dump PART #testb0ts
<inetd> [09:21] #Polizei# dump PART #testb0ts
<inetd> [09:21] *** (#testb0ts) inetd needs unban: Waiting response from CS...
<inetd> [09:21] -CS (ChanServ@UniBG.services)- You are not banned on channel #testb0ts

И така десетина пъти докато не му махнах банана ръчно.
Както се вижда, ip-то което на което сложих бан има hostname 87-126-247-42.btc-net.bg, ама сървъра е умен, а сервиза - не чак толкова...
Оставям коментарите на вас!
EDIT: Същите мизерии се получават и при банове от тип *!*@AAAA:BBBB:CCCC:DDDD::/subnet-length или *!*@xxx.yyy.zzz.uuu/subnet-length
CS пак не ги вижда, но за сървъра са валидни банове, и не би ме пуснало в канала, освен ако не изчистя всички банове, което не мисля че е решение на въпроса...
offgeboren
QUOTE(Polizei @ Jan 25 2008, 09:32 AM) *
Първо какво пиша в канала:
CODE
* Polizei sets mode: +b *!*@87.126.247.42
* inetd (inetd@87-126-247-42.btc-net.bg) has left #testb0ts

После в бота:
CODE
<Polizei> .dump PART #testb0ts
<inetd> [09:21] #Polizei# dump PART #testb0ts
<inetd> [09:21] *** (#testb0ts) inetd needs unban: Waiting response from CS...
<inetd> [09:21] -CS (ChanServ@UniBG.services)- You are not banned on channel #testb0ts

И така десетина пъти докато не му махнах банана ръчно.
Както се вижда, ip-то което на което сложих бан има hostname 87-126-247-42.btc-net.bg, ама сървъра е умен, а сервиза - не чак толкова...
Оставям коментарите на вас!
EDIT: Същите мизерии се получават и при банове от тип *!*@AAAA:BBBB:CCCC:DDDD::/subnet-length или *!*@xxx.yyy.zzz.uuu/subnet-length
CS пак не ги вижда, но за сървъра са валидни банове, и не би ме пуснало в канала, освен ако не изчистя всички банове, което не мисля че е решение на въпроса...

nali si programist, predvid kvo pisa za modificiraneto na xchat v edna druga tema, makar che az lichno nishto ne razbrah ot tova, koeto si promenyal.. grabvash source-a na ratbox-services ot website-a im i gi razshiryavash, taka che da otchitat i ip-tata na potrebitelite, a ne samo hostnames i razshiryavash unban komandata i tya da match-va po ip i ip ranges na principa na ircd-tata.
Polizei
QUOTE(offgeboren @ Jan 27 2008, 11:50 AM) *
nali si programist, predvid kvo pisa za modificiraneto na xchat v edna druga tema, makar che az lichno nishto ne razbrah ot tova, koeto si promenyal.. grabvash source-a na ratbox-services ot website-a im i gi razshiryavash, taka che da otchitat i ip-tata na potrebitelite, a ne samo hostnames i razshiryavash unban komandata i tya da match-va po ip i ip ranges na principa na ircd-tata.

Ако го направя някой въобще ще си направи ли труда да ползва моя patch?
Не вярвам...
Но пък щом си дал идеята, откъде да дръпна source-а на ratbox-services които ползвате в УниБГ (ако са по-различни от оригиналните) ? Или поне някаква информация за версията, да знам с кой source да се бъзикам?
NoEx
QUOTE(Polizei @ Jan 27 2008, 08:32 PM) *
Ако го направя някой въобще ще си направи ли труда да ползва моя patch?
Не вярвам...
Но пък щом си дал идеята, откъде да дръпна source-а на ratbox-services които ползвате в УниБГ (ако са по-различни от оригиналните) ? Или поне някаква информация за версията, да знам с кой source да се бъзикам?


От тук можеш да изтеглиш последната стабилна версия:
http://services.ircd-ratbox.org/download.shtml
offgeboren
QUOTE(Polizei @ Jan 27 2008, 07:32 PM) *
Ако го направя някой въобще ще си направи ли труда да ползва моя patch?
Не вярвам...
Но пък щом си дал идеята, откъде да дръпна source-а на ratbox-services които ползвате в УниБГ (ако са по-различни от оригиналните) ? Или поне някаква информация за версията, да знам с кой source да се бъзикам?

svn trunk ot oficialniat site na ratbox-services, razbira se.
Polizei
Пляс!
Натисни да отвориш файла
Готово!
Не е най-добрата имплементация, но пък работи!
За тестове, polizei.us.to, оставям го пуснат за няколко дни, докато не се сетя да му утрепя процеса...
Ако някой си направи труда да погледне из сорса, ще види че всичко основно седи в src/channel.c, където съм 'плеснал' функцията my_matchmask(char *, char *), и после съм заместил обикновените match(...)'es в src/s_chanserv.c с новата функция...
Ползва се gethostbyname2/gethostbyname за намиране на адресите, и съм нагнездил няколко #ifndef-а, ако някой тръгне да компилира на машина без базовите функции за IPv6...

Any bug reports are welcome!
offgeboren
nyakolko vaprosa..
Zashto definirash nova match() funkcia?
Zashto novata ti match() funkcia e neefektivna spryamo match(), che daje pravi vutre v sebe si 3 povikvania kum match()?
Lyubopitno mi e otkude tochno idva vuprosnata funkcia? /sumnyava me da e napisana za edna vecher/
Zashto izhojdash ot client_p->user->mask za funkciata ti, sled koeto go podavash kum funkcia, koiato e napravena da razbiva nick!user@host/subnetlength, pri polojenie, che v client_p->user->mask nikoga nyama da imash cidr maska, vijda mi se malko bezsmisleno, osobeno kato se ima predvid, che i 3-te (nick ident, host) sa dostupni pootdelno?
Zashto tvoiata match funkcia ne e definirana pri drugata match() funkcia, bi bilo logichno da e tam, ne zabravyaj, che i sled teb nyakoj shte tryabva da modificira i/ili poddurja source-a?
I ne na posledno myasto, zashto ne izpolzvash realniat ip adres na vseki edin potrebitel, kakto pravi i ircd-to i kakto ochakvah, che shte podhodish, a izhojdash ot nick!user@host maskata?

p.s. i polzvaj svn trunk na services, ne sluchajno go kazvam.
dreben
Моля някой колега да премести темата в програмистния раздел, поради моментна невъзможност да се логна във форума с оперативен акаунт.
Polizei
QUOTE(offgeboren @ Jan 28 2008, 08:40 AM) *
nyakolko vaprosa..
Zashto definirash nova match() funkcia?
Zashto novata ti match() funkcia e neefektivna spryamo match(), che daje pravi vutre v sebe si 3 povikvania kum match()?
Lyubopitno mi e otkude tochno idva vuprosnata funkcia? /sumnyava me da e napisana za edna vecher/
Zashto izhojdash ot client_p->user->mask za funkciata ti, sled koeto go podavash kum funkcia, koiato e napravena da razbiva nick!user@host/subnetlength, pri polojenie, che v client_p->user->mask nikoga nyama da imash cidr maska, vijda mi se malko bezsmisleno, osobeno kato se ima predvid, che i 3-te (nick ident, host) sa dostupni pootdelno?
Zashto tvoiata match funkcia ne e definirana pri drugata match() funkcia, bi bilo logichno da e tam, ne zabravyaj, che i sled teb nyakoj shte tryabva da modificira i/ili poddurja source-a?
I ne na posledno myasto, zashto ne izpolzvash realniat ip adres na vseki edin potrebitel, kakto pravi i ircd-to i kakto ochakvah, che shte podhodish, a izhojdash ot nick!user@host maskata?

p.s. i polzvaj svn trunk na services, ne sluchajno go kazvam.

Защо нова... Ами защото функция match() се ползва и за други сравнения, не само за nick!user@host маски. Изхождам от nick!user@host, тъй като не видях откъде services получават информация за IP адреса на потребителя. Също така, ако изходиш от nick, user и host по отделно, в крайна сметка пак ще се налага пак да ги сливаш в 1, я със snprintf(), я със strcat(), и пак опираш до първия match(). Именно преди втория и третия match може би трябваше да се направи една проверка за '/' със strchr(), но не ми дойде на акъла... За това че можеше да я дефинирам при match(), или в отделен файл съм напълно съгласен.
А току що checkout-нах svn repo-то, и ще разгледам кода...
/6 часа, не 1 вечер/
offgeboren
pregledaj sushto funkciite can_join() i is_banned() ot source-a na ircd-ratbox i sledvaj primera, zashtoto tova e edinstveniat priemliv za men nachin tova da bude implementirano, kakto i da stane chast ot oficialniat release na rserv-a.
Polizei
След един мейл до ircd-ratbox@lists.ratbox.org ->
http://ircd.ratbox.org/cgi-bin/index.cgi?r...52&view=rev
Това ми стига!
А че не съм видял client_p->user->ip, грешката си е моя...
Това е семпла версия на форума. За да видиш пълната версия, която има повече информация, по-добра подредба и снимки, натисни тук.
Invision Power Board © 2001-2008 Invision Power Services, Inc.