ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/IO-AIO/AIO.xs
(Generate patch)

Comparing IO-AIO/AIO.xs (file contents):
Revision 1.238 by root, Thu Jan 21 23:04:46 2016 UTC vs.
Revision 1.239 by root, Tue Feb 23 19:42:43 2016 UTC

1296 REQ_SEND; 1296 REQ_SEND;
1297 } 1297 }
1298} 1298}
1299 1299
1300void 1300void
1301aio_ioctl (SV *fh, unsigned long request, SV8 *arg, SV *callback = &PL_sv_undef)
1302 ALIAS:
1303 aio_ioctl = EIO_IOCTL
1304 aio_fcntl = EIO_FCNTL
1305 PPCODE:
1306{
1307 int fd = s_fileno_croak (fh, 0);
1308 char *svptr;
1309
1310 if (SvPOK (arg) || !SvNIOK (arg))
1311 {
1312 STRLEN svlen;
1313 /* perl uses IOCPARM_LEN for fcntl, so we do, too */
1314#ifdef IOCPARM_LEN
1315 STRLEN need = IOCPARM_LEN (request);
1316#else
1317 STRLEN need = 256;
1318#endif
1319
1320 if (svlen < need)
1321 svptr = SvGROW (arg, need + 1);
1322 }
1323 else
1324 svptr = (char *)SvIV (arg);
1325
1326 {
1327 dREQ;
1328
1329 req->type = ix;
1330 req->sv1 = newSVsv (fh);
1331 req->int1 = fd;
1332 req->int2 = (long)request;
1333 req->sv2 = SvREFCNT_inc (arg);
1334 req->ptr2 = svptr;
1335
1336 REQ_SEND;
1337 }
1338}
1339
1340void
1301aio_readlink (SV8 *pathname, SV *callback = &PL_sv_undef) 1341aio_readlink (SV8 *pathname, SV *callback = &PL_sv_undef)
1302 ALIAS: 1342 ALIAS:
1303 aio_readlink = EIO_READLINK 1343 aio_readlink = EIO_READLINK
1304 aio_realpath = EIO_REALPATH 1344 aio_realpath = EIO_REALPATH
1305 PPCODE: 1345 PPCODE:

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines