Beispiel #1
0
extern int lsmod_main(int argc, char **argv)
{
	printf("Module                  Size  Used by");
	check_tainted();

	if (bb_xprint_file_by_name("/proc/modules") < 0) {
		return 0;
	}
	return 1;
}
Beispiel #2
0
int lsmod_main(int argc, char **argv)
{
	printf("Module                  Size  Used by");
	check_tainted();
#if defined(CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT)
	{
	  FILE *file;
	  char line[4096];

	  file = bb_xfopen("/proc/modules", "r");

	  while (fgets(line, sizeof(line), file)) {
	    char *tok;

	    tok = strtok(line, " \t");
	    printf("%-19s", tok);
	    tok = strtok(NULL, " \t\n");
	    printf(" %8s", tok);
	    tok = strtok(NULL, " \t\n");
	    /* Null if no module unloading support. */
	    if (tok) {
	      printf("  %s", tok);
	      tok = strtok(NULL, "\n");
	      if (!tok)
		tok = "";
	      /* New-style has commas, or -.  If so,
		 truncate (other fields might follow). */
	      else if (strchr(tok, ',')) {
		tok = strtok(tok, "\t ");
		/* Strip trailing comma. */
		if (tok[strlen(tok)-1] == ',')
		  tok[strlen(tok)-1] = '\0';
	      } else if (tok[0] == '-'
			 && (tok[1] == '\0' || isspace(tok[1])))
		tok = "";
	      printf(" %s", tok);
	    }
	    printf("\n");
	  }
	  fclose(file);
	}
	return 0;  /* Success  */
#else
	if (bb_xprint_file_by_name("/proc/modules") < 0) {
		return 0;
	}
#endif  /*  CONFIG_FEATURE_2_6_MODULES  */
	return 1;
}