summary refs log tree commit diff stats
path: root/plugins/checksum/checksum.c
diff options
context:
space:
mode:
authorBerke Viktor <bviktor@hexchat.org>2012-07-18 14:50:58 +0200
committerBerke Viktor <bviktor@hexchat.org>2012-07-18 14:50:58 +0200
commit1b0c07f8ea3415ebc4dcae2f87e5d529a83bb7b9 (patch)
tree29441043864f7fd2615146d38d02e6da19c3ddb4 /plugins/checksum/checksum.c
parentd3effc806f79555f0e002d07a4a8a81becbc830f (diff)
Checksum Unix support and configure.in cosmetics
Diffstat (limited to 'plugins/checksum/checksum.c')
-rw-r--r--plugins/checksum/checksum.c29
1 files changed, 20 insertions, 9 deletions
diff --git a/plugins/checksum/checksum.c b/plugins/checksum/checksum.c
index 135764eb..f84eb243 100644
--- a/plugins/checksum/checksum.c
+++ b/plugins/checksum/checksum.c
@@ -22,28 +22,39 @@
 
 #include <stdio.h>
 #include <string.h>
+#include <stdlib.h>
 #include <malloc.h>
 #include <errno.h>
 #include <sys/types.h>
-#include <sys/stat.h>
 #include <openssl/sha.h>
+#include <glib.h>
 
-#include "xchat-plugin.h"
-
-#define BUFSIZE 32768
-#define DEFAULT_LIMIT 256									/* default size is 256 MiB */
-
+#ifdef WIN32
 #ifndef snprintf
 #define snprintf _snprintf
 #endif
 #ifndef stat64
 #define stat64 _stat64
 #endif
+#else
+/* for INT_MAX */
+#include <limits.h>
+#define __USE_LARGEFILE64
+#define _LARGEFILE_SOURCE
+#define _LARGEFILE64_SOURCE
+#endif
+
+#include <sys/stat.h>
+
+#include "xchat-plugin.h"
+
+#define BUFSIZE 32768
+#define DEFAULT_LIMIT 256									/* default size is 256 MiB */
 
 static xchat_plugin *ph;									/* plugin handle */
 static const char name[] = "Checksum";
 static const char desc[] = "Calculate checksum for DCC file transfers";
-static const char version[] = "3.0";
+static const char version[] = "3.1";
 
 /* Use of OpenSSL SHA256 interface: http://adamlamers.com/?p=5 */
 static void
@@ -217,11 +228,11 @@ dccoffer_cb (char *word[], void *userdata)
 static void
 checksum (char *word[], void *userdata)
 {
-	if (!stricmp ("GET", word[2]))
+	if (!g_ascii_strcasecmp ("GET", word[2]))
 	{
 		print_limit ();
 	}
-	else if (!stricmp ("SET", word[2]))
+	else if (!g_ascii_strcasecmp ("SET", word[2]))
 	{
 		set_limit (word[3]);
 	}