aboutsummaryrefslogtreecommitdiffstats
path: root/src/libstrongswan/enum.c
diff options
context:
space:
mode:
authorAndreas Steffen <andreas.steffen@strongswan.org>2006-11-01 09:48:25 +0000
committerAndreas Steffen <andreas.steffen@strongswan.org>2006-11-01 09:48:25 +0000
commitccd6120387e83920ed35f90150346eb50abc36b4 (patch)
tree8ce8ac08300c208575549ae74e55b828eadc9c83 /src/libstrongswan/enum.c
parent923ee10eefc894725e74aefa4ba3ff72f865ccdd (diff)
downloadstrongswan-ccd6120387e83920ed35f90150346eb50abc36b4.tar.bz2
strongswan-ccd6120387e83920ed35f90150346eb50abc36b4.tar.xz
solved 64 bit issue by changing long to int
Diffstat (limited to 'src/libstrongswan/enum.c')
-rw-r--r--src/libstrongswan/enum.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/libstrongswan/enum.c b/src/libstrongswan/enum.c
index c3dd2e549..ade7c16a1 100644
--- a/src/libstrongswan/enum.c
+++ b/src/libstrongswan/enum.c
@@ -30,7 +30,7 @@
/**
* get the name of an enum value in a enum_name_t list
*/
-static char *enum_name(enum_name_t *e, long val)
+static char *enum_name(enum_name_t *e, int val)
{
do
{
@@ -49,16 +49,19 @@ static char *enum_name(enum_name_t *e, long val)
static int print_enum(FILE *stream, const struct printf_info *info,
const void *const *args)
{
- enum_name_t *ed = *((void**)(args[0]));
- long val = *((long*)(args[1]));
- char *name;
-
- name = enum_name(ed, val);
+ enum_name_t *ed = *((enum_name_t**)(args[0]));
+ int val = *((int*)(args[1]));
+
+ char *name = enum_name(ed, val);
+
if (name == NULL)
{
- return fprintf(stream, "(unknown enum value: %ld)", val);
+ return fprintf(stream, "(%d)", val);
+ }
+ else
+ {
+ return fprintf(stream, "%s", name);
}
- return fprintf(stream, "%s", name);
}
/**