diff options
Diffstat (limited to 'vendor/github.com/gorilla/csrf/context.go')
-rw-r--r-- | vendor/github.com/gorilla/csrf/context.go | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/vendor/github.com/gorilla/csrf/context.go b/vendor/github.com/gorilla/csrf/context.go new file mode 100644 index 0000000..fe47270 --- /dev/null +++ b/vendor/github.com/gorilla/csrf/context.go @@ -0,0 +1,25 @@ +// +build go1.7 + +package csrf + +import ( + "context" + "net/http" + + "github.com/pkg/errors" +) + +func contextGet(r *http.Request, key string) (interface{}, error) { + val := r.Context().Value(key) + if val == nil { + return nil, errors.Errorf("no value exists in the context for key %q", key) + } + + return val, nil +} + +func contextSave(r *http.Request, key string, val interface{}) *http.Request { + ctx := r.Context() + ctx = context.WithValue(ctx, key, val) + return r.WithContext(ctx) +} |