8f6604c6a033bc36269cfe8b23f7efbfcf7e2407
[openwrt-10.03/.git] / tools / firmware-utils / src / mksyshdr.c
1 #include <stdlib.h>\r
2 #include <stdio.h>\r
3 int main(int argc, char* argv[])\r
4 {\r
5         FILE* fp;\r
6         long  nImgSize;\r
7         char* pHeader1 = "CSYS";\r
8         long  nHeader2 = 0x80500000;\r
9 \r
10         if (argc != 3)\r
11         {\r
12                 printf("Usage: mksyshdr <header file> <image file>\n");\r
13                 return -1;\r
14         }\r
15 \r
16         fp = fopen(argv[2], "rb");\r
17         if (fp != NULL)\r
18         {\r
19                 fseek(fp, 0, SEEK_END);\r
20                 nImgSize = ftell(fp);\r
21                 fclose(fp);\r
22                 fp = fopen(argv[1], "wb+");\r
23                 if (fp != NULL)\r
24                 {\r
25                         fwrite(pHeader1,  sizeof(char), 4, fp);\r
26                         fwrite(&nHeader2, sizeof(long), 1, fp);\r
27                         fwrite(&nImgSize, sizeof(long), 1, fp);\r
28                         fclose(fp);\r
29                 }\r
30                 else\r
31                 {\r
32                         printf("Cannot create %s.\n", argv[1]);\r
33                         return -1;\r
34                 }\r
35         }\r
36         else\r
37         {\r
38                 printf("Cannot open %s.\n", argv[2]);\r
39                 return -1;\r
40         }\r
41 \r
42         return 0;\r
43 }\r
44 \r