Forum Discussion
1) Error line 8:
01070151:3: Rule [test] error: line 8: [undefined procedure: table] [table lookup -subtable "blacklist" $srcip]
Important to note that subtables were introduced in v10.1. This function would not work in case of v9. Since it appears your iRule syntax is correct, I assume the error is from LTM < v10.1 (older than), and the cause is that the function is not supported.
2) Errors line 13 and 16:
line 13: [use curly braces to avoid double substitution] [[clock second]] line 16: [use curly braces to avoid double substitution] [$static::interval]
In regards to this particular error, try enclosing the expr function in curly braces. Possible there are more problems with your iRule, but first lets see if this suggestion will get you somewhere.
Instead of:
set intervaltime [expr [clock second] / $static::interval]
Use:
set intervaltime [expr { [clock second] / $static::interval } ]
Instead of:
table lifetime $key [expr $static::interval + 1]
Use:
table lifetime $key [expr { $static::interval + 1 } ]
Please mark the answer as accepted if you believe it's correct.