Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define WASM_EXPORT __attribute__((visibility("default")))
- #include <stdio.h>
- #include <sys/socket.h>
- #include <stdlib.h>
- #include <netinet/in.h>
- #include <string.h>
- #define PORT 1251
- int sock = 0, valread;
- WASM_EXPORT
- bool connect(*char hello) {//copiously stolen from geeksforgeeks.org/socket-programming-cc/
- struct sockaddr_in address;
- struct sockaddr_in serv_addr;
- char buffer[1024] = {0};
- if ((sock = socket(AF_INET, SOCK_STREAM, 0)) < 0)
- {
- printf("\n Socket creation error \n");
- return -1;
- }
- memset(&serv_addr, '0', sizeof(serv_addr));
- serv_addr.sin_family = AF_INET;
- serv_addr.sin_port = htons(PORT);
- // Convert IPv4 and IPv6 addresses from text to binary form
- if(inet_pton(AF_INET, "192.168.2.165", &serv_addr.sin_addr)<=0)
- {
- printf("\nInvalid address/ Address not supported \n");
- return -1;
- }
- if (connect(sock, (struct sockaddr *)&serv_addr, sizeof(serv_addr)) < 0)
- {
- printf("\nConnection Failed \n");
- return -1;
- }
- send(sock , hello , strlen(hello) , 0 );
- printf("Hello message sent\n");
- valread = read( sock , buffer, 1024);
- printf("%s\n",buffer );
- if (sprintf(buffer)=="initack@") {
- return true;
- } else {
- return false;
- }
- }
- WASM_EXPORT
- char* sockRead(int bufferSize) {
- char buff[bufferSize]={0};
- valread=read(sock,buff,bufferSize);
- return buff;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement