- #include <stdio.h> 
- #include <stdlib.h> 
-   
- #define LARGE_INFO_LENGTH 1024 
-   
- enum tt__IPType { tt__IPv4, tt__IPv6 }; 
-   
- struct tt__IPAddress 
- { 
-   enum tt__IPType Type;   /* required element of type tt:IPType */ 
-   char *IPv4Address;  /* optional element of type tt:IPv4Address */ 
-   char *IPv6Address;  /* optional element of type tt:IPv6Address */ 
- }; 
-   
- struct tt__DNSInformation 
- { 
-   struct tt__IPAddress* DNSManual; 
- }; 
-   
- int main() 
- { 
-   struct tt__DNSInformation* DNSInformation; 
-   char dns_string[] = "192.168.2.254"; 
-   
-   DNSInformation  = malloc(sizeof(struct-  tt__DNSInformation ));
-   DNSInformation ->- DNSManual  = malloc(sizeof(struct-  tt__IPAddress ));
-   DNSInformation ->- DNSManual ->- IPv4Address  = malloc(sizeof(char) *-  LARGE_INFO_LENGTH );
-   strncpy(- DNSInformation ->- DNSManual ->- IPv4Address ,-  dns_string ,-  LARGE_INFO_LENGTH  - 1);
 
-   
-   printf("%s\n",-  DNSInformation ->- DNSManual ->- IPv4Address );
 
-   return 0; 
- } 
				I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KIAojZGVmaW5lIExBUkdFX0lORk9fTEVOR1RIIDEwMjQKIAplbnVtIHR0X19JUFR5cGUgeyB0dF9fSVB2NCwgdHRfX0lQdjYgfTsKIApzdHJ1Y3QgdHRfX0lQQWRkcmVzcwp7CiAgZW51bSB0dF9fSVBUeXBlIFR5cGU7ICAgLyogcmVxdWlyZWQgZWxlbWVudCBvZiB0eXBlIHR0OklQVHlwZSAqLwogIGNoYXIgKklQdjRBZGRyZXNzOyAgLyogb3B0aW9uYWwgZWxlbWVudCBvZiB0eXBlIHR0OklQdjRBZGRyZXNzICovCiAgY2hhciAqSVB2NkFkZHJlc3M7ICAvKiBvcHRpb25hbCBlbGVtZW50IG9mIHR5cGUgdHQ6SVB2NkFkZHJlc3MgKi8KfTsKIApzdHJ1Y3QgdHRfX0ROU0luZm9ybWF0aW9uCnsKICBzdHJ1Y3QgdHRfX0lQQWRkcmVzcyogRE5TTWFudWFsOwp9OwogCmludCBtYWluKCkKewogIHN0cnVjdCB0dF9fRE5TSW5mb3JtYXRpb24qIEROU0luZm9ybWF0aW9uOwogIGNoYXIgZG5zX3N0cmluZ1tdID0gIjE5Mi4xNjguMi4yNTQiOwogIAogIEROU0luZm9ybWF0aW9uID0gbWFsbG9jKHNpemVvZihzdHJ1Y3QgdHRfX0ROU0luZm9ybWF0aW9uKSk7CiAgRE5TSW5mb3JtYXRpb24tPkROU01hbnVhbCA9IG1hbGxvYyhzaXplb2Yoc3RydWN0IHR0X19JUEFkZHJlc3MpKTsKICBETlNJbmZvcm1hdGlvbi0+RE5TTWFudWFsLT5JUHY0QWRkcmVzcyA9IG1hbGxvYyhzaXplb2YoY2hhcikgKiBMQVJHRV9JTkZPX0xFTkdUSCk7CiAgc3RybmNweShETlNJbmZvcm1hdGlvbi0+RE5TTWFudWFsLT5JUHY0QWRkcmVzcywgZG5zX3N0cmluZywgTEFSR0VfSU5GT19MRU5HVEggLSAxKTsKICAKICBwcmludGYoIiVzXG4iLCBETlNJbmZvcm1hdGlvbi0+RE5TTWFudWFsLT5JUHY0QWRkcmVzcyk7CiAgcmV0dXJuIDA7Cn0=