LSF-Base
view release on metacpan or search on metacpan
PREINIT:
LSF_Base_rusage *ru;
LS_WAIT_T status;
int tid;
SV *rv;
PPCODE:
ru = safemalloc(sizeof(LSF_Base_rusage));
tid = ls_rwait(&status, options, ru);
if( tid < 0 ){
STATUS_NATIVE_SET(lserrno);
SET_LSF_ERRMSG;
XSRETURN_EMPTY;
}
STATUS_NATIVE_SET(status);
XPUSHs(sv_2mortal(newSViv(tid)));
rv = newRV_inc(&PL_sv_undef);
sv_setref_iv(rv, "LSF::Base::rusagePtr",(IV)ru);
XPUSHs(sv_2mortal(rv));
XSRETURN(2);
void
ls_rwaittid(self, tid, options)
void *self
int tid
int options
PREINIT:
LSF_Base_rusage *ru;
LS_WAIT_T status;
SV *rv;
PPCODE:
ru = safemalloc(sizeof(LSF_Base_rusage));
tid = ls_rwaittid(tid, &status, options, ru);
if( tid < 0 ){
STATUS_NATIVE_SET(lserrno);
SET_LSF_ERRMSG;
XSRETURN_UNDEF;
}
STATUS_NATIVE_SET(status);
rv = newRV_inc(&PL_sv_undef);
sv_setref_iv(rv, "LSF::Base::rusagePtr",(IV)ru);
XPUSHs(sv_2mortal(rv));
XSRETURN(1);
int
ls_rkill(self, tid, sig)
void *self
int tid
int sig
CODE:
if( ls_rkill(tid, sig) < 0 ){
STATUS_NATIVE_SET(lserrno);
SET_LSF_ERRMSG;
RETVAL = 0;
}
RETVAL = 1;
OUTPUT:
RETVAL
int
ls_rsetenv(self, host, envp)
void *self
char *host
char **envp
CODE:
if(ls_rsetenv(host, envp) < 0 ){
STATUS_NATIVE_SET(lserrno);
SET_LSF_ERRMSG;
RETVAL = 0;
}
RETVAL = 1;
OUTPUT:
RETVAL
int
ls_chdir(self, host, clntdir)
void *self
char *host
char *clntdir
CODE:
if(ls_chdir(host, clntdir) < 0){
STATUS_NATIVE_SET(lserrno);
SET_LSF_ERRMSG;
RETVAL = 0;
}
else
RETVAL = 1;
OUTPUT:
RETVAL
int
ls_stdinmode(self, remote)
void *self;
int remote;
CODE:
if( ls_stdinmode(remote) < 0 ){
STATUS_NATIVE_SET(lserrno);
SET_LSF_ERRMSG;
RETVAL = 0;
}
else
RETVAL = 1;
OUTPUT:
RETVAL
void
ls_getstdin(self, on, max)
void *self;
int on;
int max;
PREINIT:
int *tidlist;
int i, count;
PPCODE:
tidlist = safemalloc(sizeof(int)*max);
if( count = ls_getstdin(on, tidlist, max) < 0 ){
STATUS_NATIVE_SET(lserrno);
SET_LSF_ERRMSG;
XSRETURN_UNDEF;
}
for( i = 0; i < count; i++){
XPUSHs(sv_2mortal(newSViv(tidlist[i])));
}
safefree(tidlist);
XSRETURN(count);
( run in 0.790 second using v1.01-cache-2.11-cpan-2398b32b56e )