code: func decodeAuth(authStr string) (string, string, error) {
  	if authStr == "" {
  		return "", "", nil
  	}
  
  	decLen := base64.StdEncoding.DecodedLen(len(authStr))
  	decoded := make([]byte, decLen)
  	authByte := []byte(authStr)
  	n, err := base64.StdEncoding.Decode(decoded, authByte)
  	if err != nil {
  		return "", "", err
  	}
  	if n > decLen {
  		return "", "", errors.Errorf("Something went wrong decoding auth config")
  	}
  	arr := strings.SplitN(string(decoded), ":", 2)
  	if len(arr) != 2 {
  		return "", "", errors.Errorf("Invalid auth configuration file")
  	}
  	password := strings.Trim(arr[1], "\x00")
  	return arr[0], password, nil
  }
docs: // decodeAuth decodes a base64 encoded string and returns username and password