view release on metacpan or search on metacpan
DFS-full.xs view on Meta::CPAN
RETVAL = pioctl(mount_dir, VIOC_AFS_DELETE_MT_PT, &ioctl_buf, 1);
else
RETVAL = EINVAL;
}
OUTPUT:
RETVAL
void
fid(path)
char *path
PPCODE:
{
struct afs_ioctl ioctl_buf;
DCE__DFS__fid fid;
error_status_t status = 0;
SV *sv = &PL_sv_undef;
if (!(fid = (DCE__DFS__fid)malloc(sizeof(struct afsFid))))
status = sec_s_no_memory;
else {
ioctl_buf.in_size = 0;
DFS-full.xs view on Meta::CPAN
}
}
XPUSHs(sv);
sv = sv_2mortal(newSViv(status));
XPUSHs(sv);
}
void
flserver(cell_fs = "/.:/fs")
char *cell_fs
PPCODE:
{
SV *sv;
DCE__DFS__flserver flserver;
error_status_t status;
if (!(flserver = (DCE__DFS__flserver)malloc(sizeof(flserver_obj))))
{
sv = &PL_sv_undef;
XPUSHs(sv);
sv = sv_2mortal(newSViv(sec_s_no_memory));
DFS-full.xs view on Meta::CPAN
void
DESTROY(fid)
DCE::DFS::fid fid
CODE:
free((void *)fid);
void
id(fid)
DCE::DFS::fid fid
PPCODE:
{
char buf[32];
sprintf(buf, "%d,,%d", AFS_hgethi(fid->Volume), AFS_hgetlo(fid->Volume));
XPUSHs(sv_2mortal(newSVpv(buf, strlen(buf))));
}
MODULE = DCE::DFS PACKAGE = DCE::DFS::flserver
void
DFS-full.xs view on Meta::CPAN
ftserver_reset(flserver)
DCE::DFS::flserver flserver
CODE:
{
flserver->site_start = flserver->site_count = flserver->site_index = 0;
}
void
ftserver(flserver)
DCE::DFS::flserver flserver
PPCODE:
{
DCE__DFS__ftserver ftserver;
error_status_t status = 0;
int index;
SV *sv = &PL_sv_undef;
if (flserver->site_index >= flserver->site_count)
{
for(index = 0; index < flserver->flserver_h_count; index++)
{
DFS-full.xs view on Meta::CPAN
flserver->site_index++;
}
XPUSHs(sv);
XPUSHs(sv_2mortal(newSViv(status)));
}
void
ftserver_by_name(flserver, name)
DCE::DFS::flserver flserver
char *name
PPCODE:
{
DCE__DFS__ftserver ftserver;
error_status_t status;
u_long addr = 0;
struct hostent *host;
SV *sv = &PL_sv_undef;
if ((int)(addr = inet_addr(name)) == -1)
if (host = gethostbyname(name))
memcpy(&addr, host->h_addr, sizeof(addr));
DFS-full.xs view on Meta::CPAN
int type
CODE:
{
flserver->attributes.volumetype = VOLTIX_TO_VOLTYPE(type);
flserver->attributes.Mask |= VLLIST_VOLUMETYPE;
}
void
fileset(flserver)
DCE::DFS::flserver flserver
PPCODE:
{
DCE__DFS__fileset fileset;
error_status_t status = 0;
unsigned32 dummy, dummy2;
int index;
SV *sv = &PL_sv_undef;
if (flserver->entry_index >= flserver->entry_info.bulkentries_len)
{
for(index = 0; index < flserver->flserver_h_count; index++)
DFS-full.xs view on Meta::CPAN
}
XPUSHs(sv);
sv = sv_2mortal(newSViv(status));
XPUSHs(sv);
}
void
fileset_by_name(flserver, name)
DCE::DFS::flserver flserver
char *name
PPCODE:
{
error_status_t status;
DCE__DFS__fileset fileset;
SV *sv = &PL_sv_undef;
int index;
if (fileset = (DCE__DFS__fileset)malloc(sizeof(fileset_obj)))
{
for(index = 0; index < flserver->flserver_h_count; index++)
{
DFS-full.xs view on Meta::CPAN
sv = sv_2mortal(newSViv(status));
XPUSHs(sv);
}
void
fileset_by_id(flserver, fid)
DCE::DFS::flserver flserver
DCE::DFS::fid fid
PPCODE:
{
error_status_t status;
DCE__DFS__fileset fileset;
SV *sv = &PL_sv_undef;
int index;
if (fileset = (DCE__DFS__fileset)malloc(sizeof(fileset_obj)))
{
for(index = 0; index < flserver->flserver_h_count; index++)
{
DFS-full.xs view on Meta::CPAN
if (retval)
ST(0) = sv_2mortal(newSVpv(retval, strlen(retval)));
else
ST(0) = &PL_sv_undef;
}
void
aggregate(ftserver)
DCE::DFS::ftserver ftserver
PPCODE:
{
DCE__DFS__aggregate aggr;
error_status_t status = 0;
SV *sv = &PL_sv_undef;
if (ftserver->aggr_index >= ftserver->aggr_entries.ftserver_aggrList_len)
{
status = FTSERVER_ListAggregates(ftserver->ftserver_h, &ftserver->aggr_start,
&ftserver->aggr_nextstart, &ftserver->aggr_entries);
DFS-full.xs view on Meta::CPAN
{
unsigned32 status;
rpc_binding_free(&aggr->ftserver_h, &status);
free((void *)aggr);
}
void
ftserver(aggr)
DCE::DFS::aggregate aggr
PPCODE:
{
DCE__DFS__ftserver ftserver;
error_status_t status = 0;
SV *sv = &PL_sv_undef;
if (ftserver = (DCE__DFS__ftserver)malloc(sizeof(ftserver_obj)))
{
ftserver->addr = aggr->addr;
rpc_binding_copy(aggr->ftserver_h, &ftserver->ftserver_h, &status);
init_ftserver_state(ftserver);
DFS-full.xs view on Meta::CPAN
if (fileset->ftserver_h_initialized & (1 << index))
rpc_binding_free(&fileset->ftserver_h[index], &status);
free((void *)fileset);
}
void
ftserver(fileset, ftserver_index = -1)
DCE::DFS::fileset fileset
int ftserver_index
PPCODE:
{
DCE__DFS__ftserver ftserver;
error_status_t status = 0;
SV *sv = &PL_sv_undef;
int index = ((ftserver_index == -1) ? fileset->ftserver_rw_index : ftserver_index);
if (index < 0 || index >= fileset->entry.nServers)
status = REP_ERR_INVAL_PARAM;
else if (!(ftserver = (DCE__DFS__ftserver)malloc(sizeof(ftserver_obj))))
status = sec_s_no_memory;
DFS-full.xs view on Meta::CPAN
}
XPUSHs(sv);
sv = sv_2mortal(newSViv(status));
XPUSHs(sv);
}
void
aggregate(fileset, ftserver_index = -1)
DCE::DFS::fileset fileset
int ftserver_index
PPCODE:
{
DCE__DFS__aggregate aggr;
error_status_t status = 0;
int index = ((ftserver_index == -1) ? fileset->ftserver_rw_index : ftserver_index);
SV *sv = &PL_sv_undef;
if (index < 0 || index >= fileset->entry.nServers)
status = REP_ERR_INVAL_PARAM;
else if (!(aggr = (DCE__DFS__aggregate)malloc(sizeof(aggregate_obj))))
status = sec_s_no_memory;
DFS-full.xs view on Meta::CPAN
RETVAL = exists;
}
OUTPUT:
RETVAL
void
usage(fileset, ftserver_index = -1, fileset_type = 0)
DCE::DFS::fileset fileset
int ftserver_index
int fileset_type
PPCODE:
{
SV *sv;
error_status_t status;
int index = ((ftserver_index == -1) ? fileset->ftserver_rw_index : ftserver_index);
ftserver_status *ft_status = NULL;
unsigned32 seconds, reads, writes;
time_t now;
status = update_fileset(fileset, index, fileset_type);
now = time(NULL);
DFS-full.xs view on Meta::CPAN
XPUSHs(sv);
sv = sv_2mortal(newSViv(writes));
XPUSHs(sv);
sv = sv_2mortal(newSViv(status));
XPUSHs(sv);
}
void
quota(fileset)
DCE::DFS::fileset fileset
PPCODE:
{
SV *sv;
error_status_t status;
unsigned32 quota, used;
status = update_fileset(fileset, fileset->ftserver_rw_index, 0);
if (!status) {
quota = ((0xffc00000 & (AFS_hgethi(fileset->rw_status.vsd.visQuotaLimit) << 22)) | (0x003fffff & (AFS_hgetlo(fileset->rw_status.vsd.visQuotaLimit) >> 10)));
used = ((0xffc00000 & (AFS_hgethi(fileset->rw_status.vsd.visQuotaUsage) << 22)) | (0x003fffff & (AFS_hgetlo(fileset->rw_status.vsd.visQuotaUsage) >> 10)));