sbiaudet / cs-multiaddress

Multiaddress implementation in C#

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Multiformats.Address (cs-multiaddress)

Travis CI AppVeyor NuGet Codecov Libraries.io

Multiaddr implementation in C# .NET Standard 1.6 compliant.

Table of Contents

Install

PM> Install-Package Multiformats.Address

dotnet add package Multiformats.Address

Usage

var ma = Multiaddress.Decode("/ip4/127.0.0.1/udp/1234");
var addresses = ma.Split();
var joined = Multiaddress.Join(addresses);
var tcp = ma.Protocols.Get<TCP>();

There's some extension methods included that let's you create multiaddresses of IPEndPoints, and create IPEndPoints from multiaddresses. Some let's you create sockets directly from IP4/IP6, TCP/UDP multiaddresses.

var socket = ma.CreateSocket();
var localEndPoint = socket.GetLocalMultiaddress();
var remoteEndPoint = socket.GetRemoteMultiaddress();

Supported protocols

  • DCCP
  • DNS/4/6
  • HTTP
  • HTTPS
  • IPv4
  • IPv6
  • IPFS (deprecated - use P2P)
  • Onion
  • P2P
  • SCTP
  • TCP
  • UDP
  • UDT
  • Unix
  • WebRTCDirect
  • WebRTCStar
  • WebSocket
  • WebSocket Secure

Maintainers

Captain: @tabrath.

Contribute

Contributions welcome. Please check out the issues.

Check out our contributing document for more information on how we work, and about contributing in general. Please be aware that all interactions related to multiformats are subject to the IPFS Code of Conduct.

Small note: If editing the README, please conform to the standard-readme specification.

License

MIT © 2017 Trond Bråthen

About

Multiaddress implementation in C#

License:MIT License


Languages

Language:C# 98.8%Language:Shell 1.2%