mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
libxl: use GRegex in libxlGetAutoballoonConf
Replace the use of regcomp with GRegex. Signed-off-by: Ján Tomko <jtomko@redhat.com> Reviewed-by: Peter Krempa <pkrempa@redhat.com>
This commit is contained in:
parent
5c89468ff2
commit
77d228468d
@ -22,7 +22,6 @@
|
|||||||
|
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
|
||||||
#include <regex.h>
|
|
||||||
#include <libxl.h>
|
#include <libxl.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
@ -1664,7 +1663,8 @@ static int
|
|||||||
libxlGetAutoballoonConf(libxlDriverConfigPtr cfg,
|
libxlGetAutoballoonConf(libxlDriverConfigPtr cfg,
|
||||||
virConfPtr conf)
|
virConfPtr conf)
|
||||||
{
|
{
|
||||||
regex_t regex;
|
g_autoptr(GRegex) regex = NULL;
|
||||||
|
g_autoptr(GError) err = NULL;
|
||||||
int res;
|
int res;
|
||||||
|
|
||||||
res = virConfGetValueBool(conf, "autoballoon", &cfg->autoballoon);
|
res = virConfGetValueBool(conf, "autoballoon", &cfg->autoballoon);
|
||||||
@ -1673,21 +1673,15 @@ libxlGetAutoballoonConf(libxlDriverConfigPtr cfg,
|
|||||||
else if (res == 1)
|
else if (res == 1)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if ((res = regcomp(®ex,
|
regex = g_regex_new("(^| )dom0_mem=((|min:|max:)[0-9]+[bBkKmMgG]?,?)+($| )",
|
||||||
"(^| )dom0_mem=((|min:|max:)[0-9]+[bBkKmMgG]?,?)+($| )",
|
0, 0, &err);
|
||||||
REG_NOSUB | REG_EXTENDED)) != 0) {
|
if (!regex) {
|
||||||
char error[100];
|
|
||||||
regerror(res, ®ex, error, sizeof(error));
|
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
_("Failed to compile regex %s"),
|
_("Failed to compile regex %s"), err->message);
|
||||||
error);
|
|
||||||
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
res = regexec(®ex, cfg->verInfo->commandline, 0, NULL, 0);
|
cfg->autoballoon = !g_regex_match(regex, cfg->verInfo->commandline, 0, NULL);
|
||||||
regfree(®ex);
|
|
||||||
cfg->autoballoon = res == REG_NOMATCH;
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user