Home | History | Annotate | Download | only in services

Lines Matching defs:rpz

2  * services/rpz.h - rpz service
39 * This file contains functions to enable RPZ service.
56 * RPZ triggers, only the QNAME trigger is currently supported in Unbound.
61 RPZ_CLIENT_IP_TRIGGER, /* rpz-client-ip */
62 RPZ_RESPONSE_IP_TRIGGER, /* rpz-ip */
63 RPZ_NSDNAME_TRIGGER, /* rpz-nsdname */
64 RPZ_NSIP_TRIGGER, /* rpz-nsip */
69 * RPZ actions.
74 RPZ_PASSTHRU_ACTION, /* CNAME rpz-passthru. */
75 RPZ_DROP_ACTION, /* CNAME rpz-drop. */
76 RPZ_TCP_ONLY_ACTION, /* CNAME rpz-tcp-only. */
78 "rpz-" in target, SOA, NS, DNAME and
81 /* RPZ override actions */
82 RPZ_DISABLED_ACTION, /* RPZ action disabled using override */
83 RPZ_NO_OVERRIDE_ACTION, /* RPZ action no override*/
84 RPZ_CNAME_OVERRIDE_ACTION, /* RPZ CNAME action override*/
106 * RPZ containing policies. Pointed to from corresponding auth-zone. Part of a
111 struct rpz {
130 * Create policy from RR and add to this RPZ.
131 * @param r: the rpz to add the policy to.
145 int rpz_insert_rr(struct rpz* r, uint8_t* azname, size_t aznamelen, uint8_t* dname,
151 * @param r: the rpz to add the policy to.
161 void rpz_remove_rr(struct rpz* r, uint8_t* azname, size_t aznamelen,
166 * Walk over the RPZ zones to find and apply a QNAME trigger policy.
167 * @param az: auth_zones struct, containing first RPZ item and RPZ lock
177 * @param passthru: returns if the query can passthru further rpz processing.
192 * the rpz, based on the delegation point. It is allocated in the
204 * the rpz, based on the iq.qchase. It is allocated in the qstate region.
210 * Delete RPZ
211 * @param r: RPZ struct to delete
213 void rpz_delete(struct rpz* r);
216 * Clear local-zones and respip data in RPZ, used after reloading file or
218 * @param r: RPZ to use
220 int rpz_clear(struct rpz* r);
223 * Create RPZ. RPZ must be added to linked list after creation.
224 * @return: the newly created RPZ
226 struct rpz* rpz_create(struct config_auth* p);
229 * Change config on rpz, after reload.
230 * @param r: the rpz structure.
234 int rpz_config(struct rpz* r, struct config_auth* p);
237 * String for RPZ action enum
238 * @param a: RPZ action to get string for
239 * @return: string for RPZ action
247 * Prepare RPZ after processing feed content.
248 * @param r: RPZ to use
250 void rpz_finish_config(struct rpz* r);
253 * Classify respip action for RPZ action
254 * @param a: RPZ action
261 * Enable RPZ
262 * @param r: RPZ struct to enable
264 void rpz_enable(struct rpz* r);
267 * Disable RPZ
268 * @param r: RPZ struct to disable
270 void rpz_disable(struct rpz* r);
273 * Get memory usage of rpz. Caller must manage locks.
274 * @param r: RPZ struct.
277 size_t rpz_get_mem(struct rpz* r);