// Copyright 2015 The Vanadium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

package conn

// These messages are constructed so as to avoid embedding a component/method name
// and are thus more suitable for inclusion in other verrors.
// This practice of omitting {1}{2} should be used throughout the flow implementations
// since all of their errors are intended to be used as arguments to higher level errors.
// TODO(suharshs,toddw): Allow skipping of {1}{2} in vdl generated errors.
error (
  InvalidMsg(typ byte, size, field int64) {
  "en":"message of type{:typ} and size{:size} failed decoding at field{:field}."}
  InvalidControlMsg(cmd byte, size, field int64) {
  "en":"control message of cmd{:cmd} and size{:size} failed decoding at field{:field}."}
  UnknownMsg(typ byte) {"en":"unknown message type{:typ}."}
  UnknownControlMsg(cmd byte) {"en":"unknown control command{:cmd}."}
)
