Skip to content

Commit 9fe2958

Browse files
authored
Merge pull request #587 from sjberman/cherrypick-586
Merge pull request #586 from sjberman/11.6_irule
2 parents 1290036 + b118c61 commit 9fe2958

File tree

2 files changed

+23
-16
lines changed

2 files changed

+23
-16
lines changed

pkg/appmanager/resourceConfig.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1225,7 +1225,7 @@ func (appMgr *Manager) handleIngressTls(
12251225
rsCfg.Virtual.AddIRule(ruleName)
12261226
if nil != ing.Spec.Backend {
12271227
svcFwdRulesMap.AddEntry(ing.ObjectMeta.Namespace,
1228-
ing.Spec.Backend.ServiceName, "*", "/")
1228+
ing.Spec.Backend.ServiceName, "\\*", "/")
12291229
}
12301230
for _, rul := range ing.Spec.Rules {
12311231
if nil != rul.HTTP {

pkg/appmanager/routing.go

Lines changed: 22 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -249,11 +249,12 @@ func httpRedirectIRule(port int32) string {
249249
}
250250

251251
func selectPoolIRuleFunc() string {
252-
iRuleFunc := `
252+
iRuleFunc := fmt.Sprintf(`
253253
proc select_ab_pool {path default_pool } {
254254
set last_slash [string length $path]
255+
set ab_class "/%s/ab_deployment_dg"
255256
while {$last_slash >= 0} {
256-
if {[class match $path equals ab_deployment_dg]} then {
257+
if {[class match $path equals $ab_class]} then {
257258
break
258259
}
259260
set last_slash [string last "/" $path $last_slash]
@@ -262,7 +263,7 @@ func selectPoolIRuleFunc() string {
262263
}
263264
264265
if {$last_slash >= 0} {
265-
set ab_rule [class match -value $path equals ab_deployment_dg]
266+
set ab_rule [class match -value $path equals $ab_class]
266267
if {$ab_rule != ""} then {
267268
set weight_selection [expr {rand()}]
268269
set service_rules [split $ab_rule ";"]
@@ -280,7 +281,7 @@ func selectPoolIRuleFunc() string {
280281
HTTP::respond 503
281282
}
282283
return $default_pool
283-
}`
284+
}`, DEFAULT_PARTITION)
284285

285286
return iRuleFunc
286287
}
@@ -390,15 +391,19 @@ func sslPassthroughIRule() string {
390391
SSL::disable serverside
391392
set dflt_pool ""
392393
set passthru_class "/%[1]s/ssl_passthrough_servername_dg"
393-
set svrname_class "/%[1]s/ssl_reencrypt_servername_dg"
394-
if { [class exists $passthru_class] && [class match $servername_lower equals ssl_passthrough_servername_dg] } {
395-
set dflt_pool [class match -value $servername_lower equals ssl_passthrough_servername_dg]
396-
SSL::disable
397-
HTTP::disable
394+
set reencrypt_class "/%[1]s/ssl_reencrypt_servername_dg"
395+
if { [class exists $passthru_class] } {
396+
set dflt_pool [class match -value $servername_lower equals $passthru_class]
397+
if { not ($dflt_pool equals "") } {
398+
SSL::disable
399+
HTTP::disable
400+
}
398401
}
399-
elseif { [class exists $svrname_class] && [class match $servername_lower equals ssl_reencrypt_servername_dg] } {
400-
set dflt_pool [class match -value $servername_lower equals ssl_reencrypt_servername_dg]
401-
SSL::enable serverside
402+
elseif { [class exists $reencrypt_class] } {
403+
set dflt_pool [class match -value $servername_lower equals $reencrypt_class]
404+
if { not ($dflt_pool equals "") } {
405+
SSL::enable serverside
406+
}
402407
}
403408
set ab_class "/%[1]s/ab_deployment_dg"
404409
if { not [class exists $ab_class] } {
@@ -426,9 +431,11 @@ func sslPassthroughIRule() string {
426431
427432
when SERVER_CONNECTED {
428433
set svrssl_class "/%[1]s/ssl_reencrypt_serverssl_dg"
429-
if { [class exists $svrssl_class] && [class match $servername_lower equals ssl_reencrypt_serverssl_dg] } {
430-
set profile [class match -value $servername_lower equals ssl_reencrypt_serverssl_dg]
431-
SSL::profile $profile
434+
if { [class exists $svrssl_class] } {
435+
set profile [class match -value $servername_lower equals $svrssl_class]
436+
if { not ($profile equals "") } {
437+
SSL::profile $profile
438+
}
432439
}
433440
}`, DEFAULT_PARTITION)
434441

0 commit comments

Comments
 (0)