/* print all simulator stats */
void
sim_print_stats (FILE * fd)	/* output stream */
{
    if (!running)
	return;

    /* get stats time */
    sim_end_time = time ((time_t *) NULL);
    sim_elapsed_time = max2 (sim_end_time - sim_start_time, 1);

    /* compute this before calling stat_print_stats */
    total_interconnect_power_stats ();

    /* print simulation stats */
    fprintf (fd, "\nsim: ** simulation statistics **\n");
    stat_print_stats (sim_sdb, fd);
    sim_aux_stats (fd);
#ifdef POPNET
    power_report(fd);
    delay_report(fd);
#endif
    fprintf (fd, "\n");
    if(hotspot_active)
    	hotspot_dumpstats();
    fflush(fd);
}
Example #2
0
void avdtp_dump(int level, struct frame *frm)
{
	uint8_t hdr, sid, nsp, type;
	uint16_t seqn;
	uint32_t time, ssrc;

	switch (frm->num) {
	case 1:
		p_indent(level, frm);
		hdr = get_u8(frm);

		nsp = (hdr & 0x0c) == 0x04 ? get_u8(frm) : 0;
		sid = hdr & 0x08 ? 0x00 : get_u8(frm);

		printf("AVDTP(s): %s %s: transaction %d nsp 0x%02x\n",
			hdr & 0x08 ? pt2str(hdr) : si2str(sid),
			mt2str(hdr), hdr >> 4, nsp);

		switch (sid & 0x7f) {
		case 0x01:
			discover(level + 1, hdr, frm);
			break;
		case 0x02:
		case 0x0c:
			get_capabilities(level + 1, hdr, frm);
			break;
		case 0x03:
			set_configuration(level + 1, hdr, frm);
			break;
		case 0x04:
			get_configuration(level + 1, hdr, frm);
			break;
		case 0x05:
			reconfigure(level + 1, hdr, frm);
			break;
		case 0x06:
			open_close_stream(level + 1, hdr, frm);
			break;
		case 0x07:
			start_suspend_stream(level + 1, hdr, frm);
			break;
		case 0x08:
			open_close_stream(level + 1, hdr, frm);
			break;
		case 0x09:
			start_suspend_stream(level + 1, hdr, frm);
			break;
		case 0x0a:
			abort_streaming(level + 1, hdr, frm);
			break;
		case 0x0b:
			security(level + 1, hdr, frm);
			break;
		case 0x0d:
			delay_report(level + 1, hdr, frm);
			break;
		}

		break;

	case 2:
		p_indent(level, frm);
		hdr  = get_u8(frm);
		type = get_u8(frm);
		seqn = get_u16(frm);
		time = get_u32(frm);
		ssrc = get_u32(frm);

		printf("AVDTP(m): ver %d %s%scc %d %spt %d seqn %d time %d ssrc %d\n",
			hdr >> 6, hdr & 0x20 ? "pad " : "", hdr & 0x10 ? "ext " : "",
			hdr & 0xf, type & 0x80 ? "mark " : "", type & 0x7f, seqn, time, ssrc);
		break;
	}

	raw_dump(level, frm);
}