Hi,
Can anybody help me please set up pppd with callback (cbcp).
This one: http://sourceforge.net/projects/pppcbcp/
The same configuration (some old Slackware)
pppd 2.4.0 + mgetty + rocketport (4 ports) on ttyR0
with 2.2.16 kernel worked for me last years.
Now I have to upgrade kernel and it doesn't work.
The first connection is ok. User can login and enter phone
number. After that pppd doesn't want to call back.
syslog has lines:
pppd[384]: tcgetattr: No such device or address(6)
pppd[384]: tcsetattr: No such device or address
messages:
pppd[384]: pppd 2.4.0with Callback-Server extension started
by root, uid 0
pppd[384]: device name: /dev/ttyR0
pppd[384]: Using interface ppp0
pppd[384]: Connect: ppp0 <--> /dev/ttyR0
gate /etc/hotplug/net.agent: assuming ppp0 is already up
pppd[384]: Hangup (SIGHUP)
pppd[384]: Modem hangup
pppd[384]: Connection terminated.
pppd[384]: device name: /dev/ttyR0
pppd[384]: Exit.
debug:
pppd[384]: rcvd [PAP AuthReq id=0x8 user="user" password=<hidden>]
pppd[384]: sent [PAP AuthAck id=0x8 "Login ok"]
pppd[384]: cbcp_open
pppd[384]: cbcp_sendreq cb_allowed=4
pppd[384]: cbcp_sendreq CONF_USER
pppd[384]: sent [CBCP Request id=0x1 < UserDefined delay = 5>]
pppd[384]: rcvd [CBCP Response id=0x1 < UserDefined delay = 12 number =
999999>]
pppd[384]: peer will callback the client on: 999999
pppd[384]: cbcp_sendack cb_type=4
pppd[384]: cbcp_sendack CONF_USER
pppd[384]: sent [CBCP Ack id=0x1 < UserDefined delay = 12 number = 999999>]
pppd[384]: rcvd [LCP TermReq id=0x5
pppd[384]: sent [LCP TermAck id=0x5]
pppd[384]: cbcp_start_callback running
Error was written to syslog after this line.
I'm not a linux developer but looks like error happens
in sys-linux.c "set_up_tty" function.
setdtr(tty_fd, 1);
if (tcgetattr(tty_fd, &tios) < 0) {
if (!ok_error(errno))
fatal("tcgetattr: %m(%d)", errno);
return;
}
And I don't really understand if tty was initialized
at start why it can't be initialized again for callback.
Any help is very appreciated, thank you,
Alexey