Forum: Italian Ruby user group Ruby serial and telnet scripts/programs

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
7851aa291dd3fd947e81ac67b5f76c07?d=identicon&s=25 Giovanni (Guest)
on 2006-06-06 14:10
Ciao a tutti,

E' ormai un mese che cerco di utilizzare ROR per testare pabx e router
via serial port oppure telnet.
Prima di tutto non mi e' chiaro se devo usare Freeride, fxri oppure
Scite.
Secondo ho seguito vari tutorial di base e ho imparato a fare qualche
semplice programmino, non sono sicuro di aver installato tutto il
necessario, non mi sembra un linguaggio immediato e visuale.

Tornando al mio problema, sto cercando uno script per collegarmi ad un
router via v.24 o telnet. Settarlo abilitando ADSL e Wireless e poi
testarlo con un semplice ping test.

Vi ringrazio e spero in una vostra pronta risposta,
Giovanni
9953e594f8d4f583d12079268e7f71fc?d=identicon&s=25 Ripley (Guest)
on 2006-06-06 18:57
(Received via mailing list)
Giovanni wrote:
> Ciao a tutti,
>
> E' ormai un mese che cerco di utilizzare ROR per testare pabx e router
> via serial port oppure telnet.
>
Premetto che sto cominciando a pensare in ruby solo da poco :-)
ma per come la vedo io (e per come ho visto fare in qualche altro
software
a cui ho dato un'occhiata ma di cui non ricordo il nome :-)) con Rails
dovresti
realizzare esclusivamente la parte web della tua applicazione e
comunicare
con un altro piccolo demone ruby che esporti le funzionalita' necessarie
a colloquiare con il router mediante dRb.

L'applicazione dRb potrebbe colloquiare con il router mediante la
libreria
Net::Telnet che trovi di serie con ruby :-)

un test che ho fatto io sul mio router lo puoi trovare qui:
http://www.salug.it/~ripley/posts/20060527-net_telnet.html

non e' un granche' ma rende l'idea :-)
per il resto su www.ruby-doc.org e www.rubymanual.org
trovi l'API doc.
> Prima di tutto non mi e' chiaro se devo usare Freeride, fxri oppure
> Scite.
>
Quello che preferisci... io uso emacs ;-P
> Secondo ho seguito vari tutorial di base e ho imparato a fare qualche
> semplice programmino, non sono sicuro di aver installato tutto il
> necessario, non mi sembra un linguaggio immediato e visuale.
>
Molto dipende dal tuo background e le tue abitudini precedenti.

Tieni conto che Rails e' un framework di sviluppo web agile per cui
tutto si traduce in codice (e cioe' in ruby) come il modello agile
prevede.

Quindi la sua immediatezza non deriva tanto dalla sua 'visualita''
quanto dalla capacita' di sintesi (dry) che il framework (e il
linguaggio)
ti permettono di mettere in campo.
> Tornando al mio problema, sto cercando uno script per collegarmi ad un
> router via v.24 o telnet. Settarlo abilitando ADSL e Wireless e poi
> testarlo con un semplice ping test.
>
Come ho scritto prima lo script probabilmente sarebbe meglio tenerlo
semplice
e svincolato da rails (ruby puro per intenderci), parole chiave:
* Net::Telnet
* dRb
> Vi ringrazio e spero in una vostra pronta risposta,
> Giovanni
>
facci sapere come procede ;-)
rpl
9daa9b4739a6e95078cbcfb624d7bb8e?d=identicon&s=25 David Welton (Guest)
on 2006-06-06 19:09
(Received via mailing list)
> E' ormai un mese che cerco di utilizzare ROR per testare pabx e router
> via serial port oppure telnet.

Rails e Ruby sono degli ottimi strumenti, ma in quel settore la`,
molte aziende (cisco, ecc) usano Tcl per fare il loro testing, ed e`
abbastanza adatto a questo scopo...  Volendo, potresti scrivere i veri
test in Tcl, e poi creare un'interfaccia carina con Rails.

