check hosts in ssl certificates
This commit is contained in:
.gitignorego.modgo.sumsecrets.gomodules.txt
vendor
github.com
cavaliercoder
go-cpio
cloudflare
cfssl
LICENSE
auth
config
config_test.go
testdata
csr
errors
helpers
helpers_test.go
testdata
bundle.pembundle_pkcs7.pembundle_with_whitespace.pemca.pemca_key.pemcert.dercert.pemcert_pkcs7.pemcert_with_whitespace.pemecdsa256.csrempty.pemempty_pkcs7.derempty_pkcs7.pememptycert.pememptypasswordpkcs12.p12enc_priv_key.pemmessed_up_bundle.pemmessed_up_priv_key.pemmessedupcert.pemmultiplecerts.p12noheadercert.pempasswordpkcs12.p12priv_rsa_key.pemprivate_ecdsa_key.pemrsa-old.csrsecp256k1-key.pemtest.bad.csr.pemtest.csr.pem
initca
initca_test.go
testdata
log
ocsp
testdata
signer
local
local_test.go
signer_test.gotestdata
build_inter_pathlen_csrs.shca.pemca_key.pemecdsa256-inter.csrecdsa256-inter.keyecdsa256.csrecdsa256_ca.pemecdsa256_ca_key.pemecdsa384.csrecdsa521.csrex.csrinter_pathlen_0.csrinter_pathlen_1.csrinter_pathlen_unspecified.csrip.csrkey.pemrsa-old.csrrsa2048-inter.csrrsa2048-inter.keyrsa2048.csrrsa3072.csrrsa4096.csrsan_domain.csrtest.csr
testdata
golang
protobuf
AUTHORSCONTRIBUTORSLICENSEmain_test.go
proto
all_test.goany_test.goclone_test.godecode_test.godiscard_test.goencode_test.goequal_test.goextensions_test.gomap_test.gomessage_set_test.go
proto3_proto
proto3_test.gosize2_test.gosize_test.gotest_proto
text_parser_test.gotext_test.goprotoc-gen-go
descriptor
testdata
deprecated
extension_base
extension_extra
extension_test.goextension_user
grpc
import_public
import_public_test.goimports
fmt
test_a_1
test_a_2
test_b_1
test_import_a1m1.pb.gotest_import_a1m1.prototest_import_a1m2.pb.gotest_import_a1m2.prototest_import_all.pb.gotest_import_all.protomulti
my_test
proto3
ptypes
google
certificate-transparency-go
asn1
client
gossip
minimal
testdata
Makefiledup-source-name.cfggoshawk.cfggossiper.privkey.pemhawk-dup-source-name.cfghawk-no-dest-name.cfghawk-no-source-log.cfghawk-no-source-name.cfginvalid-private-key.cfginvalid-root-cert.cfginvalid-source-duration.cfginvalid-source-pubkey.cfgno-dest-log.cfgno-dest-name.cfgno-private-key.cfgno-root-cert.cfgno-source-log.cfgno-source-name.cfgroot-ca.certroot-ca.cfgtest.cfgwrong-password-private-key.cfg
x509ext
jsonclient
serialization_test.gosignatures_test.gotestdata
tls
types_test.gox509
error_test.goerrors_test.goexample_test.goname_constraints_test.gonames_test.gopem_decrypt_test.gopkcs8_test.gorevoked_test.goroot_darwin_test.goroot_unix_test.gosec1_test.gosha2_windows_test.go
testdata
verify_test.gox509_test.gox509util
kr
golang.org
x
crypto
net
sync
gopkg.in
check.v1
.gitignore.travis.ymlLICENSEREADME.mdTODObenchmark.gobenchmark_test.gobootstrap_test.gocheck.gocheck_test.gocheckers.gocheckers_test.goexport_test.gofixture_test.gofoundation_test.gohelpers.gohelpers_test.gointegration_test.goprinter.goprinter_test.goreporter.goreporter_test.gorun.gorun_test.go
yaml.v2
k8s.io
apimachinery
novit.nc
direktil
pkg
77
vendor/github.com/cavaliercoder/go-cpio/example_test.go
generated
vendored
77
vendor/github.com/cavaliercoder/go-cpio/example_test.go
generated
vendored
@ -1,77 +0,0 @@
|
||||
package cpio_test
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"fmt"
|
||||
"io"
|
||||
"log"
|
||||
"os"
|
||||
|
||||
"github.com/cavaliercoder/go-cpio"
|
||||
)
|
||||
|
||||
func Example() {
|
||||
// Create a buffer to write our archive to.
|
||||
buf := new(bytes.Buffer)
|
||||
|
||||
// Create a new cpio archive.
|
||||
w := cpio.NewWriter(buf)
|
||||
|
||||
// Add some files to the archive.
|
||||
var files = []struct {
|
||||
Name, Body string
|
||||
}{
|
||||
{"readme.txt", "This archive contains some text files."},
|
||||
{"gopher.txt", "Gopher names:\nGeorge\nGeoffrey\nGonzo"},
|
||||
{"todo.txt", "Get animal handling license."},
|
||||
}
|
||||
for _, file := range files {
|
||||
hdr := &cpio.Header{
|
||||
Name: file.Name,
|
||||
Mode: 0600,
|
||||
Size: int64(len(file.Body)),
|
||||
}
|
||||
if err := w.WriteHeader(hdr); err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
if _, err := w.Write([]byte(file.Body)); err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
}
|
||||
// Make sure to check the error on Close.
|
||||
if err := w.Close(); err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
|
||||
// Open the cpio archive for reading.
|
||||
b := bytes.NewReader(buf.Bytes())
|
||||
r := cpio.NewReader(b)
|
||||
|
||||
// Iterate through the files in the archive.
|
||||
for {
|
||||
hdr, err := r.Next()
|
||||
if err == io.EOF {
|
||||
// end of cpio archive
|
||||
break
|
||||
}
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
fmt.Printf("Contents of %s:\n", hdr.Name)
|
||||
if _, err := io.Copy(os.Stdout, r); err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
fmt.Println()
|
||||
}
|
||||
|
||||
// Output:
|
||||
// Contents of readme.txt:
|
||||
// This archive contains some text files.
|
||||
// Contents of gopher.txt:
|
||||
// Gopher names:
|
||||
// George
|
||||
// Geoffrey
|
||||
// Gonzo
|
||||
// Contents of todo.txt:
|
||||
// Get animal handling license.
|
||||
}
|
121
vendor/github.com/cavaliercoder/go-cpio/svr4_test.go
generated
vendored
121
vendor/github.com/cavaliercoder/go-cpio/svr4_test.go
generated
vendored
@ -1,121 +0,0 @@
|
||||
package cpio
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"io"
|
||||
"log"
|
||||
"os"
|
||||
"testing"
|
||||
)
|
||||
|
||||
var files = []struct {
|
||||
Name, Body string
|
||||
}{
|
||||
{"./gophers.txt", "Gopher names:\nGeorge\nGeoffrey\nGonzo"},
|
||||
{"./readme.txt", "This archive contains some text files."},
|
||||
{"./todo.txt", "Get animal handling license."},
|
||||
}
|
||||
|
||||
func TestRead(t *testing.T) {
|
||||
f, err := os.Open("testdata/test_svr4_crc.cpio")
|
||||
if err != nil {
|
||||
t.Fatalf("error opening test file: %v", err)
|
||||
}
|
||||
defer f.Close()
|
||||
|
||||
r := NewReader(f)
|
||||
for {
|
||||
_, err := r.Next()
|
||||
if err == io.EOF {
|
||||
return
|
||||
}
|
||||
if err != nil {
|
||||
t.Errorf("error moving to next header: %v", err)
|
||||
return
|
||||
}
|
||||
// TODO: validate header fields
|
||||
}
|
||||
}
|
||||
|
||||
func TestSVR4CRC(t *testing.T) {
|
||||
f, err := os.Open("testdata/test_svr4_crc.cpio")
|
||||
if err != nil {
|
||||
t.Fatalf("error opening test file: %v", err)
|
||||
}
|
||||
defer f.Close()
|
||||
|
||||
w := NewHash()
|
||||
r := NewReader(f)
|
||||
for {
|
||||
hdr, err := r.Next()
|
||||
if err != nil {
|
||||
if err != io.EOF {
|
||||
t.Errorf("error moving to next header: %v", err)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
if hdr.Mode.IsRegular() {
|
||||
w.Reset()
|
||||
_, err = io.CopyN(w, r, hdr.Size)
|
||||
if err != nil {
|
||||
t.Fatalf("error writing to checksum hash: %v", err)
|
||||
}
|
||||
|
||||
sum := Checksum(w.Sum32())
|
||||
if sum != hdr.Checksum {
|
||||
t.Errorf("expected checksum %v, got %v for %v", hdr.Checksum, sum, hdr.Name)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func ExampleNewHash() {
|
||||
// Open the cpio archive for reading.
|
||||
f, err := os.Open("testdata/test_svr4_crc.cpio")
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
defer f.Close()
|
||||
r := NewReader(f)
|
||||
|
||||
// create a Hash
|
||||
h := NewHash()
|
||||
|
||||
// Iterate through the files in the archive.
|
||||
for {
|
||||
hdr, err := r.Next()
|
||||
if err == io.EOF {
|
||||
// end of cpio archive
|
||||
return
|
||||
}
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
// skip symlinks, directories, etc.
|
||||
if !hdr.Mode.IsRegular() {
|
||||
continue
|
||||
}
|
||||
|
||||
// read file into hash
|
||||
h.Reset()
|
||||
_, err = io.CopyN(h, r, hdr.Size)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
// check hash matches header checksum
|
||||
sum := Checksum(h.Sum32())
|
||||
if sum == hdr.Checksum {
|
||||
fmt.Printf("Checksum OK: %v (%v)\n", hdr.Name, hdr.Checksum)
|
||||
} else {
|
||||
fmt.Printf("Checksum FAIL: %v - expected %v, got %v\n", hdr.Name, hdr.Checksum, sum)
|
||||
}
|
||||
}
|
||||
|
||||
// Output:
|
||||
// Checksum OK: gophers.txt (00000C98)
|
||||
// Checksum OK: readme.txt (00000E3D)
|
||||
// Checksum OK: todo.txt (00000A52)
|
||||
}
|
26
vendor/github.com/cavaliercoder/go-cpio/testdata/Makefile
generated
vendored
26
vendor/github.com/cavaliercoder/go-cpio/testdata/Makefile
generated
vendored
@ -1,26 +0,0 @@
|
||||
SOURCES = \
|
||||
gophers.txt \
|
||||
readme.txt \
|
||||
todo.txt \
|
||||
checklist.txt
|
||||
|
||||
ARCHIVES = \
|
||||
test_odc.cpio \
|
||||
test_svr4.cpio \
|
||||
test_svr4_crc.cpio
|
||||
|
||||
all: $(ARCHIVES)
|
||||
|
||||
test_odc.cpio: $(SOURCES)
|
||||
echo $(SOURCES) | tr " " "\n" | cpio -o --owner=0:0 --format=odc > $@
|
||||
|
||||
test_svr4.cpio: $(SOURCES)
|
||||
echo $(SOURCES) | tr " " "\n" | cpio -o --owner=0:0 --format=newc > $@
|
||||
|
||||
test_svr4_crc.cpio: $(SOURCES)
|
||||
echo $(SOURCES) | tr " " "\n" | cpio -o --owner=0:0 --format=crc > $@
|
||||
|
||||
clean:
|
||||
rm -f $(ARCHIVES) version.txt
|
||||
|
||||
.PHONY: all clean
|
1
vendor/github.com/cavaliercoder/go-cpio/testdata/checklist.txt
generated
vendored
1
vendor/github.com/cavaliercoder/go-cpio/testdata/checklist.txt
generated
vendored
@ -1 +0,0 @@
|
||||
todo.txt
|
2
vendor/github.com/cavaliercoder/go-cpio/testdata/etc/hosts
generated
vendored
2
vendor/github.com/cavaliercoder/go-cpio/testdata/etc/hosts
generated
vendored
@ -1,2 +0,0 @@
|
||||
127.0.0.1 localhost
|
||||
::1 localhost
|
4
vendor/github.com/cavaliercoder/go-cpio/testdata/gophers.txt
generated
vendored
4
vendor/github.com/cavaliercoder/go-cpio/testdata/gophers.txt
generated
vendored
@ -1,4 +0,0 @@
|
||||
Gopher names:
|
||||
George
|
||||
Geoffrey
|
||||
Gonzo
|
1
vendor/github.com/cavaliercoder/go-cpio/testdata/readme.txt
generated
vendored
1
vendor/github.com/cavaliercoder/go-cpio/testdata/readme.txt
generated
vendored
@ -1 +0,0 @@
|
||||
This archive contains some text files.
|
BIN
vendor/github.com/cavaliercoder/go-cpio/testdata/test_odc.cpio
generated
vendored
BIN
vendor/github.com/cavaliercoder/go-cpio/testdata/test_odc.cpio
generated
vendored
Binary file not shown.
BIN
vendor/github.com/cavaliercoder/go-cpio/testdata/test_svr4.cpio
generated
vendored
BIN
vendor/github.com/cavaliercoder/go-cpio/testdata/test_svr4.cpio
generated
vendored
Binary file not shown.
BIN
vendor/github.com/cavaliercoder/go-cpio/testdata/test_svr4_crc.cpio
generated
vendored
BIN
vendor/github.com/cavaliercoder/go-cpio/testdata/test_svr4_crc.cpio
generated
vendored
Binary file not shown.
1
vendor/github.com/cavaliercoder/go-cpio/testdata/todo.txt
generated
vendored
1
vendor/github.com/cavaliercoder/go-cpio/testdata/todo.txt
generated
vendored
@ -1 +0,0 @@
|
||||
Get animal handling license.
|
53
vendor/github.com/cavaliercoder/go-cpio/writer_test.go
generated
vendored
53
vendor/github.com/cavaliercoder/go-cpio/writer_test.go
generated
vendored
@ -1,53 +0,0 @@
|
||||
package cpio_test
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"io"
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
cpio "github.com/cavaliercoder/go-cpio"
|
||||
)
|
||||
|
||||
func store(w *cpio.Writer, fn string) error {
|
||||
f, err := os.Open(fn)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer f.Close()
|
||||
fi, err := f.Stat()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
hdr, err := cpio.FileInfoHeader(fi, "")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err := w.WriteHeader(hdr); err != nil {
|
||||
return err
|
||||
}
|
||||
if !fi.IsDir() {
|
||||
if _, err := io.Copy(w, f); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
return err
|
||||
}
|
||||
|
||||
func TestWriter(t *testing.T) {
|
||||
var buf bytes.Buffer
|
||||
w := cpio.NewWriter(&buf)
|
||||
|
||||
if err := store(w, "testdata/etc"); err != nil {
|
||||
t.Fatalf("store: %v", err)
|
||||
}
|
||||
|
||||
if err := store(w, "testdata/etc/hosts"); err != nil {
|
||||
t.Fatalf("store: %v", err)
|
||||
}
|
||||
|
||||
if err := w.Close(); err != nil {
|
||||
t.Fatalf("Close: %v", err)
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user