Newsgroup: it.comp.os.linux.sys
Titolo: pppd e comandi AT [era - pppd su server dialin]

Ciao a tutti, cosa vuole dire questo errore:
su: /dev/ttyS1: Interrupted system call
quando do' un:
echo "ATZ" > /dev/ttyS1
In realtà me lo da quando faccio CTRL+C perchè altrimenti rimane lì delle 
mezz'ore senza fare assolutamente nulla e senza restituirmi la shell 
libera. Questo succede dopo aver eseguit questo script:
#!/bin/bash
modprobe ppp_generic
modprobe ppp_async
modprobe ppp_synctty
modprobe ppp_deflate
stty crtscts -ixon -ixoff -ixany 115200 < /dev/ttyS1
echo "atz" > /dev/ttyS1
/usr/sbin/pppd ttyS1 115200 init '/usr/sbin/chat -v -t60 "" ATX3S0=1E1V1' 
passive require-pap ms-dns 128.1.1.2 128.1.1.180:128.1.1.181
Grazie in anticipo per ogni hint.
P.S.
Grazie Keres, sto procedendo e per ora con risultati ottimi, devo solo 
affinare la tecnica per questo problema e così sembra funzionare - 
probabilmente era la mia macchina che aveva dei pocci, adesso sto provando 
su una macchina di test e funzica :) Grazie ancora infinite.
-- 
So many women and so little time
Rizio

 libera. Questo succede dopo aver eseguit questo script:
Ciao, Rizio, bentornato dalle ferie.    :-)
Continuo a pensare che c'e' qualcosa sulla seriale che non va...
Ma siamo sicuri al 100% che con _minicom su linux_ invece va?
bye G.L.
-- 
« E' assolutamente evidente che l'arte del cinema
  si ispira alla vita, mentre la vita si ispira alla TV »
(Woody Allen)

Grazie in anticipo per ogni hint.
Il problema sorge dal fatto che "dall'altra parte" di /dev/ttyS1 non
c'è nessuno in ascolto per cui il tuo messaggio rimane fermo.
Il mio consiglio è di installare e utilizzare kermit per le prove del
modem
Per il pppd ti mostro quello che avevo io e che utilizzavo (ante
adsl).
----------------
# /etc/ppp/options
# Linux as a ppp client
# ho messo un link /dev/modem su /dev/ttyS1
/dev/modem
115200
lock
debug
crtscts
modem
asyncmap 0
defaultroute
ipcp-accept-remote
mtu 1500
mru 1500
lcp-echo-interval 40
lcp-echo-failure 40
noipx
noauth
---------------------------
# /etc/ppp/pap-secrets
# Secrets for authentication using PAP
# client        server  secret                  IP addresses
mylogin * mypassword *
---------------------------
# /usr/local/bin/pppstart
# script to connect to provider
exec /usr/sbin/pppd connect /usr/local/bin/chatscript user mylogin
---------------------------
# /usr/local/bin/chatscript
exec /usr/sbin/chat -v "" ATZ OK ATDT123456789 CONNECT ""
(io avevo isdn se il modem è analogico devi mettere ATX3DT)
---------------------------
# /usr/local/bin/pppclose
######################################################################
#
# Determine the device to be terminated.
#
if [ "$1" = "" ]; then
        DEVICE=ppp0
else
        DEVICE=$1
fi
######################################################################
#
# If the ppp0 pid file is present then the program is running. Stop
it.
if [ -r /var/run/$DEVICE.pid ]; then
        kill -INT `cat /var/run/$DEVICE.pid`
#
# If the kill did not work then there is no process running for this
# pid. It may also mean that the lock file will be left. You may wish
# to delete the lock file at the same time.
        if [ ! "$?" = "0" ]; then
                rm -f /var/run/$DEVICE.pid
                echo "ERROR: Removed stale pid file"
                exit 1
        fi
#
# Success. Let pppd clean up its own junk.
        echo "PPP link to $DEVICE terminated."
        exit 0
fi
#
# The ppp process is not running for ppp0
echo "ERROR: PPP link is not active on $DEVICE"
exit 1
=======================================================================
Se mi vuoi scrivere togli le maiuscole
Sveltolampo 
cteniza...@hotmail.com
=======================================================================

 bye G.L.
Rizio

 Per il pppd ti mostro quello che avevo io e che utilizzavo (ante adsl).
Fantastico, grazie mille. C'è un bel po' di materiale da cui prendere
spunto. Ma lo script lo usavi in uscita (verso il provider) vero ? 
Rizio

spunto. Ma lo script lo usavi in uscita (verso il provider) vero ? 
Esattamente
Se invece vuoi fare da server bisogna agire in tutt'altro modo, devi
settare le porte in "respawn" su /etc/inittab passandogli come
argomento il programma di getty che ti interessa far scattare.
Questo se hai dei terminali diretti sulla seriale è già quasi
sufficiente. 
Mentre per accettare comunicazioni in entrata da modem, assegnare l'ip
dinamico, ecc, ecc, ecc ci sono molte altre cose da impostare (BDS =
bagno di sangue).


 il programma di getty che ti interessa far scattare. Questo se hai dei
In parte ti devo smentire sai, o meglio per essere più corretto, devo
dirti che c'è un altro metodo a mio avviso più semplice.  In un post di
Luglio, Renaissance mi ha "svelato" ( ;) ) l'uso del pppd per gestire le
chiamate in ingresso e giuro che, a parte il problema di questo post è
stato davvero semplice ed immediato, molto più che il sistema mgetty.
Se poi a livello di utilizzo approfondito ci siano grosse differenze
questo lo ignoro ma per quello che dovevo fare io è perfetto il metodo
con il pppd.
Guarda visto che siamo in discorso lancio un'altro dubbio:
ma il pppd può fare call-back ? Ed eventualmente kermit o mgetty ?
Rizio