BUG11825: firewall: Renaming a network/host group doesn't update rules

Message ID 20180824080630.9612-1-alexander.marx@ipfire.org
State Accepted
Commit 2754623fa9842d80cdd8341f06536b0940f4aeea
Headers
Series BUG11825: firewall: Renaming a network/host group doesn't update rules |

Commit Message

Alexander Marx Aug. 24, 2018, 6:06 p.m. UTC
  Code only changed field 6 of hash (target group) and not field 4 (source group).
Also if using geoip it was only field 4 of hash (source group) and not field 6 of hash (target group)
Added new code that changes both fields to reflect the change in the firewallrules immediately.

fixes: #11825

Signed-off-by: Alexander Marx <alexander.marx@ipfire.org>
---
 html/cgi-bin/fwhosts.cgi | 2 ++
 1 file changed, 2 insertions(+)
  

Comments

Michael Tremer Aug. 24, 2018, 8:46 p.m. UTC | #1
Perfect. Merged!

On Fri, 2018-08-24 at 10:06 +0200, Alexander Marx wrote:
> Code only changed field 6 of hash (target group) and not field 4 (source group).
> Also if using geoip it was only field 4 of hash (source group) and not field 6 of hash (target group)
> Added new code that changes both fields to reflect the change in the firewallrules immediately.
> 
> fixes: #11825
> 
> Signed-off-by: Alexander Marx <alexander.marx@ipfire.org>
> ---
>  html/cgi-bin/fwhosts.cgi | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/html/cgi-bin/fwhosts.cgi b/html/cgi-bin/fwhosts.cgi
> index 576701ac6..7315e79b6 100644
> --- a/html/cgi-bin/fwhosts.cgi
> +++ b/html/cgi-bin/fwhosts.cgi
> @@ -1258,6 +1258,7 @@ if ($fwhostsettings{'ACTION'} eq 'changegrpname')
>  			}
>  			&General::writehasharray("$configgrp", \%customgrp );
>  			#change name in FW Rules
> +			&changenameinfw($fwhostsettings{'oldgrpname'},$fwhostsettings{'grp'},4);
>  			&changenameinfw($fwhostsettings{'oldgrpname'},$fwhostsettings{'grp'},6);
>  		}
>  	}
> @@ -1282,6 +1283,7 @@ if ($fwhostsettings{'ACTION'} eq 'changegeoipgrpname')
>  			&General::writehasharray("$configgeoipgrp", \%customgeoipgrp );
>  			#change name in FW Rules
>  			&changenameinfw($fwhostsettings{'oldgrpname'},$fwhostsettings{'grp'},4,"geoip");
> +			&changenameinfw($fwhostsettings{'oldgrpname'},$fwhostsettings{'grp'},6,"geoip");
>  		}
>  	}
>  	&addgeoipgrp;
  

Patch

diff --git a/html/cgi-bin/fwhosts.cgi b/html/cgi-bin/fwhosts.cgi
index 576701ac6..7315e79b6 100644
--- a/html/cgi-bin/fwhosts.cgi
+++ b/html/cgi-bin/fwhosts.cgi
@@ -1258,6 +1258,7 @@  if ($fwhostsettings{'ACTION'} eq 'changegrpname')
 			}
 			&General::writehasharray("$configgrp", \%customgrp );
 			#change name in FW Rules
+			&changenameinfw($fwhostsettings{'oldgrpname'},$fwhostsettings{'grp'},4);
 			&changenameinfw($fwhostsettings{'oldgrpname'},$fwhostsettings{'grp'},6);
 		}
 	}
@@ -1282,6 +1283,7 @@  if ($fwhostsettings{'ACTION'} eq 'changegeoipgrpname')
 			&General::writehasharray("$configgeoipgrp", \%customgeoipgrp );
 			#change name in FW Rules
 			&changenameinfw($fwhostsettings{'oldgrpname'},$fwhostsettings{'grp'},4,"geoip");
+			&changenameinfw($fwhostsettings{'oldgrpname'},$fwhostsettings{'grp'},6,"geoip");
 		}
 	}
 	&addgeoipgrp;