freeipmi-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Freeipmi-devel] bad pointer casting


From: Albert Chu
Subject: [Freeipmi-devel] bad pointer casting
Date: Sat, 17 Apr 2004 10:27:46 -0700

Hey AB,

I don't think the type casting bug in __LFI_FIID_OBJ_GET and
__FI_FIID_OBJ_GET was fixed completely.  See example below.

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

#define __FOO(val)                                            \
do {                                                          \
    u_int64_t _val = 0, *_val_ptr;                            \
    _val_ptr = val;                                           \
    _val = 0xaaaaaaaa;                                        \
    *_val_ptr = _val;                                         \
} while (0)


int 
main()
{
  u_int8_t a, b, c, d, e, f, g, h;
  u_int8_t *ptr = &d;
  a = b = c = d = e = f = g = h = 0; 

  printf("%d %d %d %d %d %d %d %d\n", a, b, c, d, e, f, g, h);

  __FOO(ptr);

  printf("%d %d %d %d %d %d %d %d\n", a, b, c, d, e, f, g, h);
}

Outputs with

0 0 0 0 0 0 0 0
0 0 0 170 170 170 170 0

Al

--
Albert Chu
address@hidden
Lawrence Livermore National Laboratory





reply via email to

[Prev in Thread] Current Thread [Next in Thread]