FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
wolfssl/scripts/dertoc.pl at master · wolfSSL/wolfssl · GitHub
Uh oh!
There was an error while loading.
Please reload this page
.
wolfSSL
/
wolfssl
Public
Notifications
You must be signed in to change notification settings
Fork
1k
Star
2.9k
Code
Issues
44
Pull requests
180
Actions
Projects
Wiki
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Actions
Projects
Wiki
Security and quality
Insights
Expand file tree
Breadcrumbs
wolfssl
/
scripts
/
dertoc.pl
Copy path
More file actions
More file actions
Latest commit
History
History
History
executable file
·
71 lines (53 loc) · 1.43 KB
Breadcrumbs
wolfssl
/
scripts
/
dertoc.pl
Copy path
File metadata and controls
executable file
·
71 lines (53 loc) · 1.43 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#
!/usr/bin/env perl
#
dertoc.pl
#
version 1.0
#
Updated 07/31/2018
#
#
Copyright (C) 2006-2018 wolfSSL Inc.
#
use
strict;
use
warnings;
my
$num_args
=
$#ARGV
+ 1;
if
(
$num_args
!= 3 ) {
print
"
usage: ./scripts/dertoc.pl ./certs/server-cert.der server_cert_der_2048 dertoc.c
\n
"
;
exit
;
}
my
$inFile
=
$ARGV
[0];
my
$outName
=
$ARGV
[1];
my
$outputFile
=
$ARGV
[2];
#
open our output file, "+>" creates and/or truncates
open
OUT_FILE,
"
+>
"
,
$outputFile
or
die
$!
;
print
OUT_FILE
"
/*
$outputFile
*/
\n\n
"
;
print
OUT_FILE
"
static const unsigned char
$outName
\[
] =
\n
"
;
print
OUT_FILE
"
{
\n
"
;
file_to_hex(
$inFile
);
print
OUT_FILE
"
};
\n
"
;
print
OUT_FILE
"
static const int sizeof_
$outName
= sizeof(
$outName
);
\n\n
"
;
#
close file
close
OUT_FILE
or
die
$!
;
#
print file as hex, comma-separated, as needed by C buffer
sub
file_to_hex
{
my
$fileName
=
$_
[0];
open
my
$fp
,
"
<
"
,
$fileName
or
die
$!
;
binmode
(
$fp
);
my
$fileLen
=
-s
$fileName
;
my
$byte
;
for
(
my
$i
= 0,
my
$j
= 1;
$i
<
$fileLen
;
$i
++,
$j
++)
{
if
(
$j
== 1) {
print
OUT_FILE
"
\t
"
;
}
read
(
$fp
,
$byte
, 1)
or
die
"
Error reading
$fileName
"
;
my
$output
=
sprintf
(
"
0x%02X
"
,
ord
(
$byte
));
print
OUT_FILE
$output
;
if
(
$i
!= (
$fileLen
- 1)) {
print
OUT_FILE
"
,
"
;
}
if
(
$j
== 10) {
$j
= 0;
print
OUT_FILE
"
\n
"
;
}
}
print
OUT_FILE
"
\n
"
;
close
(
$fp
);
}
Back
|
FazBrowse Home
|
New Git URL