From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Shaun R." Subject: Re: xm, no such domain error code... Date: Wed, 17 Sep 2008 11:08:09 -0700 Message-ID: References: <18640.52813.546174.22382@mariner.uk.xensource.com> Mime-Version: 1.0 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=original Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <18640.52813.546174.22382@mariner.uk.xensource.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org Not sure what happened to my reply, so here it is again, slightly modified. I'll attempt to, I'm not too familiar with python. >>From what it looks like the exit code is actually already defined. If you have a look at tools/python/xen/xend/XendClient.py you will find a macro setup that sets ERROR_INVALID_DOMAIN to 3. This is also whats checked in ./tools/python/xen/xm/main.py if ex.faultCode == XendClient.ERROR_INVALID_DOMAIN: err("Domain '%s' does not exist." % ex.faultString) else: err(ex.faultString) _usage(cmd_name) The problem is that at the end of this function a generic "return False, 1" is used... I think the easiest thing to do would be to just add a line after thant err() function with "return False, ex.faultCode" What do you think? I did this on my install and it worked perfect! 3 was returned to $? ~Shaun Reitan > Shaun R. writes ("[Xen-devel] xm, no such domain error code..."): >> Right now xm will return 1 if you run `xm list non_existant_domain` >> >> Wouldnt it be a better idea to have a specific error code for this error >> so >> that scripts wrapping around xm can better determine if the domain does >> not >> exist or if xm just failed for whatever reason? > > Yes. Probably the right thing is to keep 1 for general failure, since > it will be too hard to track down all of the places it is used. So we > should start new specific exit codes at 10 or 16 or something. > > Would you care to prepare a suitable patch ? I haven't looked at the > code recently but perhaps you can transform the domain not found > exception into a specific exit code in a single place. > > Ian.