FreeCalypso > hg > freecalypso-sw
diff rvinterf/packettx.c @ 171:4d8e4c58df71
rvtdump: implemented Tx extension hack, compiles
author | Michael Spacefalcon <msokolov@ivan.Harhan.ORG> |
---|---|
date | Wed, 20 Nov 2013 05:39:31 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rvinterf/packettx.c Wed Nov 20 05:39:31 2013 +0000 @@ -0,0 +1,32 @@ +/* + * This module handles the lowest level of serial packet Tx + */ + +#include <sys/types.h> +#include <stdio.h> +#include <stdlib.h> +#include <unistd.h> +#include "pktmux.h" +#include "txpkt.h" + +extern int target_fd; + +send_pkt_to_target(pkt, pktlen) + u_char *pkt; +{ + u_char buf[MAX_PKT_TO_TARGET*2+2]; + u_char *cp, *dp, *endp; + int c; + + endp = pkt + pktlen; + dp = buf; + *dp++ = STX; + for (cp = pkt; cp < endp; cp++) { + c = *cp; + if (c == STX || c == DLE) + *dp++ = DLE; + *dp++ = c; + } + *dp++ = STX; + write(target_fd, buf, dp - buf); +}