# *** THIS PACKAGE HAS SPECIAL LICENSING CONDITIONS.  PLEASE
#     CONSULT THE OWNERS AND opensource-licensing@google.com BEFORE
#     DEPENDING ON IT IN YOUR PROJECT. ***
third_party {
  # would be RESTRICTED save for GFDL in:
  #   testcases/kernel/device-drivers/v4l/user_space/doc/spec/*.htm*
  license_type: BY_EXCEPTION_ONLY
}
