rfc3164.c
author viric@llimona
Thu, 06 Apr 2006 01:47:35 +0200
changeset 18 84fa30ea0b0d
parent 15 fea6e87812f0
child 22 52c1a4d0b565
permissions -rw-r--r--
Ara sí - versió 1

#include "rfc3164.h"
#include <stdio.h>  // snprintf
#include <unistd.h> // write
#include <string.h> // strlen


int process_message(char * restrict buffer)
{
	int i;
	char message[MESSAGE_LENGTH+1];

	for(i=0; i<MESSAGE_LENGTH; i++)
	{
		if (buffer[i] == '\n' || buffer[i] == '\0')
		{
			buffer[i] = '\0';
			break;
		}
		else if ((buffer[i] & 128) == 128 )
		{
			/* Convertim de 8bits a 7bits */
			buffer[i] = buffer[i] & ~128;
		}
	}
	if(i == MESSAGE_LENGTH)
		buffer[MESSAGE_LENGTH-1] = '\0';
	/* Debug */
	/* fprintf(stderr,"M: %s\n", buffer); */

	snprintf(message, MESSAGE_LENGTH+1,"%s\n", buffer);
	write(1, message, strlen(message));

	return i;
}