dwtotalcount++;
}
}
else
{
lerror=getlasterror();
if(lerror==997)
{
_tprintf(_t("\ntransport:\toverlapped i/o operation is in progress.\n"));
}
else
{
_tprintf(_t("\ntransport error:\t%d\n"),lerror);
}
}
if(pbuf!=null)
{
netapibufferfree(pbuf);
}
}while(nstatus==error_more_data);
_tprintf(_t("\ntotal of %d entrie(s) enumerated.\n"),dwtotalcount);
return 0;
}
int session(ptstr server)
{
psession_info_10 pbuf,pbuffer;
net_api_status nstatus;
dword i,dwlevel;
dword er,tr,resume;
dword dwtotalcount;
dword dwlength;
ptstr pszclient;
ptstr pszuser;
dword lerror;
_tprintf(_t("\n****** session ******\n"));
dwlevel=10;
dwtotalcount=0;
pszclient=null;
pszuser=null;
er=0;
tr=0;
resume=0;
dwlength=_tcslen(server);
do
{
nstatus=netsessionenum(server,pszclient,pszuser,dwlevel,(pbyte *)&pbuf,max_preferred_length,&er,&tr,&resume);
if((nstatus==nerr_success) || (nstatus==error_more_data))
{
pbuffer=pbuf;
for(i=0;i<er;i++)
{
if(pbuffer==null)
{
_tprintf(_t("an access violation has occurred.\n"));
break;
}
_tprintf(_t("\nclient:\t\t%s"),pbuffer->sesi10_cname);