Overview
Comment: | OFDNSResolver: Allow specifying query class & type |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
af30016cfb886aab82236bd65506535b |
User & Date: | js on 2018-07-29 19:13:06 |
Other Links: | manifest | tags |
Context
2018-07-30
| ||
00:07 | OFDNSResolver: Add support for parsing AAAAs check-in: 589a3e0f13 user: js tags: trunk | |
2018-07-29
| ||
19:13 | OFDNSResolver: Allow specifying query class & type check-in: af30016cfb user: js tags: trunk | |
18:38 | OFDNSResolver: Add support for parsing CNAMEs check-in: 3826822733 user: js tags: trunk | |
Changes
Modified src/OFDNSResolver.h from [1ab5027353] to [72b67bd9be].
︙ | |||
96 97 98 99 100 101 102 103 104 105 106 107 | 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 | + + + + + + + + + + + + + + + + + + + | * @param selector The selector to call on the target. The signature must be * `void (OFArray<OFDNSResourceRecord *> *response, id context, * id exception)`. * @param context A context object to pass along to the target */ - (void)asyncResolveHost: (OFString *)host target: (id)target selector: (SEL)selector context: (nullable id)context; /*! * @brief Asynchronously resolves the specified host. * * @param host The host to resolve * @param recordClass The desired class of the records to query * @param recordType The desired type of the records to query * @param target The target to call with the result once resolving is done * @param selector The selector to call on the target. The signature must be * `void (OFArray<OFDNSResourceRecord *> *response, id context, * id exception)`. * @param context A context object to pass along to the target */ - (void)asyncResolveHost: (OFString *)host recordClass: (of_dns_resource_record_class_t)recordClass recordType: (of_dns_resource_record_type_t)recordType target: (id)target selector: (SEL)selector context: (nullable id)context; @end OF_ASSUME_NONNULL_END |
Modified src/OFDNSResolver.m from [f87770019a] to [11b30d4761].
︙ | |||
745 746 747 748 749 750 751 752 753 754 755 756 757 758 | 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 | + + + + + + + + + + + + + + + | return 0; } - (void)asyncResolveHost: (OFString *)host target: (id)target selector: (SEL)selector context: (id)context { [self asyncResolveHost: host recordClass: OF_DNS_RESOURCE_RECORD_CLASS_IN recordType: OF_DNS_RESOURCE_RECORD_TYPE_ALL target: target selector: selector context: context]; } - (void)asyncResolveHost: (OFString *)host recordClass: (of_dns_resource_record_class_t)recordClass recordType: (of_dns_resource_record_type_t)recordType target: (id)target selector: (SEL)selector context: (id)context { void *pool = objc_autoreleasePoolPush(); OFMutableData *data = [OFMutableData dataWithCapacity: 512]; OFDNSResolver_context *DNSResolverContext; OFNumber *ID; uint16_t tmp; OFUDPSocket *sock; |
︙ | |||
802 803 804 805 806 807 808 | 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 | - + - + | length8 = (uint8_t)length; [data addItem: &length8]; [data addItems: [component UTF8String] count: length]; } /* QTYPE */ |
︙ |
Modified src/OFDNSResourceRecord.h from [1e61fb86ab] to [b2d773ef59].
︙ | |||
24 25 26 27 28 29 30 | 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | - + + - + + | @class OFData; /*! * @brief The class of a DNS resource record. */ typedef enum { |
︙ |
Modified src/OFDNSResourceRecord.m from [1fb8ff8a93] to [9ea581e271].
︙ | |||
25 26 27 28 29 30 31 32 33 34 35 36 37 38 | 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | + + | OFString * of_dns_resource_record_class_to_string( of_dns_resource_record_class_t recordClass) { switch (recordClass) { case OF_DNS_RESOURCE_RECORD_CLASS_IN: return @"IN"; case OF_DNS_RESOURCE_RECORD_CLASS_ANY: return @"any"; default: return [OFString stringWithFormat: @"%u", recordClass]; } } OFString * of_dns_resource_record_type_to_string(of_dns_resource_record_type_t recordType) |
︙ | |||
50 51 52 53 54 55 56 57 58 59 60 61 62 63 | 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | + + | return @"PTR"; case OF_DNS_RESOURCE_RECORD_TYPE_MX: return @"MX"; case OF_DNS_RESOURCE_RECORD_TYPE_TXT: return @"TXT"; case OF_DNS_RESOURCE_RECORD_TYPE_AAAA: return @"AAAA"; case OF_DNS_RESOURCE_RECORD_TYPE_ALL: return @"all"; default: return [OFString stringWithFormat: @"%u", recordType]; } } @implementation OFDNSResourceRecord @synthesize name = _name, recordClass = _recordClass, recordType = _recordType; |
︙ | |||
142 143 144 145 146 147 148 | 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 | - + | return hash; } - (OFString *)description { return [OFString stringWithFormat: @"<OFDNSResourceRecord:\n" |