как написать скрипт (pppd pty)

Один модем (http://www.gentoo.ru/node/12140 ) требует, чтобы раз в минуту ему посылалась команда AT+ZOPERTER. Почитав man pppd стало ясно, что pppd может посылать всё через скрипт, или внешнюю программу (опция pty). Встал вопрос, как же написать скрипт, который просто копировал бы всё из stdin в /dev/ttyUSB0 и из /dev/ttyUSB0 в stdout, при этом раз в минуту дополнительно посылать команду в /dev/ttyUSB0. Простейшая программа на С не работает...

#include <stdio.h>
#include <sys/time.h>
#include <time.h>
#include <stdlib.h>

int main(void)
{
    struct timeval c,n;
    char t='a';
    int e=1;
    FILE *f;

    gettimeofday( &c, NULL);
    f=fopen("/dev/ttyUSB0","r+");


    while(e)
    {
        t=fgetc(stdin);
        while( (t!='\n') || (t!=EOF) )
        {
            fputc(t,f);
            t=fgetc(stdin);
        }
        t='a';
        fflush(f);
        t=fgetc(f);
        while( (t!='\n') || (t!=EOF) )
        {
            fputc(t,stdout);
            t=fgetc(f);
        }
        if ( ( feof(f) ) || ( feof(stdin) ) ) e=0;
        fflush(stdout);
        gettimeofday( &n, NULL);
        if ( (n.tv_sec-c.tv_sec) > 59 )
        {
            c=n;
            fprintf(f,"AT+ZOPERTER=\"beeline\"\r\n");
        }
        fflush(f);
    }
    fclose(f);

    return 0;
}