X-Git-Url: https://www.tinc-vpn.org/git/browse?p=tinc;a=blobdiff_plain;f=src%2Fmeta.c;h=275eae3567187f5fe0626f37e70eb479fc1556c4;hp=76938276750573060cce2e70100b2f8b6b01c623;hb=ab7c61b06f6c6e991225f2fcc32d02b8e1084aee;hpb=de78d79db84c486afcc353884ec1770866beb653 diff --git a/src/meta.c b/src/meta.c index 76938276..275eae35 100644 --- a/src/meta.c +++ b/src/meta.c @@ -1,6 +1,6 @@ /* meta.c -- handle the meta communication - Copyright (C) 2000-2006 Guus Sliepen , + Copyright (C) 2000-2009 Guus Sliepen , 2000-2005 Ivo Timmermans This program is free software; you can redistribute it and/or modify @@ -13,11 +13,9 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - - $Id$ + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "system.h" @@ -41,6 +39,11 @@ bool send_meta(connection_t *c, const char *buffer, int length) cp(); + if(!c) { + logger(LOG_ERR, _("send_meta() called with NULL pointer!")); + abort(); + } + ifdebug(META) logger(LOG_DEBUG, _("Sending %d bytes of metadata to %s (%s)"), length, c->name, c->hostname); @@ -94,10 +97,12 @@ bool flush_meta(connection_t *c) c->name, c->hostname); } else if(errno == EINTR) { continue; +#ifdef EWOULDBLOCK } else if(errno == EWOULDBLOCK) { ifdebug(CONNECTIONS) logger(LOG_DEBUG, _("Flushing %d bytes to %s (%s) would block"), c->outbuflen, c->name, c->hostname); return true; +#endif } else { logger(LOG_ERR, _("Flushing meta data to %s (%s) failed: %s"), c->name, c->hostname, strerror(errno));