Skip to content

Commit 579443a

Browse files
authored
Merge branch 'master' into dirsync-async
2 parents 6fad509 + 7f97b82 commit 579443a

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

v3/control.go

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -945,9 +945,12 @@ func (c *ControlSyncRequest) GetControlType() string {
945945
func (c *ControlSyncRequest) Encode() *ber.Packet {
946946
_mode := int64(c.Mode)
947947
mode := ber.NewInteger(ber.ClassUniversal, ber.TypePrimitive, ber.TagEnumerated, _mode, "Mode")
948-
cookie := ber.Encode(ber.ClassUniversal, ber.TypePrimitive, ber.TagOctetString, nil, "Cookie")
949-
cookie.Value = c.Cookie
950-
cookie.Data.Write(c.Cookie)
948+
var cookie *ber.Packet
949+
if len(c.Cookie) > 0 {
950+
cookie = ber.Encode(ber.ClassUniversal, ber.TypePrimitive, ber.TagOctetString, nil, "Cookie")
951+
cookie.Value = c.Cookie
952+
cookie.Data.Write(c.Cookie)
953+
}
951954
reloadHint := ber.NewBoolean(ber.ClassUniversal, ber.TypePrimitive, ber.TagBoolean, c.ReloadHint, "Reload Hint")
952955

953956
packet := ber.Encode(ber.ClassUniversal, ber.TypeConstructed, ber.TagSequence, nil, "Control")
@@ -957,7 +960,9 @@ func (c *ControlSyncRequest) Encode() *ber.Packet {
957960
val := ber.Encode(ber.ClassUniversal, ber.TypePrimitive, ber.TagOctetString, nil, "Control Value (Sync Request)")
958961
seq := ber.Encode(ber.ClassUniversal, ber.TypeConstructed, ber.TagSequence, nil, "Sync Request Value")
959962
seq.AppendChild(mode)
960-
seq.AppendChild(cookie)
963+
if cookie != nil {
964+
seq.AppendChild(cookie)
965+
}
961966
seq.AppendChild(reloadHint)
962967
val.AppendChild(seq)
963968

0 commit comments

Comments
 (0)