cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

bin2c.c (743B)


      1/*
      2 * Unloved program to convert a binary on stdin to a C include on stdout
      3 *
      4 * Jan 1999 Matt Mackall <mpm@selenic.com>
      5 *
      6 * This software may be used and distributed according to the terms
      7 * of the GNU General Public License, incorporated herein by reference.
      8 */
      9
     10#include <stdio.h>
     11
     12int main(int argc, char *argv[])
     13{
     14	int ch, total = 0;
     15
     16	if (argc > 1)
     17		printf("const char %s[] %s=\n",
     18			argv[1], argc > 2 ? argv[2] : "");
     19
     20	do {
     21		printf("\t\"");
     22		while ((ch = getchar()) != EOF) {
     23			total++;
     24			printf("\\x%02x", ch);
     25			if (total % 16 == 0)
     26				break;
     27		}
     28		printf("\"\n");
     29	} while (ch != EOF);
     30
     31	if (argc > 1)
     32		printf("\t;\n\n#include <linux/types.h>\n\nconst size_t %s_size = %d;\n",
     33		       argv[1], total);
     34
     35	return 0;
     36}