Пример #1
0
static void print_apb_pnp_dev(uint32_t slot) {
	amba_dev_t dev;
	if (slot > APB_QUANTITY) {
		printf("print_apb_pnp_dev: Too big arg. The quantity of APB devices is %d\n",APB_QUANTITY);
		return;
	}
	if (NULL != apb_devices[slot]) {
		show_dev(apb_devices[slot], true);
		return;
	}

	if (-1 != fill_amba_dev(&dev, slot, false, false)) {
		show_dev(&dev, false);
	} else {
		printf("No such device.\n");
	}
}
Пример #2
0
static int spew_debug_info(struct controller *ctrl, char *data, int size)
{
	int used;

	used = size - show_ctrl(ctrl, data);
	used = (size - used) - show_dev(ctrl, &data[used]);
	return used;
}
Пример #3
0
static void print_ahbm_pnp_dev(uint32_t slot) {
	amba_dev_t dev;
	if (slot >AHB_MASTERS_QUANTITY) {
    		printf("print_ahbm_pnp_dev: Too big arg. The quantity of AHB masters is %d\n",AHB_MASTERS_QUANTITY);
    		return;
	}

	if (NULL != ahbm_devices[slot]) {
		show_dev(ahbm_devices[slot], true);
		return;
	}
	if (-1 != fill_amba_dev(&dev, slot, true, true)) {
		show_dev(&dev, false);
	} else {
		printf("No such device.\n");
	}
}
Пример #4
0
static int print_apb_entries(int amount) {
	int i, count = 0;
	amba_dev_t dev;

	for (i = 0; i < amount / 4; i++) {
		if (-1 != fill_amba_dev(&dev, i, false, false)) {
			show_dev(&dev, false);
			count++;
		}
	}
	return count;
}
Пример #5
0
static int print_ahb_entries(int amount, bool is_master) {
	int i, count = 0;
	amba_dev_t dev;

	for (i = 0; i < amount; i++) {

		if (-1 != fill_amba_dev(&dev,  i, true, is_master)) {
			show_dev(&dev, false);
			count++;
		}
	}
	return count;
}
static void pcap_enum_devs(void)
{
	pcap_if_t *devs, *dev;
	char err[PCAP_ERRBUF_SIZE + 1];

	if (pcap_findalldevs(&devs, err) < 0) {
		fprintf(stderr, "Error - pcap_findalldevs: %s\n", err);
		return;
	}

	for (dev = devs; dev; dev = dev->next) {
		show_dev(dev);
	}

	pcap_freealldevs(devs);
}
Пример #7
0
int main(int argc, char *argv[])
{
	pcap_if_t *devs, *dev;
	char err[PCAP_ERRBUF_SIZE + 1];

	if (pcap_findalldevs(&devs, "rpcap://") < -1) {
		fprintf(stderr, "Error - pcap_findalldevs: %s\n", err);
		return -1;
	}

	for (dev = devs; dev; dev = dev->next) {
		show_dev(dev);
	}

	return 0;
}
Пример #8
0
int main(int argc,char *argv[])
{
	int rp, pr, dev;
	char *cp;
	char host[49];
	char tmpb[CMD_BUF_SIZE];

	pname = argv[0];
	printf("%s: Compiled %s %s\n",pname,__DATE__,__TIME__);

	if (argc > 1)
		dev = strtoul(argv[1],&cp,0);

	do_open(dev);
	show_dev(1);

	bzero((void *) host,49);
	gethostname(host,48);

	while (True) {

		sprintf(prompt,"%s:Icv196.%d[%02d]",host,get_lun(),cmdindx+1);
		printf("%s",prompt);

		cmdbuf = &(history[cmdindx][0]);

		bzero((void *) tmpb,CMD_BUF_SIZE);
		if (fgets(tmpb,CMD_BUF_SIZE,stdin) == NULL) break;

		cp = &(tmpb[0]);
		pr = 0;           /* Dont print a history */
		rp = 0;           /* Dont repeat a command */

		while ((*cp == '-')
		||     (*cp == '+')
		||     (*cp == '.')
		||     (*cp == '!')) {

			pr = 1;        /* Print command on */

			if (*cp == '!') {
				cp++;
				cmdindx = strtoul(cp,&cp,0) -1;
				if (cmdindx >= HISTORIES) cmdindx = 0;
				if (cmdindx < 0) cmdindx = HISTORIES -1;
				rp = 1;
				break;
			}

			if (*cp == '-') {
				if (--cmdindx < 0) cmdindx = HISTORIES -1;
				cmdbuf = &(history[cmdindx][0]);
			}

			if (*cp == '+') {
				if (++cmdindx >= HISTORIES) cmdindx = 0;
				cmdbuf = &(history[cmdindx][0]);
			}

			if (*cp == '.') {
				rp = 1;
				break;
			}

			cp++;
		}
		if (pr) {
			printf("{%s}\t ",cmdbuf); fflush(stdout);
			if (!rp) continue;
		}
		if (!rp) strcpy(cmdbuf,tmpb);

		bzero((void *) val_bufs,sizeof(val_bufs));
		GetAtoms(cmdbuf);
		DoCmd(0);

		if ((!rp) && (++cmdindx >= HISTORIES)) cmdindx = 0;
	}
	exit(0);
}
Пример #9
0
static void
do_show_dev(int argc, char *argv[])
{
	int		option;
	char		*dev = NULL;
	boolean_t	s_arg = B_FALSE;
	boolean_t	i_arg = B_FALSE;
	uint32_t	interval = 0;
	show_mac_state_t state;
	char		*endp = NULL;

	state.ms_parseable = B_FALSE;

	opterr = 0;
	while ((option = getopt_long(argc, argv, ":psi:",
	    longopts, NULL)) != -1) {
		switch (option) {
		case 'p':
			state.ms_parseable = B_TRUE;
			break;
		case 's':
			if (s_arg) {
				(void) fprintf(stderr, gettext(
				    "%s: the option -s cannot be specified "
				    "more than once\n"), progname);
				usage();
			}

			s_arg = B_TRUE;
			break;
		case 'i':
			if (i_arg) {
				(void) fprintf(stderr, gettext(
				    "%s: the option -i cannot be specified "
				    "more than once\n"), progname);
				usage();
			}

			i_arg = B_TRUE;

			errno = 0;
			interval = (int)strtol(optarg, &endp, 10);
			if (errno != 0 || interval == 0 || *endp != '\0') {
				(void) fprintf(stderr,
				    gettext("%s: invalid interval value"
				    " '%d'\n"),
				    progname, interval);
				exit(1);
			}
			break;
		case ':':
			(void) fprintf(stderr,
			    gettext("%s: option requires a value '-%c'\n"),
			    progname, optopt);
			exit(1);
			/*NOTREACHED*/
		case '?':
		default:
			(void) fprintf(stderr,
			    gettext("%s: unrecognized option '-%c'\n"),
			    progname, optopt);
			exit(1);
		}
	}

	if (i_arg && !s_arg) {
		(void) fprintf(stderr, gettext("%s: the option -i "
		    "can be used only with -s\n"), progname);
		usage();
	}

	/* get dev name (optional last argument) */
	if (optind == (argc-1))
		dev = argv[optind];
	else if (optind != argc)
		usage();

	if (dev != NULL) {
		int		index;
		char		drv[LIFNAMSIZ];
		dladm_attr_t	dlattr;
		boolean_t	legacy;

		/*
		 * Check for invalid devices.
		 * aggregations and vlans are not considered devices.
		 */
		if (strncmp(dev, "aggr", 4) == 0 ||
		    dlpi_if_parse(dev, drv, &index) < 0 ||
		    index >= 1000 ||
		    get_if_info(dev, &dlattr, &legacy) < 0) {
			(void) fprintf(stderr,
			    gettext("%s: invalid device '%s'\n"),
			    progname, dev);
			exit(1);
		}
	}

	if (s_arg) {
		dev_stats(dev, interval);
		return;
	}

	if (dev == NULL)
		(void) macadm_walk(show_dev, &state, B_TRUE);
	else
		show_dev(&state, dev);
}