fprintf(stderr, "use RAW XT keyboard, %s\n", devList[i]);
hpcErrorF(("use RAW XT keyboard, %s\n", devList[i]));
InitKbdMouse(argc, argv)    int     	  argc;    char    	  **argv;{	struct rlimit rl;	int maxfds, kbdtype;	int i;	char **devList;	static int inited;	if (inited)	    return;	/*	 * one per client, one per screen, one per listen endpoint,	 * keyboard, mouse, and stderr	 */	maxfds = MAXCLIENTS + MAXSCREENS + 5;	if (getrlimit (RLIMIT_NOFILE, &rl) == 0) {	    rl.rlim_cur = maxfds < rl.rlim_max ? maxfds : rl.rlim_max;	    (void) setrlimit (RLIMIT_NOFILE, &rl);	}	hpcKbdPriv.fd = hpcPtrPriv.fd = -1;	/*	 * use mouse multiplexer if it's available.	 */	hpcPtrPriv.fd = open("/dev/wsmux0", O_RDWR);	/*	 * try each mouse device	 */	for (i = 0; i < 8; i++) {	    char devname[16];#if 0	    /*	     * We can't use wskbd for now, because primary keyboard(wskbd0)             * is already connected with console(/dev/ttyE0).	     */	    sprintf(devname, "/dev/wskbd%d", i);	    if (hpcKbdPriv.fd == -1)		hpcKbdPriv.fd = open(devname, O_RDWR);#endif	    sprintf(devname, "/dev/wsmouse%d", i);	    if (hpcPtrPriv.fd == -1)		hpcPtrPriv.fd = open(devname, O_RDWR);	}	if (hpcKbdPriv.fd != -1) {	    hpcKbdPriv.devtype = HPC_KBDDEV_WSKBD;	} else {	    /*	     * use keyboards which are connected wsdisplay(ttyE*).	     */	    devList = GetDeviceList (argc, argv);	    for (i = 0; devList[i] != NULL; i++) {		if (0 <= (hpcKbdPriv.fd = open(devList[i], O_RDWR))) {		    fprintf(stderr, "use RAW XT keyboard, %s\n",			    devList[i]);		    hpcKbdPriv.devtype = HPC_KBDDEV_RAW;		    break;		}	    }	}	if (hpcKbdPriv.fd == -1 || hpcPtrPriv.fd == -1)	    err(1, "open kbd/mouse");	noXkbExtension = FALSE;		/* XXX for now */	inited = 1;	if (ioctl(hpcKbdPriv.fd, WSKBDIO_GTYPE, &kbdtype) == -1) {	    Error("cannot get keyboard type\n");	    kbdtype = 0;	}	switch (kbdtype) {	case WSKBD_TYPE_USB:		break;	}	/* XXX, What does this mean ??? */	hpcKbdPriv.type = 0;}