veyron.go.wspr: Make context.T a concrete type.

Change-Id: Ib46338b0dfc1458a38867ad4ca59c9f2c5571c3a
MultiPart: 4/6
diff --git a/services/wsprd/account/account.go b/services/wsprd/account/account.go
index a6e71f3..fc9567c 100644
--- a/services/wsprd/account/account.go
+++ b/services/wsprd/account/account.go
@@ -14,7 +14,7 @@
 )
 
 type BlesserService interface {
-	BlessUsingAccessToken(ctx context.T, token string, opts ...ipc.CallOpt) (blessingObj security.WireBlessings, account string, err error)
+	BlessUsingAccessToken(ctx *context.T, token string, opts ...ipc.CallOpt) (blessingObj security.WireBlessings, account string, err error)
 }
 
 type bs struct {
@@ -22,7 +22,7 @@
 	name   string
 }
 
-func (s *bs) BlessUsingAccessToken(ctx context.T, token string, opts ...ipc.CallOpt) (blessingObj security.WireBlessings, account string, err error) {
+func (s *bs) BlessUsingAccessToken(ctx *context.T, token string, opts ...ipc.CallOpt) (blessingObj security.WireBlessings, account string, err error) {
 	var call ipc.Call
 	if call, err = s.client.StartCall(ctx, s.name, "BlessUsingAccessToken", []interface{}{token}, opts...); err != nil {
 		return
diff --git a/services/wsprd/app/app.go b/services/wsprd/app/app.go
index de495a8..a75cefd 100644
--- a/services/wsprd/app/app.go
+++ b/services/wsprd/app/app.go
@@ -166,7 +166,7 @@
 }
 
 // finishCall waits for the call to finish and write out the response to w.
-func (c *Controller) finishCall(ctx context.T, w lib.ClientWriter, clientCall ipc.Call, msg *VeyronRPC) {
+func (c *Controller) finishCall(ctx *context.T, w lib.ClientWriter, clientCall ipc.Call, msg *VeyronRPC) {
 	if msg.IsStreaming {
 		for {
 			var item interface{}
@@ -224,7 +224,7 @@
 	}
 }
 
-func (c *Controller) startCall(ctx context.T, w lib.ClientWriter, msg *VeyronRPC) (ipc.Call, error) {
+func (c *Controller) startCall(ctx *context.T, w lib.ClientWriter, msg *VeyronRPC) (ipc.Call, error) {
 	if c.client == nil {
 		return nil, verror2.Make(verror2.BadArg, ctx, "app.Controller.client")
 	}
@@ -332,7 +332,7 @@
 
 // SendVeyronRequest makes a veyron request for the given flowId.  If signal is non-nil, it will receive
 // the call object after it has been constructed.
-func (c *Controller) sendVeyronRequest(ctx context.T, id int32, msg *VeyronRPC, w lib.ClientWriter, stream *outstandingStream) {
+func (c *Controller) sendVeyronRequest(ctx *context.T, id int32, msg *VeyronRPC, w lib.ClientWriter, stream *outstandingStream) {
 	sig, err := c.getSignature(ctx, msg.Name)
 	if err != nil {
 		w.Error(err)
@@ -373,14 +373,14 @@
 }
 
 // HandleVeyronRequest starts a veyron rpc and returns before the rpc has been completed.
-func (c *Controller) HandleVeyronRequest(ctx context.T, id int32, data string, w lib.ClientWriter) {
+func (c *Controller) HandleVeyronRequest(ctx *context.T, id int32, data string, w lib.ClientWriter) {
 	msg, err := c.parseVeyronRequest(data)
 	if err != nil {
 		w.Error(verror2.Convert(verror2.Internal, ctx, err))
 		return
 	}
 
-	var cctx context.T
+	var cctx *context.T
 	var cancel context.CancelFunc
 
 	// TODO(mattr): To be consistent with go, we should not ignore 0 timeouts.
@@ -624,13 +624,13 @@
 	Name string
 }
 
-func (c *Controller) getSignature(ctx context.T, name string) ([]signature.Interface, error) {
+func (c *Controller) getSignature(ctx *context.T, name string) ([]signature.Interface, error) {
 	retryTimeoutOpt := options.RetryTimeout(time.Duration(*retryTimeout) * time.Second)
 	return c.signatureManager.Signature(ctx, name, c.client, retryTimeoutOpt)
 }
 
 // HandleSignatureRequest uses signature manager to get and cache signature of a remote server
-func (c *Controller) HandleSignatureRequest(ctx context.T, data string, w lib.ClientWriter) {
+func (c *Controller) HandleSignatureRequest(ctx *context.T, data string, w lib.ClientWriter) {
 	// Decode the request
 	var request signatureRequest
 	if err := json.Unmarshal([]byte(data), &request); err != nil {
@@ -770,6 +770,6 @@
 }
 
 // HandleNamespaceRequest uses the namespace client to respond to namespace specific requests such as glob
-func (c *Controller) HandleNamespaceRequest(ctx context.T, data string, w lib.ClientWriter) {
+func (c *Controller) HandleNamespaceRequest(ctx *context.T, data string, w lib.ClientWriter) {
 	namespace.HandleRequest(ctx, c.rt, data, w)
 }
diff --git a/services/wsprd/browspr/browspr_account_test.go b/services/wsprd/browspr/browspr_account_test.go
index d5b47b8..e98a15d 100644
--- a/services/wsprd/browspr/browspr_account_test.go
+++ b/services/wsprd/browspr/browspr_account_test.go
@@ -28,7 +28,7 @@
 	}
 }
 
-func (m *mockBlesserService) BlessUsingAccessToken(c context.T, accessToken string, co ...ipc.CallOpt) (security.WireBlessings, string, error) {
+func (m *mockBlesserService) BlessUsingAccessToken(c *context.T, accessToken string, co ...ipc.CallOpt) (security.WireBlessings, string, error) {
 	var empty security.WireBlessings
 	m.count++
 	name := fmt.Sprintf("%s%s%d", topLevelName, security.ChainSeparator, m.count)
diff --git a/services/wsprd/lib/signature_manager.go b/services/wsprd/lib/signature_manager.go
index 9b59293..1078200 100644
--- a/services/wsprd/lib/signature_manager.go
+++ b/services/wsprd/lib/signature_manager.go
@@ -12,7 +12,7 @@
 )
 
 type SignatureManager interface {
-	Signature(ctx context.T, name string, client ipc.Client, opts ...ipc.CallOpt) ([]signature.Interface, error)
+	Signature(ctx *context.T, name string, client ipc.Client, opts ...ipc.CallOpt) ([]signature.Interface, error)
 	FlushCacheEntry(name string)
 }
 
@@ -52,7 +52,7 @@
 // Signature uses the given client to fetch the signature for the given service
 // name.  It either returns the signature from the cache, or blocks until it
 // fetches the signature from the remote server.
-func (sm *signatureManager) Signature(ctx context.T, name string, client ipc.Client, opts ...ipc.CallOpt) ([]signature.Interface, error) {
+func (sm *signatureManager) Signature(ctx *context.T, name string, client ipc.Client, opts ...ipc.CallOpt) ([]signature.Interface, error) {
 	sm.Lock()
 	defer sm.Unlock()
 
diff --git a/services/wsprd/namespace/request_handler.go b/services/wsprd/namespace/request_handler.go
index 0d75a5d..71b5d97 100644
--- a/services/wsprd/namespace/request_handler.go
+++ b/services/wsprd/namespace/request_handler.go
@@ -81,7 +81,7 @@
 }
 
 // handleRequest uses the namespace client to respond to namespace specific requests such as glob
-func HandleRequest(ctx context.T, rt veyron2.Runtime, data string, w lib.ClientWriter) {
+func HandleRequest(ctx *context.T, rt veyron2.Runtime, data string, w lib.ClientWriter) {
 	// Decode the request
 	var req request
 	if err := json.Unmarshal([]byte(data), &req); err != nil {
@@ -131,7 +131,7 @@
 	return result
 }
 
-func glob(ctx context.T, ns naming.Namespace, w lib.ClientWriter, rawArgs json.RawMessage) {
+func glob(ctx *context.T, ns naming.Namespace, w lib.ClientWriter, rawArgs json.RawMessage) {
 	var args globArgs
 	if err := json.Unmarshal([]byte(rawArgs), &args); err != nil {
 		w.Error(verror2.Convert(verror2.Internal, ctx, err))
@@ -172,7 +172,7 @@
 	}
 }
 
-func mount(ctx context.T, ns naming.Namespace, w lib.ClientWriter, rawArgs json.RawMessage) {
+func mount(ctx *context.T, ns naming.Namespace, w lib.ClientWriter, rawArgs json.RawMessage) {
 	var args mountArgs
 	if err := json.Unmarshal([]byte(rawArgs), &args); err != nil {
 		w.Error(verror2.Convert(verror2.Internal, ctx, err))
@@ -192,7 +192,7 @@
 	}
 }
 
-func unmount(ctx context.T, ns naming.Namespace, w lib.ClientWriter, rawArgs json.RawMessage) {
+func unmount(ctx *context.T, ns naming.Namespace, w lib.ClientWriter, rawArgs json.RawMessage) {
 	var args unmountArgs
 	if err := json.Unmarshal([]byte(rawArgs), &args); err != nil {
 		w.Error(verror2.Convert(verror2.Internal, ctx, err))
@@ -211,7 +211,7 @@
 	}
 }
 
-func resolve(ctx context.T, ns naming.Namespace, w lib.ClientWriter, rawArgs json.RawMessage) {
+func resolve(ctx *context.T, ns naming.Namespace, w lib.ClientWriter, rawArgs json.RawMessage) {
 	var args resolveArgs
 	if err := json.Unmarshal([]byte(rawArgs), &args); err != nil {
 		w.Error(verror2.Convert(verror2.Internal, ctx, err))
@@ -230,7 +230,7 @@
 	}
 }
 
-func resolveToMt(ctx context.T, ns naming.Namespace, w lib.ClientWriter, rawArgs json.RawMessage) {
+func resolveToMt(ctx *context.T, ns naming.Namespace, w lib.ClientWriter, rawArgs json.RawMessage) {
 	var args resolveToMtArgs
 	if err := json.Unmarshal([]byte(rawArgs), &args); err != nil {
 		w.Error(verror2.Convert(verror2.Internal, ctx, err))
@@ -249,7 +249,7 @@
 	}
 }
 
-func flushCacheEntry(ctx context.T, ns naming.Namespace, w lib.ClientWriter, rawArgs json.RawMessage) {
+func flushCacheEntry(ctx *context.T, ns naming.Namespace, w lib.ClientWriter, rawArgs json.RawMessage) {
 	var args flushCacheEntryArgs
 	if err := json.Unmarshal([]byte(rawArgs), &args); err != nil {
 		w.Error(verror2.Convert(verror2.Internal, ctx, err))
@@ -263,7 +263,7 @@
 	}
 }
 
-func disableCache(ctx context.T, ns naming.Namespace, w lib.ClientWriter, rawArgs json.RawMessage) {
+func disableCache(ctx *context.T, ns naming.Namespace, w lib.ClientWriter, rawArgs json.RawMessage) {
 	var args disableCacheArgs
 	if err := json.Unmarshal([]byte(rawArgs), &args); err != nil {
 		w.Error(verror2.Convert(verror2.Internal, ctx, err))
@@ -278,7 +278,7 @@
 	}
 }
 
-func roots(ctx context.T, ns naming.Namespace, w lib.ClientWriter) {
+func roots(ctx *context.T, ns naming.Namespace, w lib.ClientWriter) {
 	roots := ns.Roots()
 
 	if err := w.Send(lib.ResponseFinal, roots); err != nil {
@@ -286,7 +286,7 @@
 	}
 }
 
-func setRoots(ctx context.T, ns naming.Namespace, rt veyron2.Runtime, w lib.ClientWriter, rawArgs json.RawMessage) {
+func setRoots(ctx *context.T, ns naming.Namespace, rt veyron2.Runtime, w lib.ClientWriter, rawArgs json.RawMessage) {
 	var args setRootsArgs
 	if err := json.Unmarshal([]byte(rawArgs), &args); err != nil {
 		w.Error(verror2.Convert(verror2.Internal, ctx, err))