Hello, On Mon, 19 Aug 2013, Ryan O'Hara wrote: > On Sun, Aug 18, 2013 at 09:13:39PM +0300, Julian Anastasov wrote: > > > - CHECK_PE and CHECK_IPV4 as part of CHECK_COMPAT_SVC use > > 'return' and we can leak svc in ipvs_get_service() > > > > - in ipvs_get_service() CHECK_PE does not need to be called, > > it is already part of CHECK_COMPAT_SVC > > Yes. I'm tempted to remove these macros due to the 'return' > issue. Thoughts? May be they can use 'goto' instead of 'return': if (condition) { errno = XXX; goto out_err; } and funcs can have such exit point: out_err: free stuff on error return ret; > > - ipvs_get_service uses malloc but later calls CHECK_PE, may be > > malloc should be changed with calloc > > Aside from the fact that CHECK_PE could return without freeing memory, > I don't see the problem here. malloc does not initialize the memory and checking of svc->pe_name[0] in CHECK_PE would give random results. Regards -- Julian Anastasov <ja@xxxxxx> -- To unsubscribe from this list: send the line "unsubscribe lvs-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html