Update of /cvsroot/linux-decnet/latd
In directory sc8-pr-cvs1:/tmp/cvs-serv9284
Modified Files:
moprc.cc
Log Message:
Add -b switch to make ^H send DEL (useful on *BSDs)
Index: moprc.cc
===================================================================
RCS file: /cvsroot/linux-decnet/latd/moprc.cc,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -r1.7 -r1.8
*** moprc.cc 19 May 2003 13:16:01 -0000 1.7
--- moprc.cc 4 Jan 2004 14:40:30 -0000 1.8
***************
*** 60,64 ****
static int last_message_len;
static int show_info = 0;
! static int do_moprc(u_int8_t *, int);
static int send_boot(u_int8_t *macaddr, int interface);
static LATinterfaces *iface;
--- 60,64 ----
static int last_message_len;
static int show_info = 0;
! static int do_moprc(u_int8_t *, int, int);
static int send_boot(u_int8_t *macaddr, int interface);
static LATinterfaces *iface;
***************
*** 73,76 ****
--- 73,77 ----
fprintf(f, " -i Ethernet interface to use (default to first found)\n");
fprintf(f, " -t Trigger (reboot) the server\n");
+ fprintf(f, " -b Make ^H send DEL\n");
fprintf(f, " -v Show target information\n");
fprintf(f, "\n");
***************
*** 110,113 ****
--- 111,115 ----
int interface = -1;
int trigger=0;
+ int convert_bs = 0;
char ifname_buf[255];
char *ifname;
***************
*** 124,128 ****
/* Get command-line options */
opterr = 0;
! while ((opt=getopt(argc,argv,"?hVvti:")) != EOF)
{
switch(opt)
--- 126,130 ----
/* Get command-line options */
opterr = 0;
! while ((opt=getopt(argc,argv,"?hVvtbi:")) != EOF)
{
switch(opt)
***************
*** 142,145 ****
--- 144,151 ----
break;
+ case 'b':
+ convert_bs++;
+ break;
+
case 'i':
strcpy(ifname_buf, optarg);
***************
*** 207,211 ****
}
! return do_moprc(addr.ether_addr_octet, interface);
}
--- 213,217 ----
}
! return do_moprc(addr.ether_addr_octet, interface, convert_bs);
}
***************
*** 364,368 ****
}
! static int do_moprc(u_int8_t *macaddr, int interface)
{
enum {STARTING, CONNECTED} state=STARTING;
--- 370,374 ----
}
! static int do_moprc(u_int8_t *macaddr, int interface, int convert_bs)
{
enum {STARTING, CONNECTED} state=STARTING;
***************
*** 512,515 ****
--- 518,522 ----
if (buf[i] == 4) goto finished;
if (buf[i] == '\n') buf[i] = '\r';
+ if (convert_bs && buf[i] == '\b') buf[i] = 127;
}
waiting_ack = 1;
|