GNOME Bugzilla – Bug 167342
Dial-up configuration doesn't work
Last modified: 2009-11-17 19:28:29 UTC
A continuation of Ubuntu bug: https://bugzilla.ubuntu.com/show_bug.cgi?id=6140 Basically, I want to have network-admin properly configure my dial-up connection. I have some specifics: my modem is on /dev/ttyACM0, it's ISDN (over USB cdc_acm module) and it doesn't accept "ATM0" command to set the volume. The Carlos' patch in the above referenced bug is part of the solution, since I still need "noauth" to be set ("auth" would mean that a peer [ISP] needs to authenticate to myself, and that rarely happens with ISPs; best would be to have default be "noauth"), and I really must remove ATM0 from the chatscript.
Created attachment 37452 [details] [review] Patch for network.pl to allow me to connect to my ISP Here's a dirty patch which allows me to connect via "Activate" button from "network-admin" (I can't connect with modem-applet yet, but I'll look into it later). It's really bad looking, I commented some stuff out (instead of removing it), added some debugging lines, and removed all places where ATM0 is being set (this should actually be configurable). Apart from that, it contains all the stuff Carlos' patch does, but also unconditionally sets "noauth".
Just to add notes which should not be forgotten: "Deactivate" button doesn't work, because it only calls "ifconfig ppp0 down", which is not enough (pppd keeps running; poff on my system does "kill -TERM <pppd-PID>").
And another note: the sucky patch above probably does more than it should (i.e. it might uncomment "M0" where it is used in parsing configuration files instead of saving them), but I posted it only for reference, not as a proposed solution.
some more notes/questions: 1) noauth is already fixed in gnome-system-tools HEAD 2) ATM0 is a standard hayes command, it ought to work... do ATL[0-3] work? is this specific to ISDN modems? to your modem?... 3) you're right in comment #2, pppd should be killed when deactivating, working on this
Danilo, I've just committed a patch cooked by Michael (here CC'ed) and me that should fix modem dialing Please note that the ATM0 is untouched, but also note that in the pppscript, it's followed by OK-AT-OK, which means "if it returns OK, continue, if not, send AT and expect OK, then continue", so it should be quite safe if ATM0 doesn't return OK, so I'd love to get some more testing from you here :) Letting this bug opened for some more time ATM Thanks
I'll test this one of these days. Also, note that problem is that my modem returns "ERROR", and there's "ABORT ERROR" in the chatscript anyway, which has precedence over "OK-AT-OK", at least it's so for me.
oops, you're right, what about putting the "ABORT ERROR" after sending the init strings to the modem? as far as I can tell, this would work with this kind of errors and would be quite safe for the rest of the PPP negotiation
Created attachment 38051 [details] [review] patch which implements the proposed solution
Sorry, but the patch does not work. When I apply it the modem does just nothing. The messages: Feb 28 22:11:13 localhost pppd[17477]: pppd 2.4.2 started by root, uid 0 Feb 28 22:11:14 localhost chat[17479]: timeout set to 60 seconds Feb 28 22:11:14 localhost chat[17479]: abort on (BUSY) Feb 28 22:11:14 localhost chat[17479]: abort on (VOICE) Feb 28 22:11:14 localhost chat[17479]: abort on (NO CARRIER) Feb 28 22:11:14 localhost chat[17479]: abort on (NO DIALTONE) Feb 28 22:11:14 localhost chat[17479]: abort on (NO DIAL TONE) Feb 28 22:11:14 localhost chat[17479]: abort on (NO ANSWER) Feb 28 22:11:14 localhost chat[17479]: send (ATZ^M) Feb 28 22:11:14 localhost chat[17479]: send (AT&FH0L2^M) Feb 28 22:11:14 localhost chat[17479]: abort on (ERROR) Feb 28 22:11:14 localhost chat[17479]: send (ATDT0231xxx^M) Feb 28 22:11:14 localhost chat[17479]: timeout set to 75 seconds Feb 28 22:11:14 localhost chat[17479]: expect (CONNECT) Feb 28 22:11:14 localhost chat[17479]: ^M Feb 28 22:11:14 localhost chat[17479]: OK^M Feb 28 22:11:14 localhost chat[17479]: ATZ^M^M Feb 28 22:11:14 localhost chat[17479]: OK^M without the patch: Feb 28 22:13:19 localhost pppd[17550]: pppd 2.4.2 started by root, uid 0 Feb 28 22:13:20 localhost chat[17551]: timeout set to 60 seconds Feb 28 22:13:20 localhost chat[17551]: abort on (ERROR) Feb 28 22:13:20 localhost chat[17551]: abort on (BUSY) Feb 28 22:13:20 localhost chat[17551]: abort on (VOICE) Feb 28 22:13:20 localhost chat[17551]: abort on (NO CARRIER) Feb 28 22:13:20 localhost chat[17551]: abort on (NO DIALTONE) Feb 28 22:13:20 localhost chat[17551]: abort on (NO DIAL TONE) Feb 28 22:13:20 localhost chat[17551]: abort on (NO ANSWER) Feb 28 22:13:20 localhost chat[17551]: send (ATZ^M) Feb 28 22:13:20 localhost chat[17551]: send (AT&FH0L2^M) Feb 28 22:13:20 localhost chat[17551]: expect (OK) Feb 28 22:13:21 localhost chat[17551]: ATZ^M^M Feb 28 22:13:21 localhost chat[17551]: OK Feb 28 22:13:21 localhost chat[17551]: -- got it Feb 28 22:13:21 localhost chat[17551]: send (ATDT0231xx^M) Feb 28 22:13:21 localhost chat[17551]: timeout set to 75 seconds Feb 28 22:13:21 localhost chat[17551]: expect (CONNECT) Feb 28 22:13:21 localhost chat[17551]: ^M
And it doesn't work for me either (ABORTs seem to be aggregated while parsing, so their order doesn't matter except for error code returned by chat). The easiest workaround for me is to simply remove "ABORT ERROR" (or add "CLR_ABORT ERROR"). Is there any way we can make this optional?
Danilo, I'm sorry, but the freeze is already here, and I'm not really sure that's it's absolutely safe just to remove that ABORT line Regarding making this optional, first we should know about a condition to do so... I'm almost sure that it's a drivers problem (I've always heard, and even learnt in university that the volume Hayes commands are standard, and they have always worked in any modem I've had), and making a blacklist of drivers doesn't sound like a good option :) I'll work on it after the freeze
Yes, I'm aware of the freeze, so this is (at best) 2.10.1 material. But, if there's no "ABORT ERROR", all commands which might trigger "ERROR" will not halt the procedure, and if it doesn't work, TIMEOUT will take effect. So, while far from perfect, I think this would work ("ERROR" is otherwise very rare from any modem I've tried for common commands of "ATZ" or "ATD": I either get "NO DIALTONE" (here, one must *always* use ATX3 on regular modems in order to avoid "NO DIALTONE"; I didn't see such feature either, but it's absolutely necessary), "NO CARRIER", "BUSY", etc. All of this can probably be solved by allowing one to use custom init command (instead of ATZ, where you'd put ATZ&FH0MxLy as default, and I'd change to simply ATZ, regular modem users in Serbia would put ATX3 there, etc.). "ATX3" is otherwise called "Don't wait for dialtone", so if you want to add any GUI, that's a nice label.
Closing since the Ubuntu reporter said he does not care any more, and can't provide information now. If somebody is able to reproduce this with a recent version, please reopen it (though I can't guarantee anybody will work on it).