view rvinterf/old/before-rvinterf/packettx.c @ 976:ca65f5adf1af

rvinterf: print old ASCII GPF traces emitted by 20020917 firmware on D-Sample
author Mychaela Falconia <falcon@ivan.Harhan.ORG>
date Sun, 29 Nov 2015 05:22:41 +0000
parents 373af5f74e39
children
line wrap: on
line source

/*
 * 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);
}