00c6080 util/server: amended close_low_fds()

1 file Authored by atikhonov 4 years ago, Committed by pbrezina 4 years ago,
    util/server: amended close_low_fds()
    
    Rewrote close_low_fds() to use freopen() as it fits better here
    and some flags passed to open() previously didn't make a sense.
    
    Also fixed a number of identical Coverity issues:
    ```
    Error: RESOURCE_LEAK (CWE-772):
    sssd-2.2.3/src/util/server.c:58: open_fn: Returning handle opened by "open". [Note: The source code implementation of the function has been overridden by a user model.]
    sssd-2.2.3/src/util/server.c:58: var_assign: Assigning: "fd" = handle returned from "open("/dev/null", 1, 0)".
    sssd-2.2.3/src/util/server.c:56: overwrite_var: Overwriting handle "fd" in "fd = open("/dev/null", 2, 0)" leaks the handle.
       54|          library routines writing to stdout etc. won't cause havoc */
       55|       for (i = 0; i < 3; i++) {
       56|->         fd = open("/dev/null", O_RDWR, 0);
       57|           if (fd < 0)
       58|               fd = open("/dev/null", O_WRONLY, 0);
    ```
    
    Reviewed-by: Michal Židek <mzidek@redhat.com>
    
        
file modified
+9 -19