You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

61 lines
1.2 KiB

#include <cstdlib>
#include <iostream>
#include <cstdio>
#include <cerrno>
#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <pEp/pEpLog.hh>
#include <netdb.h>
#define SOKOL_IMPL
#include "sokol_time.h"
#undef SOKOL_IMPL
void init_sockaddr(sockaddr_in *name, std::string hostname, uint16_t port)
{
hostent *hostinfo = nullptr;
name->sin_family = AF_INET;
name->sin_port = htons(port);
hostinfo = gethostbyname(hostname.c_str());
if (hostinfo == nullptr) {
pEpLog("Unknown host: " + hostname);
exit(1);
}
name->sin_addr = *(struct in_addr *)hostinfo->h_addr;
}
int make_socket(uint16_t port)
{
int sock;
sockaddr_in name;
sock = socket(PF_INET, SOCK_STREAM, 0);
if (sock < 0) {
pEpLog(strerror(errno));
exit(1);
}
name.sin_family = AF_INET;
name.sin_port = htons(port);
name.sin_addr.s_addr = htonl(INADDR_ANY);
if (bind(sock, (struct sockaddr *)&name, sizeof(name)) < 0) {
pEpLog(strerror(errno));
exit(1);
}
return sock;
}
int main(int argc, char *argv[])
{
pEp::Adapter::pEpLog::set_enabled(true);
pEpLog("fdsfsd");
int socket = make_socket(23232);
return 0;
}