Skip to content

Commit 74805d9

Browse files
authored
Merge pull request #361 from ajinkyapotdarvjti/net440fix
Nullify default NetworkSecurityRules if absent
2 parents f333fc8 + d454c47 commit 74805d9

File tree

1 file changed

+27
-14
lines changed

1 file changed

+27
-14
lines changed

src/ResourceManager/Network/Commands.Network/NetworkSecurityGroup/NetworkSecurityGroupBaseCmdlet.cs

Lines changed: 27 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@
1818
using Microsoft.Azure.Commands.ResourceManager.Common.Tags;
1919
using Microsoft.Azure.Management.Network;
2020
using System.Net;
21+
using System.Collections;
22+
using System.Collections.Generic;
2123
using Microsoft.Azure.Management.Network.Models;
2224

2325
namespace Microsoft.Azure.Commands.Network
@@ -67,24 +69,35 @@ public PSNetworkSecurityGroup GetNetworkSecurityGroup(string resourceGroupName,
6769
// Temporary - to be removed
6870
public void NullifyApplicationSecurityGroupsIfAbsent(NetworkSecurityGroup nsg)
6971
{
70-
if (nsg ==null || nsg.SecurityRules == null)
72+
if (nsg == null)
7173
{
7274
return;
7375
}
7476

75-
foreach (var rule in nsg.SecurityRules)
76-
{
77-
if (rule.SourceApplicationSecurityGroups != null && rule.SourceApplicationSecurityGroups.Count == 0)
78-
{
79-
rule.SourceApplicationSecurityGroups = null;
80-
}
81-
82-
if (rule.DestinationApplicationSecurityGroups != null && rule.DestinationApplicationSecurityGroups.Count == 0)
83-
{
84-
rule.DestinationApplicationSecurityGroups = null;
85-
}
86-
}
87-
}
77+
this.NullifyApplicationSecurityRulesIfAbsent(nsg.DefaultSecurityRules);
78+
this.NullifyApplicationSecurityRulesIfAbsent(nsg.SecurityRules);
79+
}
80+
81+
public void NullifyApplicationSecurityRulesIfAbsent(IList<SecurityRule> rules)
82+
{
83+
if (rules == null)
84+
{
85+
return;
86+
}
87+
88+
foreach (var rule in rules)
89+
{
90+
if (rule.SourceApplicationSecurityGroups != null && rule.SourceApplicationSecurityGroups.Count == 0)
91+
{
92+
rule.SourceApplicationSecurityGroups = null;
93+
}
94+
95+
if (rule.DestinationApplicationSecurityGroups != null && rule.DestinationApplicationSecurityGroups.Count == 0)
96+
{
97+
rule.DestinationApplicationSecurityGroups = null;
98+
}
99+
}
100+
}
88101

89102
public PSNetworkSecurityGroup ToPsNetworkSecurityGroup(NetworkSecurityGroup nsg)
90103
{

0 commit comments

Comments
 (0)