static int callLimTcp_(char *reqbuf, char **rep_buf, int req_size, struct LSFHeader *replyHdr, int options) { static char fname[]="callLimTcp_"; char retried = FALSE; int cc; XDR xdrs; struct Buffer sndbuf; struct Buffer rcvbuf; if (logclass & (LC_COMM | LC_TRACE)) ls_syslog(LOG_DEBUG2,"%s: Entering...req_size=%d",fname, req_size); *rep_buf = NULL; if (!sockIds_[TCP].sin_addr.s_addr) { if (ls_getmastername() == NULL) return(-1); } contact: if (limchans_[TCP] < 0) { limchans_[TCP] = chanClientSocket_(AF_INET, SOCK_STREAM, 0); if (limchans_[TCP] < 0 ) return(-1); cc = chanConnect_(limchans_[TCP], &sockIds_[TCP], conntimeout_ * 1000, 0); if (cc < 0) { ls_syslog(LOG_DEBUG,"\ %s: failed in connecting to limChans_[TCP]=<%d> <%s>", fname, limchans_[TCP], sockAdd2Str_(&sockIds_[TCP])); if (errno == ECONNREFUSED || errno == ENETUNREACH) { if (errno == ECONNREFUSED) { lserrno = LSE_LIM_DOWN; } if (! retried) { if (ls_getmastername() != NULL) { retried = 1; CLOSECD(limchans_[TCP]); goto contact; } } } sockIds_[TCP].sin_addr.s_addr = 0; sockIds_[TCP].sin_port = 0; CLOSECD(limchans_[TCP]); return(-1); }
int main (int argc, char **argv) { char *name; int cc; if (ls_initdebug (argv[0]) < 0) { ls_perror ("ls_initdebug"); return -1; } while ((cc = getopt (argc, argv, "hV")) != EOF) { switch (cc) { case 'h': usage (argv[0]); return 0; case 'V': fputs (_LS_VERSION_, stderr); return 0; default: usage (argv[0]); return -1; } } puts (_LS_VERSION_); TIMEIT (0, (name = ls_getclustername ()), "ls_getclustername"); if (name == NULL) { ls_perror ("ls_getclustername()"); return -1; } printf ("My cluster name is %s\n", name); TIMEIT (0, (name = ls_getmastername ()), "ls_getmastername"); if (name == NULL) { ls_perror ("ls_getmastername()"); return -1; } printf ("My master name is %s\n", name); return 0; }