Sindbad~EG File Manager

Current Path : /usr/home/beeson/public_html/michaelbeeson/Testing/
Upload File :
Current File : /usr/home/beeson/public_html/michaelbeeson/Testing/server.c

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <unistd.h> 

#define PORT 12345
#define MAX_BUFFER_SIZE 1024

int main() {
    int sockfd;
    struct sockaddr_in serverAddr;
    socklen_t addr_size;
    char buffer[MAX_BUFFER_SIZE];

    // Create socket
    sockfd = socket(AF_INET, SOCK_STREAM, 0);
    
    // Configure server address
    serverAddr.sin_family = AF_INET;
    serverAddr.sin_port = htons(PORT);
    serverAddr.sin_addr.s_addr = htonl(INADDR_ANY);
    memset(serverAddr.sin_zero, '\0', sizeof(serverAddr.sin_zero));

    // Bind socket to address and port
    bind(sockfd, (struct sockaddr*)&serverAddr, sizeof(serverAddr));

    // Listen for incoming connections
    listen(sockfd, 10);

    printf("Listening on port %d...\n", PORT);

    while (1) {
        int newsockfd;
        struct sockaddr_in clientAddr;
        addr_size = sizeof(clientAddr);

        // Accept incoming connection
        newsockfd = accept(sockfd, (struct sockaddr*)&clientAddr, &addr_size);

        // Receive data from client
        ssize_t dataSize = recv(newsockfd, buffer, sizeof(buffer), 0);

        if (dataSize > 0) {
            buffer[dataSize] = '\0';
            printf("Received data: %s\n", buffer);
        }

        // Close the connection
        close(newsockfd);
    }

    return 0;
}

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists