/*
Copyright (C) 2010 by Ronnie Sahlberg <ronniesahlberg@gmail.com>
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU Lesser General Public License as published by
- the Free Software Foundation; either version 2.1 of the License, or
- (at your option) any later version.
+
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
-#define _GNU_SOURCE
-
-#if defined(WIN32)
-#include <winsock2.h>
+#ifdef WIN32
+#include "win32_compat.h"
#else
#include <unistd.h>
#include <strings.h>
-#endif
+#endif/*WIN32*/
+#define _GNU_SOURCE
#include <stdio.h>
#include <stdarg.h>
if (rpc == NULL) {
return NULL;
}
- bzero(rpc, sizeof(struct rpc_context));
+ memset(rpc, 0, sizeof(struct rpc_context));
rpc->encodebuflen = 65536;
rpc->encodebuf = malloc(rpc->encodebuflen);
if (rpc->auth != NULL) {
auth_destroy(rpc->auth);
}
- rpc->auth = auth;
+ rpc->auth = (AUTH *)auth;
}
void rpc_set_error(struct rpc_context *rpc, char *error_string, ...)
{
va_list ap;
- char *str;
if (rpc->error_string != NULL) {
free(rpc->error_string);
}
va_start(ap, error_string);
- // vasprintf(&str, error_string, ap);
- // rpc->error_string = str;
+ rpc->error_string = malloc(1024);
+ vsnprintf(rpc->error_string, 1024, error_string, ap);
va_end(ap);
}