Hi Jeremy,

> diff --git a/source3/nmbd/nmbd_packets.c b/source3/nmbd/nmbd_packets.c
> index a89f49c..0324c9d 100644
> --- a/source3/nmbd/nmbd_packets.c
> +++ b/source3/nmbd/nmbd_packets.c
> @@ -1698,7 +1698,12 @@ static bool create_listen_pollfds(struct pollfd **pfds,
>       for (subrec = FIRST_SUBNET;
>            subrec != NULL;
>            subrec = NEXT_SUBNET_EXCLUDING_UNICAST(subrec)) {
> -             count += 2;     /* nmb_sock and dgram_sock */
> +             if (subrec->nmb_sock != -1) {
> +                     count += 1;
> +             }
> +             if (subrec->dgram_sock != -1) {
> +                     count += 1;
> +             }
>               if (subrec->nmb_bcast != -1) {
>                       count += 1;
>               }

Can you please explain me where this can happen? I think
nmb_sock and dgram_sock are always valid.

metze

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to