Changeset View
Changeset View
Standalone View
Standalone View
fuse_ipc.c
Context not available. | |||||
{ | { | ||||
int err = 0; | int err = 0; | ||||
enum fuse_opcode opcode; | enum fuse_opcode opcode; | ||||
struct fuse_getxattr_in *fgin; | |||||
debug_printf("ftick=%p, blen = %zu\n", ftick, blen); | debug_printf("ftick=%p, blen = %zu\n", ftick, blen); | ||||
Context not available. | |||||
break; | break; | ||||
case FUSE_SETXATTR: | case FUSE_SETXATTR: | ||||
panic("FUSE_SETXATTR implementor has forgotten to define a" | err = (blen == 0) ? 0 : EINVAL; | ||||
" response body format check"); | |||||
break; | break; | ||||
case FUSE_GETXATTR: | case FUSE_GETXATTR: | ||||
panic("FUSE_GETXATTR implementor has forgotten to define a" | |||||
" response body format check"); | |||||
break; | |||||
case FUSE_LISTXATTR: | case FUSE_LISTXATTR: | ||||
panic("FUSE_LISTXATTR implementor has forgotten to define a" | fgin = (struct fuse_getxattr_in *) | ||||
" response body format check"); | ((char *)ftick->tk_ms_fiov.base + | ||||
sizeof(struct fuse_in_header)); | |||||
if (fgin->size == 0) | |||||
err = (blen == sizeof(struct fuse_getxattr_out)) ? 0 : | |||||
EINVAL; | |||||
else | |||||
err = (blen <= fgin->size) ? 0 : EINVAL; | |||||
break; | break; | ||||
case FUSE_REMOVEXATTR: | case FUSE_REMOVEXATTR: | ||||
panic("FUSE_REMOVEXATTR implementor has forgotten to define a" | err = (blen == 0) ? 0 : EINVAL; | ||||
" response body format check"); | |||||
break; | break; | ||||
case FUSE_FLUSH: | case FUSE_FLUSH: | ||||
Context not available. |