diff options
Diffstat (limited to 'client')
| -rw-r--r-- | client/client.go | 19 | 
1 files changed, 13 insertions, 6 deletions
| diff --git a/client/client.go b/client/client.go index 6eb99c2..7c78034 100644 --- a/client/client.go +++ b/client/client.go @@ -4,6 +4,7 @@ import (  	"bytes"  	"context"  	"fmt" +	"strings"  	"crypto/ed25519"  	"crypto/tls" @@ -98,7 +99,8 @@ func (c *Client) AddEntry(ctx context.Context, name, checksum []byte) (*stfe.StI  	}  	glog.V(3).Infof("created post data: %s", string(data)) -	req, err := http.NewRequest("POST", c.protocol()+c.Log.BaseUrl+"/add-entry", bytes.NewBuffer(data)) +	url := c.protocol() + strings.Join([]string{c.Log.BaseUrl, stfe.EndpointAddEntry.String()}, "/") +	req, err := http.NewRequest("POST", url, bytes.NewBuffer(data))  	if err != nil {  		return nil, fmt.Errorf("failed creating http request: %v", err)  	} @@ -124,7 +126,8 @@ func (c *Client) AddEntry(ctx context.Context, name, checksum []byte) (*stfe.StI  // GetSth fetches and verifies the most recent STH.  Safe to use without a  // client chain and corresponding private key.  func (c *Client) GetSth(ctx context.Context) (*stfe.StItem, error) { -	req, err := http.NewRequest("GET", c.protocol()+c.Log.BaseUrl+"/get-sth", nil) +	url := c.protocol() + strings.Join([]string{c.Log.BaseUrl, stfe.EndpointGetSth.String()}, "/") +	req, err := http.NewRequest("GET", url, nil)  	if err != nil {  		return nil, fmt.Errorf("failed creating http request: %v", err)  	} @@ -149,7 +152,8 @@ func (c *Client) GetSth(ctx context.Context) (*stfe.StItem, error) {  // GetConsistencyProof fetches and verifies a consistency proof between two  // STHs.  Safe to use without a client chain and corresponding private key.  func (c *Client) GetConsistencyProof(ctx context.Context, first, second *stfe.StItem) (*stfe.StItem, error) { -	req, err := http.NewRequest("GET", c.protocol()+c.Log.BaseUrl+"/get-consistency-proof", nil) +	url := c.protocol() + strings.Join([]string{c.Log.BaseUrl, stfe.EndpointGetConsistencyProof.String()}, "/") +	req, err := http.NewRequest("GET", url, nil)  	if err != nil {  		return nil, fmt.Errorf("failed creating http request: %v", err)  	} @@ -177,7 +181,8 @@ func (c *Client) GetConsistencyProof(ctx context.Context, first, second *stfe.St  // STH.  Safe to use without a client chain and corresponding private key.  func (c *Client) GetProofByHash(ctx context.Context, treeSize uint64, rootHash, leaf []byte) (*stfe.StItem, error) {  	leafHash := rfc6962.DefaultHasher.HashLeaf(leaf) -	req, err := http.NewRequest("GET", c.protocol()+c.Log.BaseUrl+"/get-proof-by-hash", nil) +	url := c.protocol() + strings.Join([]string{c.Log.BaseUrl, stfe.EndpointGetProofByHash.String()}, "/") +	req, err := http.NewRequest("GET", url, nil)  	if err != nil {  		return nil, fmt.Errorf("failed creating http request: %v", err)  	} @@ -209,7 +214,8 @@ func (c *Client) GetProofByHash(ctx context.Context, treeSize uint64, rootHash,  // Note that a certificate chain is considered valid if it is chained correctly.  // In other words, the caller may want to check whether the anchor is trusted.  func (c *Client) GetEntries(ctx context.Context, start, end uint64) ([]*stfe.GetEntryResponse, error) { -	req, err := http.NewRequest("GET", c.protocol()+c.Log.BaseUrl+"/get-entries", nil) +	url := c.protocol() + strings.Join([]string{c.Log.BaseUrl, stfe.EndpointGetEntries.String()}, "/") +	req, err := http.NewRequest("GET", url, nil)  	if err != nil {  		return nil, fmt.Errorf("failed creating http request: %v", err)  	} @@ -246,7 +252,8 @@ func (c *Client) GetEntries(ctx context.Context, start, end uint64) ([]*stfe.Get  // GetAnchors fetches the log's trust anchors.  Safe to use without a client  // chain and corresponding private key.  func (c *Client) GetAnchors(ctx context.Context) ([]*x509.Certificate, error) { -	req, err := http.NewRequest("GET", c.protocol()+c.Log.BaseUrl+"/get-anchors", nil) +	url := c.protocol() + strings.Join([]string{c.Log.BaseUrl, stfe.EndpointGetAnchors.String()}, "/") +	req, err := http.NewRequest("GET", url, nil)  	if err != nil {  		return nil, fmt.Errorf("failed creating http request: %v", err)  	} | 
