Example #1
0
/* setlogmask -- set the log mask level */
int
setlogmask(int pmask)
{
    ULONG taglist[5];

    taglist[0] = SBTM_GETVAL(SBTC_LOGMASK);
    taglist[2] = SBTM_SETVAL(SBTC_LOGMASK);
    taglist[3] = pmask;
    taglist[4] = TAG_END;

    SocketBaseTagList((struct TagItem *)taglist);
    return (int)taglist[1];
}
Example #2
0
long tcp_herrno(void)
{
	long id;

#if defined(_DCC) || defined(__MORPHOS__)
	struct TagItem tags[2]={{0, 0}, {TAG_DONE, 0}};
	tags[0].ti_Tag=(ULONG)SBTM_GETREF(SBTC_HERRNO);
	tags[0].ti_Data=(ULONG)&id;

	if(SocketBaseTagList(tags) != 0)
#else
	if(SocketBaseTags(
		SBTM_GETREF(SBTC_HERRNO), (ULONG)&id,
	TAG_DONE) != 0)
#endif
	{
		id = -1;
	}

	return id;
}
Example #3
0
char *
strerror(int error)
#endif
{
  ULONG taglist[3];

  if(!checksocketlib())
  {
	/* cannot use bsdsocket.lib's error strings, use those from SAS */
	PyErr_Clear();
	if(error>=0 && error<=34) return __sys_errlist[error];
	if(error==ELOOP) return "Too many levels of links"; /* link loop */
	else return __sys_errlist[0];
  }

  taglist[0] = SBTM_GETVAL(SBTC_ERRNOSTRPTR);
  taglist[1] = error;
  taglist[2] = TAG_END;

  SocketBaseTagList((struct TagItem *)taglist);
  return (char *)taglist[1];
}