--
David N. Welton
 - http://www.dedasys.com/davidw/

Linux, Open Source Consulting
 - http://www.dedasys.com/
05720447a341aaffb8827039df3931df?d=identicon&s=25 Luca Mearelli (Guest)
on 2006-06-07 09:56
(Received via mailing list)
ciao,

On 6/6/06, Ripley <ripley@salug.it> wrote:
>
>
> Come ho scritto prima lo script probabilmente sarebbe meglio tenerlo
> semplice
> e svincolato da rails (ruby puro per intenderci), parole chiave:
> * Net::Telnet
> * dRb


+1
fra l'altro utilizzando backgroundrb (ora disponibile come plugin) e'
MOLTO
semplice integrare dei processi ruby eseguiti vi dRb con una interfaccia
Rails.

Vedi: http://brainspl.at/articles/2006/05/25/backgroundr...

bye
Luca
B98b730b32e654279984303db2f0b356?d=identicon&s=25 Tiziano Longo (Guest)
on 2006-06-07 11:22
(Received via mailing list)
> > E' ormai un mese che cerco di utilizzare ROR per testare pabx e router
> > via serial port oppure telnet.
>
> Rails e Ruby sono degli ottimi strumenti, ma in quel settore la`,
> molte aziende (cisco, ecc) usano Tcl per fare il loro testing, ed e`
> abbastanza adatto a questo scopo...  Volendo, potresti scrivere i veri
> test in Tcl, e poi creare un'interfaccia carina con Rails.

Visto che David ti consiglia Tcl io mi sento di consigliarti Perl,
poi dipende dai gusti di ognuno... :) cmq googlando ho trovato questi
due link:

http://www.perlfect.com/articles/telnet.shtml
http://search.cpan.org/~cook/Device-SerialPort-1.0...

Ciao
Tiziano
7851aa291dd3fd947e81ac67b5f76c07?d=identicon&s=25 Giovanni (Guest)
on 2006-06-07 17:00
Ripley wrote:

> con Rails
> dovresti
> realizzare esclusivamente la parte web della tua applicazione e
> comunicare
> con un altro piccolo demone ruby che esporti le funzionalita' necessarie
> a colloquiare con il router mediante dRb.

Come accedo a rails, sembrerebbe che fino ad ora ho utilizzato solo
Ruby.

> L'applicazione dRb potrebbe colloquiare con il router mediante la
> libreria
> Net::Telnet che trovi di serie con ruby :-)
>
> un test che ho fatto io sul mio router lo puoi trovare qui:
> http://www.salug.it/~ripley/posts/20060527-net_telnet.html
>
> non e' un granche' ma rende l'idea :-)

Grazie, questo esempio mi ha chiarito un po le idee ed sono riuscito ad
accedere via telnet al mio router. Ora il problema e' che non effettua
il login.
<input>
#! ruby/bin/ruby

require 'net/telnet'

