Parity
Parity
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <arpa/inet.h>
#define BUFFER_SIZE 30
int count = 0;
if (data[i] == '1')
count++;
if (parity_type == 'E')
else
int main() {
char buffer[BUFFER_SIZE];
socklen_t addr_size;
// Create socket
if (server_sock < 0) {
exit(1);
server_addr.sin_family = AF_INET;
server_addr.sin_port = htons(5566);
server_addr.sin_addr.s_addr = INADDR_ANY;
// Bind socket
exit(1);
listen(server_sock, 5);
while (1) {
addr_size = sizeof(client_addr);
// Extract original 7-bit data, received parity bit, and parity type
if (received_parity == calculated_parity)
else
// Close connection
close(client_sock);
return 0;
}
Client :
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <arpa/inet.h>
#define BUFFER_SIZE 30
int count = 0;
if (data[i] == '1')
count++;
if (parity_type == 'E')
else
int main() {
int sock;
if (sock < 0) {
exit(1);
addr.sin_family = AF_INET;
addr.sin_port = htons(port);
addr.sin_addr.s_addr = inet_addr(ip);
// Connect to server
exit(1);
scanf("%s", buffer);
// Close connection
close(sock);
return 0;