Set empty Behavior setting into SessionKeysRelease and flag error for unrecognized values

This commit is contained in:
Atin Malaviya 2014-11-20 19:16:07 -05:00
parent 3aabda02b3
commit d7e09d57ba
2 changed files with 6 additions and 4 deletions

View File

@ -31,9 +31,10 @@ func (s *Session) Apply(args *structs.SessionRequest, reply *string) error {
switch args.Session.Behavior {
case structs.SessionKeysRelease, structs.SessionKeysDelete:
// we like it, use it
default:
case "":
args.Session.Behavior = structs.SessionKeysRelease // force default behavior
default:
return fmt.Errorf("Invalid Behavior setting '%s'", args.Session.Behavior)
}
// If this is a create, we must generate the Session ID. This must

View File

@ -1330,9 +1330,10 @@ func (s *StateStore) SessionCreate(index uint64, session *structs.Session) error
switch session.Behavior {
case structs.SessionKeysRelease, structs.SessionKeysDelete:
// we like
case "":
session.Behavior = structs.SessionKeysRelease // force default behavior
default:
// force SessionKeysRelease
session.Behavior = structs.SessionKeysRelease
return fmt.Errorf("Invalid Session Behavior setting '%s'", session.Behavior)
}
// Assign the create index