I was unsure if this was the best location for this question, but I saw no better place...
Working with Libnet to make a perl interface ala XS I came across this function prototype:
int libnet_init_packet(size_t p_size, u_char **buf);<br><br>
This function essentially is a wrapper to malloc and passes back the pointer by reference. I assumed this is what i ought to put in my typemap:
u_char ** T_PV
Then in my XS file:
int
libnet_init_packet(p_size, buf)
size_t p_size
u_char & * buf
OUTPUT:
buf
However, I try to
make this and I get an error at "u_char & * buf". Shouldn't this work? If no, how can I manage around this? Simply assume the value I pass from Perl holds a pointer and pass it in as a reference then possibly have something like this in my XS file?
int
libnet_init_packet(p_size, buf)
size_t p_size
void & buf
OUTPUT:
buf
The obvious typecasting issues aside, this seems like it might work. Your help is sincerely appreciated it. BTW, this is my first XS project. Thanks!
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.