|
小弟正在研究perlOICQ,不明白其加密过程。哪位大哥,可以讲一下以下的代码在做什么?
特别是sv_undef,sv_nemortal(),SvGROW等等涉及到SV的东东,它们到底是什么呀?- void
- crypt(input, key, dir, output)
- unsigned char * input
- unsigned char * key
- int dir
- SV * output
- CODE:
- {
- if (output ==[color=red] &sv_undef[/color]) output = [color=red]sv_newmortal[/color]();
- tiny_crypt(input, key, dir, (unsigned long *)[color=red]SvGROW[/color](output, 8));
- [color=red]SvCUR_set[/color](output, 8);
- [color=red]*SvEND[/color](output) = '\0';
- (void) [color=red]SvPOK_only[/color](output);
- [color=red]SvTAINT[/color](output);
- [color=red]ST[/color](0) = output;
- }
复制代码 |
|