WIZnetInterface using namespace
Dependents: DualNetworkInterface-Basic
Fork of WIZnetInterface by
Diff: Socket/dnsname.h
- Revision:
- 20:3e61863c1f67
- Parent:
- 19:d8773cd4edc5
--- a/Socket/dnsname.h Wed Jul 01 04:02:50 2015 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-// dnsname.h 2013/8/27
-#pragma once
-//#include <string>
-#include "pico_string.h"
-class dnsname {
-public:
- uint8_t *buf;
- pico_string str;
- dnsname(uint8_t *s) {
- buf = s;
- }
- int decode(int pos) {
- while(1) {
- int len = buf[pos++];
- if (len == 0x00) {
- break;
- }
- if ((len&0xc0) == 0xc0) { //compress
- int offset = (len&0x3f)<<8|buf[pos];
- decode(offset);
- return pos+1;
- }
- if (!str.empty()) {
- str.append(".");
- }
- str.append((const char*)(buf+pos), len);
- pos += len;
- }
- return pos;
- }
-
- int encode(int pos, char* s) {
- while(*s) {
- char *f = strchr(s, '.');
- if (f == NULL) {
- int len = strlen(s);
- buf[pos++] = len;
- memcpy(buf+pos, s, len);
- pos += len;
- break;
- }
- int len = f - s;
- buf[pos++] = len;
- memcpy(buf+pos, s, len);
- s = f+1;
- pos += len;
- }
- buf[pos++] = 0x00;
- return pos;
- }
-};
-
