]> git.ipfire.org Git - people/ms/strongswan.git/blame - scripts/bin2array.c
Merge branch 'utils-split'
[people/ms/strongswan.git] / scripts / bin2array.c
CommitLineData
f3af4969
TB
1/*
2 * Copyright (C) 2008 Martin Willi
3 * Hochschule fuer Technik Rapperswil
4 *
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License as published by the
7 * Free Software Foundation; either version 2 of the License, or (at your
8 * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
9 *
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
12 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13 * for more details.
14 */
68356ab1
MW
15
16#include <stdio.h>
17
18/**
19 * convert standard input to binary data to a c array
20 */
21int main(int argc, char *argv[])
22{
23 int i, end = 0;
d5a9e6ff 24 unsigned char byte;
68356ab1
MW
25
26 printf("char %s[] = {\n", argc > 1 ? argv[1] : "data");
27 while (1)
28 {
29 printf(" ");
30 for (i = 0; i < 16; i++)
31 {
32 if (fread(&byte, 1, 1, stdin) != 1)
33 {
34 end = 1;
35 break;
36 }
d5a9e6ff 37 printf("0x%02x,", (unsigned int)byte);
68356ab1
MW
38 }
39 printf("\n");
40 if (end)
41 {
42 break;
43 }
7daf5226 44 }
68356ab1
MW
45 printf("};\n");
46 return 0;
47}
48