sigma = Net::Telnet::new("Host" => "192.168.1.1",
                               "Timeout" => 10,
                               "Prompt" => /[$%#>] \z/n)
sigma.login("engineer", "engineer") { |c| print c }

sigma.close
<output>
LAKE Communications
Login:>exit

>> Prima di tutto non mi e' chiaro se devo usare Freeride, fxri oppure
>> Scite.
>>
> Quello che preferisci... io uso emacs ;-P

Continuo ad utilizzare Freeride e mi sento costretto ad imparare un
nuovo linguaggio di programmazione

Grazie mille
3dfa913cbcfe896af79e0484084c316b?d=identicon&s=25 Pietro Maggi (Guest)
on 2006-06-10 15:59
(Received via mailing list)
+1 per TCL
Come David io sono per utilizzare lo strumento migliore per ogni lavoro.
Partiamo dal tuo problema, un semplice script che si collega in
seriale o (meglio) Telnet ad un router per configurare dei parametri
ed effettuare dei ping di test.

TCL+Expect è esattamente quanto serve per questi lavori e lo trovi già
preinstallato su qualsiasi distribuizione seria di linux (ed anche in
Mac OS X).
Personalmente utilizzo uno script da due soldi per configurare il mio
router (da 1 soldo) con il mio ibook (da qualche parte i soldi dovevo
pure spenderli :-D).

segue (parte) doRouterSetup.tcl --->
#! /usr/bin/expect --
set timeout -1
spawn telnet 192.168.1.1
expect_before {
"not_connected" exit
"host idle" exit
"ogin incorrect" exit
}

expect "ogin: "
send "root\r"

expect "ssword: "
send "supersecretpwd\r"

expect "# "
send "cd /proc/sys\r"

e via dicendo fino al finale

expect "# "
send "exit\r"
interact

<<<----

Una cosa proprio banale banale, ma per aprire una sessione telnet e
mandare una serie di comandi serve veramente proprio con tcl+expect.

Ciao
Pietro

2006/6/7, Giovanni <giomaut@yahoo.com>:
9953e594f8d4f583d12079268e7f71fc?d=identicon&s=25 Ripley (Guest)
on 2006-06-10 18:53
(Received via mailing list)
Pietro Maggi wrote:
> pure spenderli :-D).
>
>
> Pietro
>> > a colloquiare con il router mediante dRb.
>> >
>> sigma = Net::Telnet::new("Host" => "192.168.1.1",
>>                                "Timeout" => 10,
>>                                "Prompt" => /[$%#>] \z/n)
>> sigma.login("engineer", "engineer") { |c| print c }
>>
>> sigma.close
>> <output>
>> LAKE Communications
>> Login:>exit
Nei sorgenti di Net::Telnet leggo:

# File net/telnet.rb, line 706
    def login(options, password = nil) # :yield: recvdata
      login_prompt = /[Ll]ogin[: ]*\z/n
      password_prompt = /Password[: ]*\z/n
      if options.kind_of?(Hash)
        username = options["Name"]
        password = options["Password"]
        login_prompt = options["LoginPrompt"] if options["LoginPrompt"]
        password_prompt = options["PasswordPrompt"] if
options["PasswordPrompt"]
      else
        username = options
      end

A occhio e croce (non ho provato) il problema potrebbe essere dovuto al
fatto che il prompt
dell'apparato che vuoi controllare contiene un '>' dopo 'ogin:'

quindi in teoria facendo qualcosa del tipo:

sigma.login({ "Name" => "engineer", "Password" => "engineer",
"LoginPrompt" => /[Ll]ogin:>/n) { |c| print c }

e magari PassWordPrompt se e' il caso, dovresti risolvere :-)


Sarebbe carino avere un dsl ruby sullo stile di expect, ne ho trovato
uno su rubyforge ma non
mi ha soddisfatto tanto :-(

bye,
rpl
7851aa291dd3fd947e81ac67b5f76c07?d=identicon&s=25 Giovanni (Guest)
on 2006-07-27 13:08
Sono riuscito a colloquiare con il router
con questo script, che poi era quello di partenza
>>> sigma = Net::Telnet::new("Host" => "192.168.1.1",
>>>                                "Timeout" => 10,
>>>                                "Prompt" => /[$%#>] \z/n)
>>> sigma.login("engineer", "engineer") { |c| print c }
>>>sigma.cmd("ip ping 192.168.1.1") { |c| print c }
>>> sigma.close

ora cio che vorrei fare caricare un nuovo firmware over uno vecchio 100
volte.
e verificare la versione corrente

Dovrei fare un ciclo for, ma qual'e' il comando per fare un upload del
file.

In secondo luogo, secondo voi e' possibile creara una sorta di record
and playback della web console application del mio router. Mi spiego se
volessi registrare le modifiche apportare al router via web, resettare
il sistema, riprodurle e comparare i due script.

Grazie per il vostro aiuto!!
Giovanni

Ripley wrote:
> Pietro Maggi wrote:
>> pure spenderli :-D).
>>
>>
>> Pietro
>>> > a colloquiare con il router mediante dRb.
>>> >
>>> sigma = Net::Telnet::new("Host" => "192.168.1.1",
>>>                                "Timeout" => 10,
>>>                                "Prompt" => /[$%#>] \z/n)
>>> sigma.login("engineer", "engineer") { |c| print c }
>>>
>>> sigma.close
>>> <output>
>>> LAKE Communications
>>> Login:>exit
> Nei sorgenti di Net::Telnet leggo:
>
> # File net/telnet.rb, line 706
>     def login(options, password = nil) # :yield: recvdata
>       login_prompt = /[Ll]ogin[: ]*\z/n
>       password_prompt = /Password[: ]*\z/n
>       if options.kind_of?(Hash)
>         username = options["Name"]
>         password = options["Password"]
>         login_prompt = options["LoginPrompt"] if options["LoginPrompt"]
>         password_prompt = options["PasswordPrompt"] if
> options["PasswordPrompt"]
>       else
>         username = options
>       end
>
> A occhio e croce (non ho provato) il problema potrebbe essere dovuto al
> fatto che il prompt
> dell'apparato che vuoi controllare contiene un '>' dopo 'ogin:'
>
> quindi in teoria facendo qualcosa del tipo:
>
> sigma.login({ "Name" => "engineer", "Password" => "engineer",
> "LoginPrompt" => /[Ll]ogin:>/n) { |c| print c }
>
> e magari PassWordPrompt se e' il caso, dovresti risolvere :-)
>
>
> Sarebbe carino avere un dsl ruby sullo stile di expect, ne ho trovato
> uno su rubyforge ma non
> mi ha soddisfatto tanto :-(
>
> bye,
> rpl
13f82955e082d6eaff16ee7cc84706b1?d=identicon&s=25 tele (Guest)
on 2006-07-27 14:27
(Received via mailing list)
Devi usare il comando che usa il tuo router per uplodare il firmware
non c'e' un comando specifico usando la net/telnet.
7851aa291dd3fd947e81ac67b5f76c07?d=identicon&s=25 Giovanni (Guest)
on 2006-07-31 14:48
tele wrote:
> Devi usare il comando che usa il tuo router per uplodare il firmware
> non c'e' un comando specifico usando la net/telnet.

ok! Purtroppo non c'e' un comando nel mio router per uplodare... ma
sulla web console si. Possibile?!?!

Ora il mio problema e' con "waitfor"
voglio fare un "system restart" pero dopo aver ricevuto risposta ad un
"system config save".

Input
<<
....
sigma.cmd("system config save"){|c| print c}
sigma.waitfor('Code version is 169'){|c| print c}
sigma.cmd("system restart"){|c| print c}
sigma.waitfor('Starting POTS'){|c| print c}
sigma.close

>>

Ricevo
<<
c:/ruby/lib/ruby/1.8/net/telnet.rb:554 in 'readpartial':Invalid argument
(Errno::EINVAL)
c:/ruby/lib/ruby/1.8/net/telnet.rb:554 in 'waitfor'
c:/ruby/lib/ruby/1.8/net/telnet.rb:680 in 'cmd'

Che suggerite?

Grazie mille
13f82955e082d6eaff16ee7cc84706b1?d=identicon&s=25 tele (Guest)
on 2006-07-31 15:01
(Received via mailing list)
matcha il prompt, quando ritorna al prompt vuol dire che ha finito di
fare il comando.

ad es:
@t_session.puts commands[0]
@t_session.waitfor(/.*>/) {|str| print str }

usa le regexp

ciao
7851aa291dd3fd947e81ac67b5f76c07?d=identicon&s=25 Giovanni (Guest)
on 2006-08-01 16:32
tele wrote:
> matcha il prompt, quando ritorna al prompt vuol dire che ha finito di
> fare il comando.
>
> ad es:
> @t_session.puts commands[0]
> @t_session.waitfor(/.*>/) {|str| print str }
>
> usa le regexp
>
> ciao

Ho provato con:

sigma.waitfor("Starting POTS" => match, "timeout" => 20){|c| print c}

c:/ruby/lib/ruby/1.8/net/telnet.rb:551 in 'waitfor'
7851aa291dd3fd947e81ac67b5f76c07?d=identicon&s=25 Giovanni (Guest)
on 2006-08-04 13:34
Il problema esattamente e' che quando effettua il restart, lo script non
aspetta il riavvio del router e ricevo errori:
554 in readpartial
554 in waitfor
678 in cmd

<input>
....
sigma.cmd("system restart"){|c| print c}
sigma.waitfor("Prompt" => 'Starting POTS', "Timeout" => 400000){|c|
print c}
sigma.close









Giovanni wrote:
> tele wrote:
>> matcha il prompt, quando ritorna al prompt vuol dire che ha finito di
>> fare il comando.
>>
>> ad es:
>> @t_session.puts commands[0]
>> @t_session.waitfor(/.*>/) {|str| print str }
>>
>> usa le regexp
>>
>> ciao
>
> Ho provato con:
>
> sigma.waitfor("Starting POTS" => match, "timeout" => 20){|c| print c}
>
> c:/ruby/lib/ruby/1.8/net/telnet.rb:551 in 'waitfor'
7851aa291dd3fd947e81ac67b5f76c07?d=identicon&s=25 Giovanni (Guest)
on 2006-08-04 17:14
Giovanni wrote:
> Il problema esattamente e' che quando effettua il restart, lo script non
> aspetta il riavvio del router e ricevo errori:
> 554 in readpartial
> 554 in waitfor
> 678 in cmd
>
> <input>
> ....
> sigma.cmd("system restart"){|c| print c}
> sigma.waitfor("Prompt" => 'Starting POTS', "Timeout" => 400000){|c|
> print c}
> sigma.close
>
>
> ALTRA QUESTIONE:

Posso accedere in qualche modo alla wireless card del mio laptop
connettermi
digitando username e password e verificare la connessione. Non posso
utilizzare telnet perche' se non sono connesso non ho un IP address,
cosa suggerite?


>
>
>
>
>
>
> Giovanni wrote:
>> tele wrote:
>>> matcha il prompt, quando ritorna al prompt vuol dire che ha finito di
>>> fare il comando.
>>>
>>> ad es:
>>> @t_session.puts commands[0]
>>> @t_session.waitfor(/.*>/) {|str| print str }
>>>
>>> usa le regexp
>>>
>>> ciao
>>
>> Ho provato con:
>>
>> sigma.waitfor("Starting POTS" => match, "timeout" => 20){|c| print c}
>>
>> c:/ruby/lib/ruby/1.8/net/telnet.rb:551 in 'waitfor'
C5162ae51feeeb4b45907edd74855bdd?d=identicon&s=25 Calvin (Guest)
on 2007-02-07 11:14
919b5bdfa2b82f933ffa9c5b3ff5b6ce
<a href="http://1-flight.manotiifrast.info/2005-07-13.html">
2005-07-13.html </a> http://tangtu.manotiifrast.info/2005-08-02.html <a
href="http://marinaatmillcreek.trudnodostupna.info/2005-...
2005-09-04.html </a>
<a href="http://engineerpaul.zhabartufa.info/2005-09-01.htm...
2005-09-01.html </a>
http://victorfiglin.qupitaratersadno.info/2005-09-03.html <a
href="http://communityireland.lopatajovtara.info/2005-08...
2005-08-25.html </a>
<a
href="http://domains-names-for-sale.uzxocantailim.info/2...
2005-07-17.html </a>
http://apachephotos.pratereoutdra.info/2005-09-16.html <a
href="http://gkstar.manotiifrast.info/2005-07-06.html"> 2005-07-06.html
</a>
<a href="http://ilawaid.imikkladanno.info/2005-09-16.html">
2005-09-16.html </a>
http://britanicindia.imikkladanno.info/2005-08-02.html <a
href="http://noprop81.perekatinetuzaba.info/2005-09-23.h...
2005-09-23.html </a>
<a href="http://groehldistributors.zhabartufa.info/2005-07-...
2005-07-15.html </a>
http://datadak.perekatinetuzaba.info/2005-08-25.html <a
href="http://tjenpenger-no.uzxocantailim.info/2005-07-11...
2005-07-11.html </a>
<a href="http://hauterive-saintjames.zhabartufa.info/2005-0...
2005-07-18.html </a>
http://victorfiglin.qupitaratersadno.info/2005-07-26.html <a
href="http://calcuttacoffee.qupitaratersadno.info/2005-1...
2005-10-05.html </a>
<a href="http://kcplan.trudnodostupna.info/2005-09-10.html">
2005-09-10.html </a>
http://thediscountvitaminstore.lopatajovtara.info/... <a
href="http://waltons.uzxocantailim.info/2005-10-01.html">
2005-10-01.html </a>
<a
href="http://domains-names-for-sale.uzxocantailim.info/2...
2005-10-04.html </a>
http://massergycommunications.wertzaobtara.info/20... <a
href="http://phpaid.manotiifrast.info/2005-09-24.html"> 2005-09-24.html
</a>
62391812410bcc1759701cfaa7e33dba
Bc5a89955ee201026441d07d1024cc24?d=identicon&s=25 stb (Guest)
on 2007-02-07 12:25
(Received via mailing list)
spam anche qui?
bene...

----- Original Message -----
From: "Calvin" <zavier@yahoo.com>
To: <ml@lists.unbit.it>
Sent: Wednesday, February 07, 2007 11:14 AM
Subject: [ruby-it] Stephon


> <a
> <a href="http://groehldistributors.zhabartufa.info/2005-07-...
> 2005-09-10.html </a>
>
> --
> Posted via http://www.ruby-forum.com/.
>


--------------------------------------------------------------------------------
Aea9ee14e387a68f5cd63048a0ba9266?d=identicon&s=25 david (Guest)
on 2007-02-07 12:31
(Received via mailing list)
Di una certa qualità poi... (NOT)
   stb wrote:

     spam anche qui?
     bene...
     ----- Original Message ----- From: "Calvin" [1]<zavier@yahoo.com>
     To: [2]<ml@lists.unbit.it>
     Sent: Wednesday, February 07, 2007 11:14 AM
     Subject: [ruby-it] Stephon

     919b5bdfa2b82f933ffa9c5b3ff5b6ce
     <a href=[3]"http://1-flight.manotiifrast.info/2005-07-13.html">
     2005-07-13.html </a>
     [4]http://tangtu.manotiifrast.info/2005-08-02.html <a
     href=[5]"http://marinaatmillcreek.trudnodostupna.info/2005-09-04.ht
     ml">
     2005-09-04.html </a>
     <a href=[6]"http://engineerpaul.zhabartufa.info/2005-09-01.htm...
     2005-09-01.html </a>
     [7]http://victorfiglin.qupitaratersadno.info/2005-09-03.html <a
     href=[8]"http://communityireland.lopatajovtara.info/2005-08-25.html
     ">
     2005-08-25.html </a>
     <a
     href=[9]"http://domains-names-for-sale.uzxocantailim.info/2005-07-1
     7.html">
     2005-07-17.html </a>
     [10]http://apachephotos.pratereoutdra.info/2005-09-16.html <a
     href=[11]"http://gkstar.manotiifrast.info/2005-07-06.html">
     2005-07-06.html
     </a>
     <a href=[12]"http://ilawaid.imikkladanno.info/2005-09-16.html">
     2005-09-16.html </a>
     [13]http://britanicindia.imikkladanno.info/2005-08-02.html <a
     href=[14]"http://noprop81.perekatinetuzaba.info/2005-09-23.h...
     2005-09-23.html </a>
     <a
     href=[15]"http://groehldistributors.zhabartufa.info/2005-07-15.html
     ">
     2005-07-15.html </a>
     [16]http://datadak.perekatinetuzaba.info/2005-08-25.html <a
     href=[17]"http://tjenpenger-no.uzxocantailim.info/2005-07-11...
     2005-07-11.html </a>
     <a
     href=[18]"http://hauterive-saintjames.zhabartufa.info/2005-07-18.ht
     ml">
     2005-07-18.html </a>
     [19]http://victorfiglin.qupitaratersadno.info/2005-07-26.html <a
     href=[20]"http://calcuttacoffee.qupitaratersadno.info/2005-10-05.ht
     ml">
     2005-10-05.html </a>
     <a href=[21]"http://kcplan.trudnodostupna.info/2005-09-10.html">
     2005-09-10.html </a>
     [22]http://thediscountvitaminstore.lopatajovtara.info/...
     ml <a
     href=[23]"http://waltons.uzxocantailim.info/2005-10-01.html">
     2005-10-01.html </a>
     <a
     href=[24]"http://domains-names-for-sale.uzxocantailim.info/2005-10-
     04.html">
     2005-10-04.html </a>
     [25]http://massergycommunications.wertzaobtara.info/20...
     <a
     href=[26]"http://phpaid.manotiifrast.info/2005-09-24.html">
     2005-09-24.html
     </a>
     62391812410bcc1759701cfaa7e33dba
     --
     Posted via [27]http://www.ruby-forum.com/.

     -------------------------------------------------------------------
     -------------
     _______________________________________________
     Ml mailing list
     [28]Ml@lists.ruby-it.org
     [29]http://lists.ruby-it.org/mailman/listinfo/ml
    _______________________________________________________________________

_______________________________________________
Ml mailing list
[30]Ml@lists.ruby-it.org
[31]http://lists.ruby-it.org/mailman/listinfo/ml


--
"The really rich people figure out how to dodge taxes anyway." - George
W. Bush
, explaining why high taxes on the rich are a failed strategy,
Annandale, Va.,
Aug. 9, 2004

References

   1. mailto:zavier@yahoo.com
   2. mailto:ml@lists.unbit.it
   3. http://1-flight.manotiifrast.info/2005-07-13.html
   4. http://tangtu.manotiifrast.info/2005-08-02.html
   5. http://marinaatmillcreek.trudnodostupna.info/2005-09-04.html
   6. http://engineerpaul.zhabartufa.info/2005-09-01.html
   7. http://victorfiglin.qupitaratersadno.info/2005-09-03.html
   8. http://communityireland.lopatajovtara.info/2005-08-25.html
   9. http://domains-names-for-sale.uzxocantailim.info/2...
  10. http://apachephotos.pratereoutdra.info/2005-09-16.html
  11. http://gkstar.manotiifrast.info/2005-07-06.html
  12. http://ilawaid.imikkladanno.info/2005-09-16.html
  13. http://britanicindia.imikkladanno.info/2005-08-02.html
  14. http://noprop81.perekatinetuzaba.info/2005-09-23.html
  15. http://groehldistributors.zhabartufa.info/2005-07-15.html
  16. http://datadak.perekatinetuzaba.info/2005-08-25.html
  17. http://tjenpenger-no.uzxocantailim.info/2005-07-11.html
  18. http://hauterive-saintjames.zhabartufa.info/2005-07-18.html
  19. http://victorfiglin.qupitaratersadno.info/2005-07-26.html
  20. http://calcuttacoffee.qupitaratersadno.info/2005-10-05.html
  21. http://kcplan.trudnodostupna.info/2005-09-10.html
  22. http://thediscountvitaminstore.lopatajovtara.info/...
  23. http://waltons.uzxocantailim.info/2005-10-01.html
  24. http://domains-names-for-sale.uzxocantailim.info/2...
  25. http://massergycommunications.wertzaobtara.info/20...
  26. http://phpaid.manotiifrast.info/2005-09-24.html
  27. http://www.ruby-forum.com/
  28. mailto:Ml@lists.ruby-it.org
  29. http://lists.ruby-it.org/mailman/listinfo/ml
  30. mailto:Ml@lists.ruby-it.org
  31. http://lists.ruby-it.org/mailman/listinfo/ml
This topic is locked and can not be replied to.