Support call side in javascript

MultiPart: 2/2
Change-Id: Ibe9dce55c7b3644807ece21e5c8062dcf0f6e1f4
diff --git a/services/wsprd/ipc/server/server.go b/services/wsprd/ipc/server/server.go
index 3c3bcc8..424a78f 100644
--- a/services/wsprd/ipc/server/server.go
+++ b/services/wsprd/ipc/server/server.go
@@ -331,11 +331,12 @@
 // It resolves each []security.Caveat in cavs to an error (or nil) and collects them in a slice.
 // TODO(ataly, ashankar, bprosnitz): Update this method so tha it also conveys the CallSide to
 // JavaScript.
-func (s *Server) validateCavsInJavascript(call security.Call, _ security.CallSide, cavs [][]security.Caveat) []error {
+func (s *Server) validateCavsInJavascript(call security.Call, callSide security.CallSide, cavs [][]security.Caveat) []error {
 	flow := s.helper.CreateNewFlow(s, nil)
 	req := CaveatValidationRequest{
-		Call: s.convertSecurityCall(call, false),
-		Cavs: cavs,
+		Call:     s.convertSecurityCall(call, false),
+		CallSide: callSide,
+		Cavs:     cavs,
 	}
 
 	replyChan := make(chan []error, 1)
diff --git a/services/wsprd/ipc/server/server.vdl b/services/wsprd/ipc/server/server.vdl
index 3872b16..507dfdf 100644
--- a/services/wsprd/ipc/server/server.vdl
+++ b/services/wsprd/ipc/server/server.vdl
@@ -19,6 +19,7 @@
 
 type CaveatValidationRequest struct {
     Call SecurityCall
+    CallSide security.CallSide
     Cavs [][]security.Caveat
 }
 
diff --git a/services/wsprd/ipc/server/server.vdl.go b/services/wsprd/ipc/server/server.vdl.go
index adb4dad..27b9a46 100644
--- a/services/wsprd/ipc/server/server.vdl.go
+++ b/services/wsprd/ipc/server/server.vdl.go
@@ -33,8 +33,9 @@
 }
 
 type CaveatValidationRequest struct {
-	Call SecurityCall
-	Cavs [][]security.Caveat
+	Call     SecurityCall
+	CallSide security.CallSide
+	Cavs     [][]security.Caveat
 }
 
 func (CaveatValidationRequest) __VDLReflect(struct {