On Tue, Feb 04, 2014 at 01:41:21PM +0900, MORITA Kazutaka wrote: > req->op can be NULL when the requested opcode is invalid. It's safe > to add NULL checks before accessing req->op in ops.c. > > Signed-off-by: MORITA Kazutaka <morita.kazutaka at lab.ntt.co.jp> > --- > sheep/ops.c | 19 +++++++++++-------- > 1 file changed, 11 insertions(+), 8 deletions(-) > > diff --git a/sheep/ops.c b/sheep/ops.c > index 45dad7b..481789f 100644 > --- a/sheep/ops.c > +++ b/sheep/ops.c > @@ -1404,47 +1404,50 @@ const struct sd_op_template *get_sd_op(uint8_t opcode) > > const char *op_name(const struct sd_op_template *op) > { > + if (op == NULL) > + return "(invalid opcode)"; > + > return op->name; > } > > bool is_cluster_op(const struct sd_op_template *op) > { > - return op->type == SD_OP_TYPE_CLUSTER; > + return op != NULL && op->type == SD_OP_TYPE_CLUSTER; > } > > bool is_local_op(const struct sd_op_template *op) > { > - return op->type == SD_OP_TYPE_LOCAL; > + return op != NULL && op->type == SD_OP_TYPE_LOCAL; > } > > bool is_peer_op(const struct sd_op_template *op) > { > - return op->type == SD_OP_TYPE_PEER; > + return op != NULL && op->type == SD_OP_TYPE_PEER; > } > > bool is_gateway_op(const struct sd_op_template *op) > { > - return op->type == SD_OP_TYPE_GATEWAY; > + return op != NULL && op->type == SD_OP_TYPE_GATEWAY; > } > > bool is_force_op(const struct sd_op_template *op) > { > - return !!op->force; > + return op != NULL && op->force; > } > > bool is_logging_op(const struct sd_op_template *op) > { > - return !!op->is_admin_op; > + return op != NULL && op->is_admin_op; > } > > bool has_process_work(const struct sd_op_template *op) > { > - return !!op->process_work; > + return op != NULL && !!op->process_work; > } > > bool has_process_main(const struct sd_op_template *op) > { > - return !!op->process_main; > + return op != NULL && !!op->process_main; > } > > void do_process_work(struct work *work) > -- > 1.7.10.4 > > -- > sheepdog mailing list > sheepdog at lists.wpkg.org > http://lists.wpkg.org/mailman/listinfo/sheepdog Applied thanks Yuan |