Commit 35021f0b authored by Aaron Jacobs's avatar Aaron Jacobs

Improved error messages.

parent b5f954cc
...@@ -50,7 +50,7 @@ func Convert( ...@@ -50,7 +50,7 @@ func Convert(
buf := m.Bytes() buf := m.Bytes()
n := len(buf) n := len(buf)
if n == 0 || buf[n-1] != '\x00' { if n == 0 || buf[n-1] != '\x00' {
err = errors.New("Corrupted OpLookup") err = errors.New("Corrupt OpLookup")
return return
} }
...@@ -71,7 +71,7 @@ func Convert( ...@@ -71,7 +71,7 @@ func Convert(
case fusekernel.OpSetattr: case fusekernel.OpSetattr:
in := (*fusekernel.SetattrIn)(m.Data()) in := (*fusekernel.SetattrIn)(m.Data())
if m.Len() < unsafe.Sizeof(*in) { if m.Len() < unsafe.Sizeof(*in) {
err = errors.New("Corrupted OpSetattr") err = errors.New("Corrupt OpSetattr")
return return
} }
...@@ -105,7 +105,7 @@ func Convert( ...@@ -105,7 +105,7 @@ func Convert(
case fusekernel.OpForget: case fusekernel.OpForget:
in := (*fusekernel.ForgetIn)(m.Data()) in := (*fusekernel.ForgetIn)(m.Data())
if m.Len() < unsafe.Sizeof(*in) { if m.Len() < unsafe.Sizeof(*in) {
err = errors.New("Corrupted OpForget") err = errors.New("Corrupt OpForget")
return return
} }
...@@ -119,14 +119,14 @@ func Convert( ...@@ -119,14 +119,14 @@ func Convert(
case fusekernel.OpMkdir: case fusekernel.OpMkdir:
size := fusekernel.MkdirInSize(protocol) size := fusekernel.MkdirInSize(protocol)
if m.Len() < size { if m.Len() < size {
err = errors.New("Corrupted OpMkdir") err = errors.New("Corrupt OpMkdir")
return return
} }
in := (*fusekernel.MkdirIn)(m.Data()) in := (*fusekernel.MkdirIn)(m.Data())
name := m.Bytes()[size:] name := m.Bytes()[size:]
i := bytes.IndexByte(name, '\x00') i := bytes.IndexByte(name, '\x00')
if i < 0 { if i < 0 {
err = errors.New("Corrupted OpMkdir") err = errors.New("Corrupt OpMkdir")
return return
} }
name = name[:i] name = name[:i]
...@@ -142,14 +142,14 @@ func Convert( ...@@ -142,14 +142,14 @@ func Convert(
case fusekernel.OpCreate: case fusekernel.OpCreate:
size := fusekernel.CreateInSize(protocol) size := fusekernel.CreateInSize(protocol)
if m.Len() < size { if m.Len() < size {
err = errors.New("Corrupted OpCreate") err = errors.New("Corrupt OpCreate")
return return
} }
in := (*fusekernel.CreateIn)(m.Data()) in := (*fusekernel.CreateIn)(m.Data())
name := m.Bytes()[size:] name := m.Bytes()[size:]
i := bytes.IndexByte(name, '\x00') i := bytes.IndexByte(name, '\x00')
if i < 0 { if i < 0 {
err = errors.New("Corrupted OpCreate") err = errors.New("Corrupt OpCreate")
return return
} }
name = name[:i] name = name[:i]
...@@ -166,12 +166,12 @@ func Convert( ...@@ -166,12 +166,12 @@ func Convert(
// m.Bytes() is "newName\0target\0" // m.Bytes() is "newName\0target\0"
names := m.Bytes() names := m.Bytes()
if len(names) == 0 || names[len(names)-1] != 0 { if len(names) == 0 || names[len(names)-1] != 0 {
err = errors.New("Corrupted OpSymlink") err = errors.New("Corrupt OpSymlink")
return return
} }
i := bytes.IndexByte(names, '\x00') i := bytes.IndexByte(names, '\x00')
if i < 0 { if i < 0 {
err = errors.New("Corrupted OpSymlink") err = errors.New("Corrupt OpSymlink")
return return
} }
newName, target := names[0:i], names[i+1:len(names)-1] newName, target := names[0:i], names[i+1:len(names)-1]
...@@ -187,22 +187,22 @@ func Convert( ...@@ -187,22 +187,22 @@ func Convert(
case fusekernel.OpRename: case fusekernel.OpRename:
in := (*fusekernel.RenameIn)(m.Data()) in := (*fusekernel.RenameIn)(m.Data())
if m.Len() < unsafe.Sizeof(*in) { if m.Len() < unsafe.Sizeof(*in) {
err = errors.New("Corrupted OpRename") err = errors.New("Corrupt OpRename")
return return
} }
names := m.Bytes()[unsafe.Sizeof(*in):] names := m.Bytes()[unsafe.Sizeof(*in):]
// names should be "old\x00new\x00" // names should be "old\x00new\x00"
if len(names) < 4 { if len(names) < 4 {
err = errors.New("Corrupted OpRename") err = errors.New("Corrupt OpRename")
return return
} }
if names[len(names)-1] != '\x00' { if names[len(names)-1] != '\x00' {
err = errors.New("Corrupted OpRename") err = errors.New("Corrupt OpRename")
return return
} }
i := bytes.IndexByte(names, '\x00') i := bytes.IndexByte(names, '\x00')
if i < 0 { if i < 0 {
err = errors.New("Corrupted OpRename") err = errors.New("Corrupt OpRename")
return return
} }
oldName, newName := names[:i], names[i+1:len(names)-1] oldName, newName := names[:i], names[i+1:len(names)-1]
...@@ -220,7 +220,7 @@ func Convert( ...@@ -220,7 +220,7 @@ func Convert(
buf := m.Bytes() buf := m.Bytes()
n := len(buf) n := len(buf)
if n == 0 || buf[n-1] != '\x00' { if n == 0 || buf[n-1] != '\x00' {
err = errors.New("Corrupted OpUnlink") err = errors.New("Corrupt OpUnlink")
return return
} }
...@@ -235,7 +235,7 @@ func Convert( ...@@ -235,7 +235,7 @@ func Convert(
buf := m.Bytes() buf := m.Bytes()
n := len(buf) n := len(buf)
if n == 0 || buf[n-1] != '\x00' { if n == 0 || buf[n-1] != '\x00' {
err = errors.New("Corrupted OpRmdir") err = errors.New("Corrupt OpRmdir")
return return
} }
...@@ -263,7 +263,7 @@ func Convert( ...@@ -263,7 +263,7 @@ func Convert(
case fusekernel.OpRead: case fusekernel.OpRead:
in := (*fusekernel.ReadIn)(m.Data()) in := (*fusekernel.ReadIn)(m.Data())
if m.Len() < fusekernel.ReadInSize(protocol) { if m.Len() < fusekernel.ReadInSize(protocol) {
err = errors.New("Corrupted OpRead") err = errors.New("Corrupt OpRead")
return return
} }
...@@ -279,7 +279,7 @@ func Convert( ...@@ -279,7 +279,7 @@ func Convert(
case fusekernel.OpReaddir: case fusekernel.OpReaddir:
in := (*fusekernel.ReadIn)(m.Data()) in := (*fusekernel.ReadIn)(m.Data())
if m.Len() < fusekernel.ReadInSize(protocol) { if m.Len() < fusekernel.ReadInSize(protocol) {
err = errors.New("Corrupted OpReaddir") err = errors.New("Corrupt OpReaddir")
return return
} }
...@@ -295,7 +295,7 @@ func Convert( ...@@ -295,7 +295,7 @@ func Convert(
case fusekernel.OpRelease: case fusekernel.OpRelease:
in := (*fusekernel.ReleaseIn)(m.Data()) in := (*fusekernel.ReleaseIn)(m.Data())
if m.Len() < unsafe.Sizeof(*in) { if m.Len() < unsafe.Sizeof(*in) {
err = errors.New("Corrupted OpRelease") err = errors.New("Corrupt OpRelease")
return return
} }
...@@ -308,7 +308,7 @@ func Convert( ...@@ -308,7 +308,7 @@ func Convert(
case fusekernel.OpReleasedir: case fusekernel.OpReleasedir:
in := (*fusekernel.ReleaseIn)(m.Data()) in := (*fusekernel.ReleaseIn)(m.Data())
if m.Len() < unsafe.Sizeof(*in) { if m.Len() < unsafe.Sizeof(*in) {
err = errors.New("Corrupted OpReleasedir") err = errors.New("Corrupt OpReleasedir")
return return
} }
...@@ -322,13 +322,13 @@ func Convert( ...@@ -322,13 +322,13 @@ func Convert(
in := (*fusekernel.WriteIn)(m.Data()) in := (*fusekernel.WriteIn)(m.Data())
size := fusekernel.WriteInSize(protocol) size := fusekernel.WriteInSize(protocol)
if m.Len() < size { if m.Len() < size {
err = errors.New("Corrupted OpWrite") err = errors.New("Corrupt OpWrite")
return return
} }
buf := m.Bytes()[size:] buf := m.Bytes()[size:]
if len(buf) < int(in.Size) { if len(buf) < int(in.Size) {
err = errors.New("Corrupted OpWrite") err = errors.New("Corrupt OpWrite")
return return
} }
...@@ -344,7 +344,7 @@ func Convert( ...@@ -344,7 +344,7 @@ func Convert(
case fusekernel.OpFsync: case fusekernel.OpFsync:
in := (*fusekernel.FsyncIn)(m.Data()) in := (*fusekernel.FsyncIn)(m.Data())
if m.Len() < unsafe.Sizeof(*in) { if m.Len() < unsafe.Sizeof(*in) {
err = errors.New("Corrupted OpFsync") err = errors.New("Corrupt OpFsync")
return return
} }
...@@ -358,7 +358,7 @@ func Convert( ...@@ -358,7 +358,7 @@ func Convert(
case fusekernel.OpFlush: case fusekernel.OpFlush:
in := (*fusekernel.FlushIn)(m.Data()) in := (*fusekernel.FlushIn)(m.Data())
if m.Len() < unsafe.Sizeof(*in) { if m.Len() < unsafe.Sizeof(*in) {
err = errors.New("Corrupted OpFlush") err = errors.New("Corrupt OpFlush")
return return
} }
...@@ -384,7 +384,7 @@ func Convert( ...@@ -384,7 +384,7 @@ func Convert(
case fusekernel.OpInterrupt: case fusekernel.OpInterrupt:
in := (*fusekernel.InterruptIn)(m.Data()) in := (*fusekernel.InterruptIn)(m.Data())
if m.Len() < unsafe.Sizeof(*in) { if m.Len() < unsafe.Sizeof(*in) {
err = errors.New("Corrupted OpInterrupt") err = errors.New("Corrupt OpInterrupt")
return return
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment