 	public func readSomeBytes(count cnt: Int, completion: ([UInt8]?) -> ()) {
 		
 		let ptr = ReferenceBuffer(size: cnt)
-		let readCount = recv(into: ptr.b, count: cnt)
+		let readCount = recv(into: ptr[0], count: cnt)
 		if readCount == 0 {
 			completion(nil)
 		} else if self.isEAgain(err: readCount) {

	private var networkFailure: Bool = false
	private var semaphore: Threading.Event?
	
	class ReferenceBuffer {
		var b: UnsafeMutablePointer<UInt8>
		let size: Int
		init(size: Int) {
			self.size = size
			self.b = UnsafeMutablePointer<UInt8>.allocatingCapacity(size)
		}
		
		deinit {
			self.b.deallocateCapacity(self.size)
		}
	}
	

			
			// got some data
			if remaining - readCount == 0 { // done
				completion(completeArray(from: buffer, count: read + readCount))
			} else { // try again for more
				readBytesFully(into: buffer, read: read + readCount, remaining: remaining - readCount, timeoutSeconds: timeoutSeconds, completion: completion)
			}
		}
	}
