aMule Forum

Portuguese => Ajuda aMule => Topic started by: rommel on May 13, 2004, 04:22:29 PM

Title: Patch para as Happy Hours
Post by: rommel on May 13, 2004, 04:22:29 PM
Quem quiser usar as happy hours sem matar o amule tem aqui este patch.

Procedimento de utilização:

1) copiar o patch para a directoria dos sources do amule

2) patch -p1 < patch.diff

3) ./configure --enable-amulecmd

4) make , make install

5) fazer um ficheiro int.in com o seguinte:

SERVER CONNECT 195.245.244.243 4661
reloadipf
quit

6) fazer um ficheiro nac.in com o seguinte:

reloadipf
SERVER CONNECT sado.kicks-ass.net 4661
quit

7) fazer um script int.sh com:

cp /directorio com filtro internacional/ipfilter.dat /user-dir/.aMule/.
amulecmd < int.in

8) fazer um script nac.sh com:

cp /directorio com filtro nacional/ipfilter.dat /user-dir/.aMule/.
amulecmd < nac.in

9) crontab -e
inserir algo tipo:

05 1 * * * /dir dos scripts/int.in >> /dev/null
55 6 * * * /dir dos scripts/nac.in >> /dev/null

e já está.
Das 1h05 ás 6h55 temos trafego internacional :)
Title: Re: Patch para as Happy Hours
Post by: livebrain on May 18, 2004, 05:42:08 AM
deu.me 1 erro ao executar esses passos, se alguem me puder ajudar

root@slack:# patch -p1 < patch.diff
patching file src/ExternalConn.cpp
Hunk #1 FAILED at 44.
Hunk #2 succeeded at 901 with fuzz 2 (offset -77 lines).
1 out of 2 hunks FAILED -- saving rejects to file src/ExternalConn.cpp.rej
patching file src/TextClient.cpp
Hunk #1 succeeded at 48 (offset -4 lines).
Hunk #2 succeeded at 188 (offset 32 lines).
Hunk #3 succeeded at 188 (offset -4 lines).
Hunk #4 succeeded at 268 with fuzz 2 (offset 32 lines).
Hunk #5 succeeded at 355 (offset -4 lines).

root@slack:# make

(...)
make[2]: Entering directory `/usr/src/aMule-1.2.6/src'
if g++ -DHAVE_CONFIG_H -I. -I. -I..    -I/usr/lib/wx/include/base-2.4 -D_FILE_OFSET_BITS=64 -D_LARGE_FILES -DWXBASE -g   -MT amulecmd-TextClient.o -MD -MP -MF".deps/amulecmd-TextClient.Tpo" \
  -c -o amulecmd-TextClient.o `test -f 'TextClient.cpp' || echo './'`TextClientcpp; \
then mv ".deps/amulecmd-TextClient.Tpo" ".deps/amulecmd-TextClient.Po"; \
else rm -f ".deps/amulecmd-TextClient.Tpo"; exit 1; \
fi
TextClient.cpp: In function `int ProcessCommand(int)':
TextClient.cpp:270: no matching function for call to `wxSocketClient::
   SendRecvMsg(char[256])'
TextClient.cpp:273: no matching function for call to `wxSocketClient::
   SendRecvMsg(const char[10])'
