mudfish_dns_module.h
Изтеглете mudfish_dns_module.h и го поставете в директорията с C изходния код на модула. По-долу е целият заглавен файл, предоставен от Mudfish DNS, включително декларациите за съвместимост. За модулите в това ръководство използвайте C ABI v2.
Примерът policy.c съдържа команди за компилиране и примери за DNS действия. За зареждането, поведението на куките и собствеността на буферите вижте Нативни модули.
Типове, използвани от v2 модулите
| Тип | Предназначение |
|---|---|
mudfish_dns_span | Указател и дължина на зает вход или заместващ отговор, собственост на модула. Низовете не завършват с NUL. |
mudfish_dns_event | Мрежовите данни на DNS заявката и отговора, произходът на отговора, оригиналното мес тоназначение и състоянието на съществуващата политика за домейни. |
mudfish_dns_web_event | Уеб данни, Host/SNI, местоназначение, протокол, посока и състояние на съществуващата политика за домейни. HTTPS данните остават шифровани. |
mudfish_dns_result | DNS действие и незадължителен адрес за отговор, TTL или заместващ отговор. |
mudfish_dns_module_v2 | Контекст на модула, незадължителни DNS и уеб обратни извиквания и обратно извикване за почистване. |
Експортирайте mudfish_dns_module_init_v2() със сигнатурата по-долу. Хостът започва с NULL във всички полета на модула. Проверете ABI версията и размера на структурата, преди да записвате в полетата. Оставете неизползваните куки NULL и върнете 0 при успех.
При неуспешна инициализация сами освободете заделените ресурси. При успех хостът извиква destroy() веднъж, когато модулът вече не се използва, преди разтоварване на библиотеката. Спрете нишките, собственост на модула, и изчакайте завършването им тук.