From 82cdad076ce3abeef543561db6fee69fee62cf5e Mon Sep 17 00:00:00 2001 From: allencloud Date: Thu, 29 Dec 2016 16:10:40 +0800 Subject: [PATCH] fail fast when network filter invalid Signed-off-by: allencloud Upstream-commit: ee2925e2f970a83581aadd08704b117b09377d23 Component: engine --- .../engine/api/server/router/network/filter.go | 15 --------------- .../api/server/router/network/network_routes.go | 15 +++++++++++++++ 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/components/engine/api/server/router/network/filter.go b/components/engine/api/server/router/network/filter.go index 1548be34fe..ca9526e6e5 100644 --- a/components/engine/api/server/router/network/filter.go +++ b/components/engine/api/server/router/network/filter.go @@ -8,17 +8,6 @@ import ( "github.com/docker/docker/runconfig" ) -var ( - // acceptedNetworkFilters is a list of acceptable filters - acceptedNetworkFilters = map[string]bool{ - "driver": true, - "type": true, - "name": true, - "id": true, - "label": true, - } -) - func filterNetworkByType(nws []types.NetworkResource, netType string) (retNws []types.NetworkResource, err error) { switch netType { case "builtin": @@ -47,10 +36,6 @@ func filterNetworks(nws []types.NetworkResource, filter filters.Args) ([]types.N return nws, nil } - if err := filter.Validate(acceptedNetworkFilters); err != nil { - return nil, err - } - displayNet := []types.NetworkResource{} for _, nw := range nws { if filter.Include("driver") { diff --git a/components/engine/api/server/router/network/network_routes.go b/components/engine/api/server/router/network/network_routes.go index 1ea647a891..2390aac5d4 100644 --- a/components/engine/api/server/router/network/network_routes.go +++ b/components/engine/api/server/router/network/network_routes.go @@ -14,6 +14,17 @@ import ( "github.com/docker/libnetwork/networkdb" ) +var ( + // acceptedNetworkFilters is a list of acceptable filters + acceptedNetworkFilters = map[string]bool{ + "driver": true, + "type": true, + "name": true, + "id": true, + "label": true, + } +) + func (n *networkRouter) getNetworksList(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error { if err := httputils.ParseForm(r); err != nil { return err @@ -25,6 +36,10 @@ func (n *networkRouter) getNetworksList(ctx context.Context, w http.ResponseWrit return err } + if err := netFilters.Validate(acceptedNetworkFilters); err != nil { + return err + } + list := []types.NetworkResource{} if nr, err := n.cluster.GetNetworks(); err == nil {