make[2]: *** [amulecmd-TextClient.o] Error 1
make[2]: Leaving directory `/usr/src/aMule-1.2.6/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/aMule-1.2.6'
make: *** [all] Error 2

não estou a ver o que estou a fazer de errado :/
Title: Re: Patch para as Happy Hours
Post by: rommel on May 18, 2004, 09:09:54 AM
Esta patch é para o 2.0.0rc3 e não para o 1.2.6
Title: Re: Patch para as Happy Hours
Post by: livebrain on May 21, 2004, 06:32:34 AM
ja ta a funcionar, embora n tenha usado :

"9) crontab -e
inserir algo tipo:

05 1 * * * /dir dos scripts/int.in >> /dev/null
55 6 * * * /dir dos scripts/nac.in >> /dev/null"

não dava nada (talvez estivesse a fazer algo de errado  ?()
usei :
crontab -l

05 1 * * * cp /home/jorge/.aMule/ipfilter/int/ipfilter.dat /home/jorge/.aMule
05 1 * * * amulecmd < /home/jorge/.aMule/int.in
55 6 * * * cp /home/jorge/.aMule/ipfilter/nac/ipfilter.dat /home/jorge/.aMule
55 6 * * * amulecmd < /home/jorge/.aMule/nac.in

tkz pelo patch rommel  :D
Title: Re: Patch para as Happy Hours
Post by: rommel on May 21, 2004, 04:09:41 PM
:( estás certo

Há um erro no ponto nove.
Devia ser:

05 1 * * * sh /dir dos scripts/int.sh >> /dev/null
55 6 * * * sh /dir dos scripts/nac.sh >> /dev/null"
Title: amulecmd
Post by: fp2099 on June 02, 2004, 11:22:50 AM
Isto devia funcionar se o amulecmd não estivesse todo confuso:
aMule$ SERVER CONNECT 217.82.126.187 8888
Not Connected
Title: Re: Patch para as Happy Hours
Post by: To on June 21, 2004, 12:47:06 PM
O filtro internacional que estás a falar é o mesmo que usar um file em branco certo?


EDITED: Até obter uma resposta eu modifiquei um ipfilter.dat e mudei todas as linas que tinham ******* por # Permitido para happy-hours
Mas fico a aguardar comentários.



Title: Re: Patch para as Happy Hours
Post by: rommel on June 21, 2004, 01:19:01 PM
A intenção de quem implementou o ipfilter no amule é a de filtrar os cuscos das companhias discograficas e cinematograficas, etc.

Ao usar como filtro nacional estes cuscos já ficam filtrados visto que eles não têm ips nacionais, mas, ao usar nas happy hours um filtro internacional convém que os ips destes cuscos estejam no ficheiro.

Também podes usar um ficheiro vazio mas tu é que sabes...
Title: RE: amulecmd
Post by: To on June 21, 2004, 11:22:10 PM
Quote
Originally posted by fp2099
Isto devia funcionar se o amulecmd não estivesse todo confuso:
aMule$ SERVER CONNECT 217.82.126.187 8888
Not Connected

Depois de resolver os meus problemas e conseguir meter o amulecmd a funcionar tenho exactamente o mesmo problema!

Title: Re: Patch para as Happy Hours
Post by: rommel on June 22, 2004, 12:05:52 PM
O comando do amulecmd "SERVER CONNECT " aceita dois parametros.

O segundo parametro é o porto do servidor a conectar.

O primeiro parametro não é o IP do servidor mas sim o nome que aparece no menu de servidores no amule. Por exemplo, se é necessário conectar a um servidor que aparece como http://www.servidor.com no menu de servidores,  deve-se dar o comando "SERVER CONNECT http://www.servidor.com 1234". Se no menu de servidores aparecer o nome como um ip 123.123.123.123, deve-se dar o comando "SERVER CONNECT 123.123.123.123 1234".
Title: Re: Patch para as Happy Hours
Post by: falso on July 14, 2004, 04:29:23 AM
rommel se tiveres disposto a fazer este patch pra nova versao do amule, eu meto o na tree oficial do amule.

regards.
Title: Re: Patch para as Happy Hours
Post by: rommel on July 14, 2004, 12:21:49 PM
Aqui está.
Title: RE: amulecmd
Post by: iTT on July 16, 2004, 01:41:38 AM
Quote
Originally posted by To
Depois de resolver os meus problemas e conseguir meter o amulecmd a funcionar tenho exactamente o mesmo problema!

To pelo que me parece por outros foruns, que es user gentoo
como compilar o amule pelo emerge usando o patch para hh??
Title: Re: Patch para as Happy Hours
Post by: livebrain on July 19, 2004, 10:49:54 PM
rommel esse patch tb da para a rc5 ?
Title: Re: Patch para as Happy Hours
Post by: rommel on July 19, 2004, 11:42:35 PM
Sim, o patch para o rc4 dá para o rc5.
Title: Re: Patch para as Happy Hours
Post by: phoenix on July 20, 2004, 07:44:47 PM
rommel,

Vou colocar seu patch no cvs, com algumas alterações, ok?

Onde está a implementação do comando SERVER CONNECT?

Abraços,
phoenix.
Title: Re: Patch para as Happy Hours
Post by: rommel on July 20, 2004, 11:02:48 PM
ok.

O SERVER CONNECT está implementado no ExternalConn.cpp linha 1621 do rc5.
Title: Re: Patch para as Happy Hours
Post by: phoenix on July 21, 2004, 12:56:11 AM
Ok, então já estava implementado, beleza.

A parada está no cvs de hoje.

Tive que reescrever muita coisa, pois o amulecmd tava meio atrasado no tempo. Por favor, chequem pra ver se está legal.

Coloquei um comando para ligar/desligar o IPFilter. Quando ligar, ele remove as fontes que estiverem fora da especificação de IP no mesmo instante.

Abraços,
phoenix.
Title: Re: Patch para as Happy Hours
Post by: rommel on July 21, 2004, 11:57:43 AM
phoenix,

só não gosto de pôr a password na linha de comando.
Assim aparece na lista dos processos.
Se o computador for usado por mais users estes podem ver a password com "ps aux".
Title: Re: Patch para as Happy Hours
Post by: phoenix on July 21, 2004, 02:03:27 PM
rommel,

Você tem razão, desculpe, foi falta de atenção no seu patch. Vou colocar isso também, mas vou fazer de um outro jeito, pois estou fazendo uma limpa no amuleweb também, que tem muitas funções em comum. Assim fica mais fácil de manter.

Mais uns dois dias e deve ficar pronto.

Abraços,
phoenix.
Title: Re: Patch para as Happy Hours
Post by: To on July 21, 2004, 02:56:11 PM
Assim é que é  :baby: :baby: :baby: :baby:

Title: Re: Patch para as Happy Hours
Post by: phoenix on July 24, 2004, 05:16:21 AM
Galera,

Tá feito! Ficou bem legal. O parâmetro que tem que dar é -f, assim o amulecmd vai ler a configuração do arquivo ~/.eMule. Note que esse parametro agora vale também pro amulecmdDLG, pro amuleweb e pro amulewebDLG.

Qualquer problema, avisa.

Abraços,
phoenix.
Title: problema com esta nova funcionalidade
Post by: pmpfe on August 19, 2004, 03:57:52 AM
Cumprimentos pessoal.

Apesar de curtir mesmo buésdabués o amule, não consigo usar esta nova funcionalidade. Já tentei a versão 2.0.0rc5 com o patch do rommel e estou neste momento a usar a de cvs, e em nenhuma delas consigo que o amulecmd me altere o estado do ipfilter. No entanto, funciona bem para dar estatísticas e alterar o servidor a que está ligado, pelo que não percebo o problema.

Segue um exemplo de interacção:
Code: [Select]
aMulecmd$ Setipfilter off
aMulecmd$ alskdjfa
Syntax error!
aMulecmd$ Setipfilter on
aMulecmd$ GetIPLevel
aMulecmd$

Se alguém tiver, como eu, este problema,  a má solução que encontrei para remediar o problema é trocar os ficheiros de filtros e matar o amule:
Code: [Select]
bash-2.05b$ cat int.sh
cp -f /home/paulo/.aMule/scripts/ipfilter-internacional.dat /home/paulo/.aMule/ipfilter.dat
killall -TERM amule
# amulecmd -f < /home/paulo/.aMule/scripts/int.in
bash-2.05b$ cat nac.sh
cp -f /home/paulo/.aMule/scripts/ipfilter-nacional.dat /home/paulo/.aMule/ipfilter.dat
killall -TERM amule
# amulecmd -f < /home/paulo/.aMule/scripts/nac.in
bash-2.05b$ crontab -l
05 1 * * * /home/paulo/.aMule/scripts/int.sh
42 2 * * * /home/paulo/.aMule/scripts/nac.sh
43 2 * * * /home/paulo/.aMule/scripts/int.sh
55 6 * * * /home/paulo/.aMule/scripts/nac.sh
bash-2.05b$

Ora isto precisa que o amule se volte a lançar quando morre. Para isso, lanço a cena com um script que vai lançando amules novos sempre que um morre:
Code: [Select]
bash-2.05b$ cat /usr/local/bin/amulep
#!/bin/sh
while true
do
        date >> /home/paulo/.aMule/startLog.txt
        /usr/bin/amule
        sleep 10
done
bash-2.05b$

Sugestões para resolver o problema do amulecmd? Desculpem se não forneço mais detalhes de sintoma, mas não sei por onde lhe pegar.

Obrigado,
Paulo
Title: Re: Patch para as Happy Hours
Post by: phoenix on August 19, 2004, 01:21:35 PM
pmpfe,

Compare o que você obtém com isso que eu estou colocando aqui. Provavelmente o amulecmd não está conectado com o amule, pois você não obtém as respostas. Confere as senhas. Elas dever ser configuradas conforme explicado aqui: http://www.amule.org/wiki/index.php/Webserver

Abraços,
phoenix.

Code: [Select]
$ LD_LIBRARY_PATH=/usr/local/wxWidgets-cvs/lib/ verb-cvs/src/amulecmd -f

Creating client...
Now, doing connection....
Using host 'localhost' port:4712
Trying to connect (timeout = 10 sec)...
Succeeded! Connection established.

---------------------------------
|       aMule text client       |
---------------------------------


Use 'Help' for command list

aMulecmd$ help

----------------> Help: Avalaible commands (case insensitive): <----------------

Help:                   Shows this help.
Quit, Exit:             Exits Textclient.
Stats:                  Shows statistics.
Show DL:                Shows Download queue.
Resume n:               Resume file number n.
Pause n:                Pauses file number n.
ServerStatus:           Tell us if connected/not connected.
Connect:                Tries to connect to any server.
                        WARNING: Doesn't warn if failed
ConnectTo name port:    Connect to specified server and port.
Disconnect:             Disconnect from server.
ReloadIPF:              Reload IPFilter table from file.
Setipfilter on/off:     Turn on/of amule IPFilter.
GetIPLevel:             Shows current IP Filter level.
SetIPLevel : Changes current IP Filter level.

----------------------------> End of listing <----------------------------------
aMulecmd$ stats
 > Statistics:
 >  Downloading files: 290
 >  Found sources: 5
 >  Active downloads: 0
 >  Active Uploads: 3
 >  Users on upload queue: 3
aMulecmd$ GetIPLevel
 > aMule IP Filter level is 127.
aMulecmd$ SetIpFilter on
 > IPFilter state set to 'on'.
aMulecmd$ SetIpFilter off
 > IPFilter state set to 'off'.
aMulecmd$
Title: Re: Patch para as Happy Hours
Post by: pmpfe on August 20, 2004, 04:31:39 AM
Olá phoenix!

Antes de mais, obrigado pela prontidão na resposta.

Acho que não se trata de um problema de ligação. Primeiro, porque quando dou uma password errada, ou troco porta, ou coisa do género, os sintomas são diferentes, e o amulecmd aborta a operação muito mais cedo. Segundo, porque consigo obter dados do amule.

Segue um exemplo de interacção com o mesmo input que o teu, mais um "ServerStatus". Esta é a versão de cvs de ante-ontem.

Obrigado de novo,
Paulo

Code: [Select]
bash-2.05b$ amulecmd -f

Creating client...
Now, doing connection....
Using host 'localhost' port:4712
Trying to connect (timeout = 10 sec)...
Succeeded! Connection established.

---------------------------------
|       aMule text client       |
---------------------------------


Use 'Help' for command list

aMulecmd$ help

----------------> Help: Avalaible commands (case insensitive): <----------------

Help:                   Shows this help.
Quit, Exit:             Exits Textclient.
Stats:                  Shows statistics.
Show DL:                Shows Download queue.
Resume n:               Resume file number n.
Pause n:                Pauses file number n.
ServerStatus:           Tell us if connected/not connected.
Connect:                Tries to connect to any server.
                        WARNING: Doesn't warn if failed
ConnectTo name port:    Connect to specified server and port.
Disconnect:             Disconnect from server.
ReloadIPF:              Reload IPFilter table from file.
Setipfilter on/off:     Turn on/of amule IPFilter.
GetIPLevel:             Shows current IP Filter level.
SetIPLevel : Changes current IP Filter level.

----------------------------> End of listing <----------------------------------
aMulecmd$ stats
 > Statistics:
 >  Downloading files: 54
 >  Found sources: 4443
 >  Active downloads: 24
 >  Active Uploads: 3
 >  Users on upload queue: 4047
aMulecmd$ GetIPLevel
aMulecmd$ SetIpFilter on
aMulecmd$ SetIpFilter off
aMulecmd$ ServerStatus
 > Connected
aMulecmd$
Title: Re: Patch para as Happy Hours
Post by: phoenix on August 21, 2004, 01:00:12 AM
pmpfe,

Muito estranho esse comportamento. Você está conectado sim, mas os comandos GetIPLevel, SetIpFilter on e SetIpFilter off não estão fazendo nada. Por acaso você está usando uma versão UNICODE? O unicode ainda não está 100%, mas logo logo vai estar funcionando.

Abraços,
phoenix.
Title: Re: Patch para as Happy Hours
Post by: pmpfe on August 21, 2004, 06:42:18 AM
Viva,

Como posso ver se estou a usar unicode? A minha linha de configure foi:
Code: [Select]
./configure --disable-debug --enable-optimise --enable-amulecmd --enable-amulecmdgui --enable-webserver --enable-webservergui
Há algum processo de depuração que deva seguir?

Obrigado mais uma vez,
Paulo
Title: Re: Patch para as Happy Hours
Post by: phoenix on August 21, 2004, 09:45:24 AM
pmpfe,

Tecla o comando: wx-config --libs

Abraços,
phoenix.
Title: Re: Patch para as Happy Hours
Post by: pmpfe on August 21, 2004, 03:49:47 PM
Code: [Select]
bash-2.05b$ wx-config --libs
-pthread -lwx_gtk-2.4
bash-2.05b$

Paulo
Title: Re: Patch para as Happy Hours
Post by: pmpfe on August 21, 2004, 04:03:50 PM
Desculpa, phoenix, só descobri agora mesmo que a versão do amule que estava a correr e onde experimentava as coisas era um 2.0.0rc5 sem patch, que tinha esquecido no /usr/bin, e era por isso que nada funcionava.

Desculpa mesmo a estupidez. :]

Não há nada de errado com o amule.

Obrigadão na mesma,
Paulo
Title: Re: Patch para as Happy Hours
Post by: phoenix on August 22, 2004, 01:03:06 PM
pmpfe,

Ei, sem problemas, tamos aqui pra isso!

Se você puder compilar, tenta o cvs de amanhã que parece estar muito bom, provavelmente vai ser o rc6.

Abraços,
phoenix.
Title: Re: Patch para as Happy Hours
Post by: livebrain on August 24, 2004, 01:16:45 PM
phoenix     
Quote
tenta o cvs de amanhã

a versao seria 20040823

compilei e instalei essa versao (aproveitei e instalei o wxgtk2.5.1 (com suporte para gtk1 pq gtk2 da erro no slack  ?( ) o problema é que o amulecmd da :

Code: [Select]
$ amulecmd -f

Creating client...
Now, doing connection....
Using host 'localhost' port:4712
Trying to connect (timeout = 10 sec)...
Connection Failed. Unable to connect to the specified host

no amule aparece isto :

Code: [Select]
New external connection accepted
Connection closed.

aproveitei tanto a pasta .aMule e o fixeiro .eMule da versao anterior.

tentei instalar a versao 20040824 mas da-me 1 erro no make :

Code: [Select]
ECSocket.cpp:35: error: prototype for `ECSocket::ECSocket(wxSockAddress&,
   wxEvtHandler&, int)' does not match any in class `ECSocket'
