Hi,
I have a void pointer. I am mallocing to it and cast it to appropriate type. However I am getting compiler errors about dereferecing void pointer.
Following is the code
Compiler errorsCode:/* typedef struct pptp_generic_t_ { CARD16 length; CARD16 pptp_msg_type; CARD32 cookie; CARD16 control_message_type; CARD16 reserved0; } pptp_generic_t; typedef struct ctrl_msg_sccrq_t_ { pptp_generic_t pptp_generic_pkt; CARD16 version; CARD16 reserved1; CARD32 framing; CARD32 bearer; CARD16 channels; CARD16 firmware; CARD8 hostname[64]; CARD8 vendor[64]; } ctrl_msg_sccrq_t; */ void *packet; if (ptype == START_CONTROL_CONNECTION_REQUEST) { packet = (ctrl_msg_sccrq_t *)malloc(sizeof(ctrl_msg_sccrq_t)); packet->pptp_generic_pkt.pptp_msg_type=CONTROL_MESSAGE; packet->pptp_generic_pkt.cookie=MAGIC_COOKIE; packet->pptp_generic_pkt.control_message_type=START_CONTROL_CONNECTION_REQUEST; packet->pptp_generic_pkt.reserved=0; }
Can anybody help me whats going wrong here?pclientfunction.c: In function `sendPpacket':
pclientfunction.c:116: warning: dereferencing `void *' pointer
pclientfunction.c:116: request for member `pptp_generic_pkt' in something not a structure or union
pclientfunction.c:117: warning: dereferencing `void *' pointer
pclientfunction.c:117: request for member `pptp_generic_pkt' in something not a structure or union
pclientfunction.c:118: warning: dereferencing `void *' pointer
pclientfunction.c:118: request for member `pptp_generic_pkt' in something not a structure or union
pclientfunction.c:119: warning: dereferencing `void *' pointer
pclientfunction.c:119: request for member `pptp_generic_pkt' in something not a structure or union
make: *** [pptpclient] Error 1
Thanks,