haibbo / improxy

IGMP/MLD Proxy which supports IGMPv3 and MLDv2 completely
27 stars 14 forks source link

enhncments suggestions #3

Open Yuji-2022 opened 7 years ago

Yuji-2022 commented 7 years ago

Hello and thank you for this igmp/mld proxy code I run some static code analysis on it and I would like to share somes results with you

1) input.c mcast_recv_igmp() => unreachable code : else if (ip->protocol == 0) 2) proxy.c main() => unreachable code : free_resource(); I think the proxy need to handle system signal in order to cleanup ressources 3) output.c send_igmp_mld_query() => unreachable code : if(p_if == NULL) (line 84) 4) proxy.c load_config() => resource lost : need to close fd 5) output.c send_igmp_mld_query() => possible memory leak : p = malloc(max_len) if family is neither AF_INET nor AF_INET6

I hope it help Best Reagrds

zhujiayin commented 2 years ago

Hello and thank you for this igmp/mld proxy code I run some static code analysis on it and I would like to share somes results with you

  1. input.c mcast_recv_igmp() => unreachable code : else if (ip->protocol == 0)
  2. proxy.c main() => unreachable code : free_resource(); I think the proxy need to handle system signal in order to cleanup ressources
  3. output.c send_igmp_mld_query() => unreachable code : if(p_if == NULL) (line 84)
  4. proxy.c load_config() => resource lost : need to close fd
  5. output.c send_igmp_mld_query() => possible memory leak : p = malloc(max_len) if family is neither AF_INET nor AF_INET6

I hope it help Best Reagrds

Hello and thank you for this igmp/mld proxy code I run some static code analysis on it and I would like to share somes results with you

  1. input.c mcast_recv_igmp() => unreachable code : else if (ip->protocol == 0)
  2. proxy.c main() => unreachable code : free_resource(); I think the proxy need to handle system signal in order to cleanup ressources
  3. output.c send_igmp_mld_query() => unreachable code : if(p_if == NULL) (line 84)
  4. proxy.c load_config() => resource lost : need to close fd
  5. output.c send_igmp_mld_query() => possible memory leak : p = malloc(max_len) if family is neither AF_INET nor AF_INET6

I hope it help Best Reagrds

Hello, I don't understant why it's (ip->protocol == 0) to add the mfc