.TH CRDA 8 "23 January 2009" "crda" "Linux" .SH NAME crda \- send to the kernel a wireless regulatory domain for a given ISO / IEC 3166 alpha2 .SH SYNOPSIS .ad l .in +8 .ti -8 .B crda .ad l .in +8 .ti -8 .SS .SH Description .B crda is the Linux wireless central regulatory domain agent. .B crda is intended to be used by .B udev scripts and should not be run manually unless debugging udev scripts. .B crda is triggered to run by the kernel by sending a .B udev event upon a new regulatory domain change. Regulatory domain changes are triggered by the wireless kernel subsystem (upon initialization and on reception of country IEs), wireless drivers, or userspace (see .B iw ). Upon a regulatory domain change the kernel sends a udev change event for the regulatory platform. The kernel ignores regulatory domains sent to it if it does not expect them. The regulatory domain is read by crda from the .B regulatory.bin file. .SS .SH RSA Digital Signature If built with openssl or gcrypt support .B crda will have embedded into it an RSA digital signature which will prevent it from reading corrupted or non-authored .B regulatory.bin files. Authorship is respected by the RSA public key packed into .B crda. .I This specific .B crda package has been built with RSA public keys from .I John Linville (the Linux wireless kernel maintainer) and .I Seth Forshee (the wireless regulatory databse maintainer) and as such will only read .B regulatory.bin files signed by one of them. For further information see the .B regulatory.bin man page. .SS .SH UDEV RULE A udev regulatory rule must be put in place in order to receive and parse udev events from the kernel in order to get udev to call crda with the passed ISO / IEC 3166 alpha2 country code. An example udev rule which can be used (usually in .B /lib/udev/rules.d/85-regulatory.rules ): .I KERNEL=="regulatory*", ACTION=="change", SUBSYSTEM=="platform", RUN+="/usr/libexec/crda" .SS .SH Environment variable Set the .B COUNTRY environment variable with a specific ISO / IEC 3166 alpha2 country code and then run .B crda without arguments. This will send a regulatory domain for that alpha2 to the kernel. .SH SEE ALSO .BR iw (8) .BR regulatory.bin (5) .BR http://wireless.kernel.org/en/developers/Regulatory/