Added server support for WriteFile.
parent
0e4bdb538a
commit
5455e35b35
26
server.go
26
server.go
|
@ -355,6 +355,32 @@ func (s *server) handleFuseRequest(fuseReq bazilfuse.Request) {
|
||||||
typed.Respond(fuseResp)
|
typed.Respond(fuseResp)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
case *bazilfuse.WriteRequest:
|
||||||
|
// Convert the request.
|
||||||
|
req := &WriteFileRequest{
|
||||||
|
Header: convertHeader(typed.Header),
|
||||||
|
Inode: InodeID(typed.Header.Node),
|
||||||
|
Handle: HandleID(typed.Handle),
|
||||||
|
Data: typed.Data,
|
||||||
|
Offset: typed.Offset,
|
||||||
|
}
|
||||||
|
|
||||||
|
// Call the file system.
|
||||||
|
_, err := s.fs.WriteFile(ctx, req)
|
||||||
|
if err != nil {
|
||||||
|
s.logger.Println("Responding:", err)
|
||||||
|
typed.RespondError(err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Convert the response.
|
||||||
|
fuseResp := &bazilfuse.WriteResponse{
|
||||||
|
Size: len(typed.Data),
|
||||||
|
}
|
||||||
|
|
||||||
|
s.logger.Println("Responding:", fuseResp)
|
||||||
|
typed.Respond(fuseResp)
|
||||||
|
|
||||||
default:
|
default:
|
||||||
s.logger.Println("Unhandled type. Returning ENOSYS.")
|
s.logger.Println("Unhandled type. Returning ENOSYS.")
|
||||||
typed.RespondError(ENOSYS)
|
typed.RespondError(ENOSYS)
|
||||||
|
|
Loading…
Reference in New Issue