В общем, я, похоже, нашел, в чем проблема, и даже сумел ее поправить. При этом наткнулся на баг (точнее, даже пару связанных) в pppd, повесил на http://ppp.samba.org/cgi-bin/ppp-bugs/incoming?id=1285. Основная идея: когда юзер нажал Ctrl-C, pppp-watch смотрит .pid-файл, создаваемый pppd, и, если нашел - по полученному pid'у убивает pppd. Однако, pppd создает этот файл не сразу, а только когда установится соединение (отработает chat-скрипт, например). Поэтому, если .pid-файл не найден, то мы ищем pppd, запущенный с нужным на параметром, в /proc. Если нашли - ждем 10 секунд (должно хватить), периодически проверяя, не появился ли .pid-файл, как только появился - убиваем pppd. Можно юыло бы, найдя pppd в /proc, сразу убивать pppd, но этому мешает упомянутая выше бага. Если этот патч появится в Сизифе - буду очень рад, если в backports - еще больше :) (message from Valentin Lavrinenko <lvu uaservice com ua> in community@)
bugzilla+mozilla+[back] = глюки :/ *** This bug has been marked as a duplicate of 8312 ***