ECSocket.h:40: error: candidates are: ECSocket::ECSocket(const ECSocket&)
ECSocket.h:46: error:                 ECSocket::ECSocket(wxSockAddress&,
   wxEvtHandler*, int)
ECSocket.cpp:29: error:                 ECSocket::ECSocket()
ECSocket.cpp: In constructor `ECSocket::ECSocket(wxSockAddress&, wxEvtHandler&,
   int)':
ECSocket.cpp:37: error: `wxSOCKET_REUSEADDR' undeclared (first use this
   function)
ECSocket.cpp:37: error: (Each undeclared identifier is reported only once for
   each function it appears in.)
make[4]: *** [amule-ECSocket.o] Error 1
make[4]: Leaving directory `/usr/src/amule-cvs/src'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/usr/src/amule-cvs/src'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/usr/src/amule-cvs/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/amule-cvs'
make: *** [all] Error 2

se alguem me puder indicar o que puderei estar a fazer de errado :)

cumps
Title: Re: Patch para as Happy Hours
Post by: phoenix on August 24, 2004, 03:42:46 PM
livebrain,

Você deu um certo azar. O cvs do dia 24 foi com um bug na compilação no caso de usar o wx-2.4.2. Esse bug já foi corrigido por mim na versão de hoje. Tenta com a de amanhã, ou tentão, se estiver com pressa, coloca #include "gsocket-fix.h" no arquivo ECSocket.cpp.

Outra coisa, o amuleweb e o amulecmd não funcionam com wx-2.5.1. Tente com o 2.4.2 ou com o 2.5.2. No caso do 2.5.2, a interface do aMule pode ficar com alguns probleminhas, nada grave, apenas uns controles de tamanho errado.

Estão havendo algumas mudanças sérias no aMule, relacionadas com a separação de core/gui. Até o momento, tem estado tudo funcionando, mas qualquer anormalidade, seria legal se vocês avisassem. Essa é uma das grandes features da versão 2.0.0 final.

Abraços,
phoenix.