host = (char *) malloc((size_t) len+1);
host = (char *) malloc(len+1);
static int do_reverse_connect(char *str) {	rfbClientPtr cl;	char *host, *p;	int rport = 5500, len = strlen(str);	if (len < 1) {		return 0;	}	if (len > 1024) {		rfbLog("reverse_connect: string too long: %d bytes\n", len);		return 0;	}	if (!screen) {		rfbLog("reverse_connect: screen not setup yet.\n");		return 0;	}	/* copy in to host */	host = (char *) malloc((size_t) len+1);	if (! host) {		rfbLog("reverse_connect: could not malloc string %d\n", len);		return 0;	}	strncpy(host, str, len);	host[len] = '\0';	/* extract port, if any */	if ((p = strchr(host, ':')) != NULL) {		rport = atoi(p+1);		*p = '\0';	}	cl = rfbReverseConnection(screen, host, rport);	free(host);	if (cl == NULL) {		rfbLog("reverse_connect: %s failed\n", str);		return 0;	} else {		rfbLog("reverse_connect: %s/%s OK\n", str, cl->host);		return 1;	}}