mirror of
				https://github.com/caddyserver/caddy.git
				synced 2025-10-31 02:27:19 -04:00 
			
		
		
		
	logging: Inline Caddyfile syntax for ip_mask filter (#6094)
				
					
				
			This commit is contained in:
		
							parent
							
								
									e7a534d0a3
								
							
						
					
					
						commit
						91ec75441a
					
				| @ -21,6 +21,7 @@ log { | ||||
| 				ipv4 24 | ||||
| 				ipv6 32 | ||||
| 			} | ||||
| 			request>client_ip ip_mask 16 32 | ||||
| 			request>headers>Regexp regexp secret REDACTED | ||||
| 			request>headers>Hash hash | ||||
| 		} | ||||
| @ -41,6 +42,11 @@ log { | ||||
| 				}, | ||||
| 				"encoder": { | ||||
| 					"fields": { | ||||
| 						"request\u003eclient_ip": { | ||||
| 							"filter": "ip_mask", | ||||
| 							"ipv4_cidr": 16, | ||||
| 							"ipv6_cidr": 32 | ||||
| 						}, | ||||
| 						"request\u003eheaders\u003eAuthorization": { | ||||
| 							"filter": "replace", | ||||
| 							"value": "REDACTED" | ||||
|  | ||||
| @ -169,6 +169,27 @@ func (IPMaskFilter) CaddyModule() caddy.ModuleInfo { | ||||
| // UnmarshalCaddyfile sets up the module from Caddyfile tokens. | ||||
| func (m *IPMaskFilter) UnmarshalCaddyfile(d *caddyfile.Dispenser) error { | ||||
| 	d.Next() // consume filter name | ||||
| 
 | ||||
| 	args := d.RemainingArgs() | ||||
| 	if len(args) > 2 { | ||||
| 		return d.Errf("too many arguments") | ||||
| 	} | ||||
| 	if len(args) > 0 { | ||||
| 		val, err := strconv.Atoi(args[0]) | ||||
| 		if err != nil { | ||||
| 			return d.Errf("error parsing %s: %v", args[0], err) | ||||
| 		} | ||||
| 		m.IPv4MaskRaw = val | ||||
| 
 | ||||
| 		if len(args) > 1 { | ||||
| 			val, err := strconv.Atoi(args[1]) | ||||
| 			if err != nil { | ||||
| 				return d.Errf("error parsing %s: %v", args[1], err) | ||||
| 			} | ||||
| 			m.IPv6MaskRaw = val | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	for d.NextBlock(0) { | ||||
| 		switch d.Val() { | ||||
| 		case "ipv4": | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user