aboutsummaryrefslogtreecommitdiff
path: root/libcody/netserver.cc
AgeCommit message (Collapse)AuthorFilesLines
2021-10-21libcody: Avoid double-freeJonathan Wakely1-0/+1
If the listen call fails then 'goto fail' will jump to that label and use freeaddrinfo again. Set the pointer to null to prevent that. libcody/ChangeLog: * netserver.cc (ListenInet6): Set pointer to null after deallocation.
2020-12-21libcody: Include <netinet/in.h> as neededGerald Pfeifer1-0/+1
libcody as originally added to GCC fail to build on *-unknown-freebsd11.4 and presumably others: c++ -std=c++11 -g -include config.h -I ... -MMD -MP -MF netclient.d -c -o netclient.o .../libcody/netclient.cc:114:3: error: unknown type sockaddr_in6 addr; ^~~~~~~~~~~~ sockaddr_in6 is declared in /usr/include/netinet6/in6.h, which is included by /usr/include/netinet/in.h. Indeed, per https://man7.org/linux/man-pages/man7/ipv6.7.html #include <sys/socket.h> #include <netinet/in.h> should be included, and our own gcc/ada/gsocket.h also has #if !(defined (VMS) || defined (__MINGW32__)) #include <sys/socket.h> #include <sys/un.h> #include <netinet/in.h> : #endif libcody/ChangeLog: 2020-12-21 Gerald Pfeifer <gerald@pfeifer.com> * netserver.cc: Include <netinet/in.h>.
2020-12-15Add libcodyNathan Sidwell1-0/+153
In order to separate compiler from build system, C++ Modules, as implemented in GCC introduces a communication channel between those two entities. This is implemented by libcody. It is anticipated that other implementations will also implement this protocol, or use libcody to provide it. * Makefile.def: Add libcody. * configure.ac: Add libcody. * Makefile.in: Regenerated. * configure: Regenerated. gcc/ * Makefile.in (CODYINC, CODYLIB, CODYLIB_H): New. Use them. libcody/ * configure.ac: New. * CMakeLists.txt: New. * CODING.md: New. * CONTRIB.md: New. * LICENSE: New. * LICENSE.gcc: New. * Makefile.in: New. * Makesub.in: New. * README.md: New. * buffer.cc: New. * build-aux/config.guess: New. * build-aux/config.sub: New. * build-aux/install-sh: New. * client.cc: New. * cmake/libcody-config-ix.cmake * cody.hh: New. * config.h.in: New. * config.m4: New. * configure: New. * configure.ac: New. * dox.cfg.in: New. * fatal.cc: New. * gdbinit.in: New. * internal.hh: New. * netclient.cc: New. * netserver.cc: New. * packet.cc: New. * resolver.cc: New. * server.cc: New. * tests/01-serialize/connect.cc: New. * tests/01-serialize/decoder.cc: New. * tests/01-serialize/encoder.cc: New. * tests/02-comms/client-1.cc: New. * tests/02-comms/pivot-1.cc: New. * tests/02-comms/server-1.cc: New. * tests/Makesub.in: New. * tests/jouster: New.