On 15/09/17 08:39, Steffan Karger wrote:
> close_instance() tries to remove the file in c2.pf.filename, but that only
> works if we actually set that if we fail.  So, set that filename as soon
> as we know we've created the file.
> 
> Signed-off-by: Steffan Karger <steffan.kar...@fox-it.com>
> ---
> v2: As suggested by Antionio, get rid of local 'gc' and 'file' vars.
> 
>  src/openvpn/pf.c | 10 ++++------
>  1 file changed, 4 insertions(+), 6 deletions(-)
> 
> diff --git a/src/openvpn/pf.c b/src/openvpn/pf.c
> index 5fe1734..7479347 100644
> --- a/src/openvpn/pf.c
> +++ b/src/openvpn/pf.c
> @@ -618,19 +618,18 @@ pf_load_from_buffer_list(struct context *c, const 
> struct buffer_list *config)
>  void
>  pf_init_context(struct context *c)
>  {
> -    struct gc_arena gc = gc_new();
>  #ifdef PLUGIN_PF
>      if (plugin_defined(c->plugins, OPENVPN_PLUGIN_ENABLE_PF))
>      {
> -        const char *pf_file = create_temp_file(c->options.tmp_dir, "pf", 
> &gc);
> -        if (pf_file)
> +        c->c2.pf.filename = create_temp_file(c->options.tmp_dir, "pf",
> +                                             &c->c2.gc);

Patch looks good.  But it introduces a new compile warning.

pf.c: In function ‘pf_init_context’:
pf.c:624:27: warning: assignment discards ‘const’ qualifier from pointer target 
type [enabled by default]
         c->c2.pf.filename = create_temp_file(c->options.tmp_dir, "pf",

I'm pondering if we need create_temp_file() to actually return
a const char * - wouldn't just a plain char * be enough?

The alternative is to cast the const away here; but that just
feels too hacky in this code path.


-- 
kind regards,

David Sommerseth
OpenVPN Technologies, Inc


Attachment: signature.asc
Description: OpenPGP digital signature

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Openvpn-devel mailing list
Openvpn-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to