int32_t            *ip; int32_t            i, j;
int		       i, j; char               cellname[MAXSIZE]; u_int32_t	       servers[8]; int 	       ret; unsigned	       max_servers = sizeof(servers)/sizeof(servers[0]);
void afs_listcells (void){    struct ViceIoctl   a_params;    struct in_addr     addr;    int32_t            *ip;    int32_t            i, j;    a_params.in_size = sizeof (int32_t);    a_params.out_size = MAXSIZE;    a_params.in = (char *) &i;    a_params.out = malloc (MAXSIZE);    if (a_params.out == NULL) {	printf ("fs: Out of memory\n");	return;    }    i = 0;    while (k_pioctl (NULL, VIOCGETCELL, &a_params, 0) != -1) {	ip = (int32_t *) a_params.out;	printf ("Cell %s on hosts", a_params.out + 8 * sizeof (int32_t));	j = 0;	while (ip[j] && j<8) {	    struct hostent  *h;	    addr.s_addr = ip[j];	    h = gethostbyaddr ((const char *) &addr, sizeof(addr), AF_INET);	    if (h == NULL) {		printf (" %s", inet_ntoa (addr));	    }	    else {		printf (" %s", h->h_name);	    }	    j++;	}	printf (".\n");	i++;    }    if (errno) {	fserr(PROGNAME, errno, NULL);	free(a_params.out);	return;    }    free (a_params.out);}