diff mbox series

[1/3] authz-list-file: Fix crash when filename is not set

Message ID 20201008202713.1416823-2-ehabkost@redhat.com
State New
Headers show
Series Fix some crashes when using -object | expand

Commit Message

Eduardo Habkost Oct. 8, 2020, 8:27 p.m. UTC
Fix the following crash:

  $ qemu-system-x86_64 -object authz-list-file,id=obj0
  qemu-system-x86_64: -object authz-list-file,id=obj0: GLib: g_file_get_contents: assertion 'filename != NULL' failed
  Segmentation fault (core dumped)

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
Cc: "Daniel P. Berrangé" <berrange@redhat.com>
Cc: qemu-devel@nongnu.org
---
 authz/listfile.c | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Cleber Rosa Oct. 8, 2020, 9:17 p.m. UTC | #1
On Thu, Oct 08, 2020 at 04:27:11PM -0400, Eduardo Habkost wrote:
> Fix the following crash:

> 

>   $ qemu-system-x86_64 -object authz-list-file,id=obj0

>   qemu-system-x86_64: -object authz-list-file,id=obj0: GLib: g_file_get_contents: assertion 'filename != NULL' failed

>   Segmentation fault (core dumped)

> 

> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>

> ---

> Cc: "Daniel P. Berrangé" <berrange@redhat.com>

> Cc: qemu-devel@nongnu.org


Out of curiosity, are those notes intended for git-publish? (If so, I
didn't realize it would read them).

> ---

>  authz/listfile.c | 5 +++++

>  1 file changed, 5 insertions(+)

> 

> diff --git a/authz/listfile.c b/authz/listfile.c

> index cd6163aa40..aaf930453d 100644

> --- a/authz/listfile.c

> +++ b/authz/listfile.c

> @@ -122,6 +122,11 @@ qauthz_list_file_complete(UserCreatable *uc, Error **errp)

>      QAuthZListFile *fauthz = QAUTHZ_LIST_FILE(uc);

>      gchar *dir = NULL, *file = NULL;

>  

> +    if (!fauthz->filename) {

> +        error_setg(errp, "filename not provided");


Nitpick: all other similar error messages start capitalized.

- Cleber.
Daniel P. Berrangé Oct. 9, 2020, 8:37 a.m. UTC | #2
On Thu, Oct 08, 2020 at 04:27:11PM -0400, Eduardo Habkost wrote:
> Fix the following crash:

> 

>   $ qemu-system-x86_64 -object authz-list-file,id=obj0

>   qemu-system-x86_64: -object authz-list-file,id=obj0: GLib: g_file_get_contents: assertion 'filename != NULL' failed

>   Segmentation fault (core dumped)

> 

> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>

> ---

> Cc: "Daniel P. Berrangé" <berrange@redhat.com>

> Cc: qemu-devel@nongnu.org

> ---

>  authz/listfile.c | 5 +++++

>  1 file changed, 5 insertions(+)


Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>



Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|
Philippe Mathieu-Daudé Oct. 9, 2020, 10:31 a.m. UTC | #3
On 10/8/20 10:27 PM, Eduardo Habkost wrote:
> Fix the following crash:

> 

>    $ qemu-system-x86_64 -object authz-list-file,id=obj0

>    qemu-system-x86_64: -object authz-list-file,id=obj0: GLib: g_file_get_contents: assertion 'filename != NULL' failed

>    Segmentation fault (core dumped)

> 

> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>

> ---

> Cc: "Daniel P. Berrangé" <berrange@redhat.com>

> Cc: qemu-devel@nongnu.org

> ---

>   authz/listfile.c | 5 +++++

>   1 file changed, 5 insertions(+)

> 

> diff --git a/authz/listfile.c b/authz/listfile.c

> index cd6163aa40..aaf930453d 100644

> --- a/authz/listfile.c

> +++ b/authz/listfile.c

> @@ -122,6 +122,11 @@ qauthz_list_file_complete(UserCreatable *uc, Error **errp)

>       QAuthZListFile *fauthz = QAUTHZ_LIST_FILE(uc);

>       gchar *dir = NULL, *file = NULL;

>   

> +    if (!fauthz->filename) {

> +        error_setg(errp, "filename not provided");

> +        return;

> +    }

> +

>       fauthz->list = qauthz_list_file_load(fauthz, errp);

>   

>       if (!fauthz->refresh) {

> 


Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Li Qiang Oct. 9, 2020, 3:06 p.m. UTC | #4
Eduardo Habkost <ehabkost@redhat.com> 于2020年10月9日周五 上午4:28写道:
>

> Fix the following crash:

>

>   $ qemu-system-x86_64 -object authz-list-file,id=obj0

>   qemu-system-x86_64: -object authz-list-file,id=obj0: GLib: g_file_get_contents: assertion 'filename != NULL' failed

>   Segmentation fault (core dumped)

>

> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>


Reviewed-by: Li Qiang <liq3ea@gmail.com>


> ---

> Cc: "Daniel P. Berrangé" <berrange@redhat.com>

> Cc: qemu-devel@nongnu.org

> ---

>  authz/listfile.c | 5 +++++

>  1 file changed, 5 insertions(+)

>

> diff --git a/authz/listfile.c b/authz/listfile.c

> index cd6163aa40..aaf930453d 100644

> --- a/authz/listfile.c

> +++ b/authz/listfile.c

> @@ -122,6 +122,11 @@ qauthz_list_file_complete(UserCreatable *uc, Error **errp)

>      QAuthZListFile *fauthz = QAUTHZ_LIST_FILE(uc);

>      gchar *dir = NULL, *file = NULL;

>

> +    if (!fauthz->filename) {

> +        error_setg(errp, "filename not provided");

> +        return;

> +    }

> +

>      fauthz->list = qauthz_list_file_load(fauthz, errp);

>

>      if (!fauthz->refresh) {

> --

> 2.26.2

>

>
diff mbox series

Patch

diff --git a/authz/listfile.c b/authz/listfile.c
index cd6163aa40..aaf930453d 100644
--- a/authz/listfile.c
+++ b/authz/listfile.c
@@ -122,6 +122,11 @@  qauthz_list_file_complete(UserCreatable *uc, Error **errp)
     QAuthZListFile *fauthz = QAUTHZ_LIST_FILE(uc);
     gchar *dir = NULL, *file = NULL;
 
+    if (!fauthz->filename) {
+        error_setg(errp, "filename not provided");
+        return;
+    }
+
     fauthz->list = qauthz_list_file_load(fauthz, errp);
 
     if (!fauthz->refresh) {