summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xMakefile7
-rwxr-xr-xPICA_node.c33
2 files changed, 27 insertions, 13 deletions
diff --git a/Makefile b/Makefile
index 5182f71..a229264 100755
--- a/Makefile
+++ b/Makefile
@@ -1,10 +1,11 @@
-OBJS= PICA_msgproc.o PICA_nodeaddrlist.o PICA_node.o PICA_nodejoinskynet.o PICA_nodeconfig.o iniparser.o dictionary.o
+OBJS= PICA_msgproc.o PICA_nodeaddrlist.o PICA_node.o PICA_nodejoinskynet.o PICA_nodeconfig.o iniparser.o dictionary.o PICA_log.o
CFLAGS= -pedantic -Wall
+LIBS= -lssl -lcrypto -lsqlite3
all: pica-node;
pica-node: $(OBJS)
- gcc $(OBJS) -l ssl -l crypto -lsqlite3 -o pica-node # добавить CFLAGS и все такое
+ gcc $(OBJS) $(LIBS) -o pica-node # добавить CFLAGS и все такое
PICA_node.o: PICA_node.c PICA_node.h PICA_msgproc.h PICA_nodeaddrlist.h PICA_nodejoinskynet.h PICA_nodeconfig.h
gcc $(CFLAGS) -c PICA_node.c
@@ -27,5 +28,7 @@ iniparser.o: iniparser/src/iniparser.c
dictionary.o: iniparser/src/dictionary.c
gcc $(CFLAGS) -c iniparser/src/dictionary.c
+PICA_log.o: PICA_log.c PICA_log.h
+ gcc $(CFLAGS) -c PICA_log.c
diff --git a/PICA_node.c b/PICA_node.c
index 2bcc705..c1f4646 100755
--- a/PICA_node.c
+++ b/PICA_node.c
@@ -16,6 +16,7 @@
#include "PICA_common.h"
#include "PICA_nodejoinskynet.h"
#include "PICA_nodeconfig.h"
+#include "PICA_log.h"
#ifdef NO_RAND_DEV
#include "PICA_rand_seed.h"
@@ -1048,7 +1049,9 @@ WSAStartup(MAKEWORD(2,2),&wsd);
//CONF -AF_INET6 ????
listen_comm_sck=socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
-//ERR_CHECK
+
+if (listen_comm_sck == -1)
+ PICA_fatal("unable to get socket - %s", strerror(errno));
memset(&sd,0,sizeof(sd));
@@ -1056,9 +1059,15 @@ sd.sin_family=AF_INET;
sd.sin_addr.s_addr=INADDR_ANY;//CONF
sd.sin_port = (nodecfg.listen_port ? htons(atoi(nodecfg.listen_port)) : htons(PICA_COMM_PORT));//CONF
-bind(listen_comm_sck,(struct sockaddr*)&sd,sizeof(sd));
-listen(listen_comm_sck,20);
-//ERR_CHECK
+ret = bind(listen_comm_sck,(struct sockaddr*)&sd,sizeof(sd));
+
+if (ret == -1)
+ PICA_fatal("unable to bind socket - %s", strerror(errno));
+
+
+ret = listen(listen_comm_sck,20);
+if (ret == -1)
+ PICA_fatal("unable to listen socket - %s", strerror(errno));
{
int ret_comm;
@@ -1072,22 +1081,24 @@ ret_comm=ioctl(listen_comm_sck,FIONBIO,(int*)&arg);
// ret_data=ioctl(listen_data_sck,FIONBIO,(int*)&arg);
// ret_data=ioctl(listen_node_sck,FIONBIO,(int*)&arg);
#endif
-printf("ioctl ret_comm=%i\n",ret_comm);//debug
+if (ret_comm == -1)
+ PICA_fatal("unable to set non-blocking mode on socket - %s", strerror(errno));
}
-#ifdef NO_RAND_DEV
-PICA_rand_seed();
-#endif
+//#ifdef NO_RAND_DEV
+//PICA_rand_seed();
+//#endif
-ctx=SSL_CTX_new(TLSv1_method());
+ctx = SSL_CTX_new(TLSv1_method());
if (!ctx)
-;//ERR_CHECK
+ PICA_fatal("unable to create SSL_CTX object");
ret = SSL_CTX_load_verify_locations(ctx, nodecfg.CA_cert_file, 0);
-;//ERR_CHECK
+if (!ret)
+ PICA_fatal("call to SSL_CTX_load_verify_locations failed(). Check if %s exists and is accesible", nodecfg.CA_cert_file);
SSL_CTX_set_verify(ctx, SSL_VERIFY_PEER, NULL);