On 09/18/17 at 08:55am, Baoquan He wrote:
On 09/18/17 at 08:34am, Baoquan He wrote:
On 09/17/17 at 09:28pm, Bhupesh Sharma wrote:
- # Check if we have any leading spaces (or tabs) before the
- # variable name in the kdump conf file. While doing so exclude any
- # comments which appear to have leading spaces (or tabs)
- awk 'BEGIN{cnt=0} {cnt=match($0, /^[[:blank:]]/); if(cnt!=0) print $0}' $KDUMP_CONFIG_FILE >> $TMP_FILE
- nr=$(awk 'BEGIN{cnt_hash=0; cnt_blank=0} {cnt_hash=match($0, /#.*$/); if(cnt_hash!=0) next; else cnt_blank++} END{print cnt_blank}' $TMP_FILE)
- [ $nr -gt 0 ] && {
echo "No whitespaces are allowed before a kdump option name. Please check $KDUMP_CONFIG_FILE"
rm -f $TMP_FILE
return 1
How about this:
if grep -v "^[[:blank:]]*#" /etc/kdump.conf| grep -v "^$"| grep "^[[:space:]]"; then fi
It can ignore the comment at the beginning with [[:blank:]], and blank line, only check line with config info.
And why don't we just help erase the [[:blank:]] at the beginning of config line, like this:
grep -v "^[[:blank:]]*#" /etc/kdump.conf| grep -v "^$"| grep -v "^[[:space:]]"
OK, forget this saying. Here it's just checking. So the command 'read' won't filter out the [[:blank:]] for config and value?
It should, I think it is casued by below code in mkdumprd, just guess I did not verify it: SAVE_PATH=$(grep ^path $conf_file| cut -d' ' -f2)
So we have several different places parsing kdump.conf, kdumpctl, mkdumprd kdump.sh etc. If we support the leading whitespace, we need make sure it works on every cases, so I worried that it make the code more complex.
But in this patch it seems also not worth the awk scripts, something like below should work:
if egrep '^[[:blank:]]+[a-z]' $KDUMP_CONFIG_FILE; then echo "No whitespaces are allowed before a kdump option name." return 1 fi
Thanks Baoquan
- }
- rm -f $TMP_FILE
- while read config_opt config_val; do case "$config_opt" in #* | "")
-- 2.7.4 _______________________________________________ kexec mailing list -- kexec@lists.fedoraproject.org To unsubscribe send an email to kexec-leave@lists.fedoraproject.org
kexec mailing list -- kexec@lists.fedoraproject.org To unsubscribe send an email to kexec-leave@lists.fedoraproject.org
kexec mailing list -- kexec@lists.fedoraproject.org To unsubscribe send an email to kexec-leave@lists.fedoraproject.org
Thanks Dave