Giter Club home page Giter Club logo

mdnssd's Introduction

Introduction

This is a simple mdns service discovery inspired by from https://github.com/sudomesh/mdnssd-min

It has been updated to compile under Linux, MacOS, Windows, FreeBSD and SOlaris and split into a integrable part and a test program so that it can be included into various projects.

Please see here to understand proxy proxy repositories and to know how to rebuild my apps in general

mdnssd's People

Contributors

dairiki avatar philippe44 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

mdnssd's Issues

add license

hi,

would you care to license your work under a non-copyleft license like the LGPL or any license at all for that matter? :)

thanks

Buffer overrun when decoding blank NAME (with fix)

(NB: I tried to create a branch/PR for this but got '403 permission denied' errors, so posting as an issue instead.)

The problem: parse_rr_name has incorrect logic, which prevents correct decode of a zero-length NAME. (Zero-length NAME is used by EDNS, e.g. OPT records which are not uncommon now)

Detail: parse_rr_name returns the length of the parsed data (i.e. what to increment the message pointer by to decode the next part of the message). Unfortunately due to a bug, a zero-length NAME (e.g. char *message = "\0") returns 2 bytes (instead of 1) as the length. As a result, the next decode operation starts 1 byte into the field, and so the rest of the message is decoded as junk (the parsed > size checks are only done between the different records, not within the records - so these do not help) and you will and can get undefined behaviour, SIGSEGVs, etc.

Fix: line 516 in mdnssd-min.c, change from

if(!did_jump) {

to

if(!did_jump && label_len) {

No output on Windows and macOS

I've tried the binaries on both macOS 10.15 and Windows 11, but there's no output. The service string is "_tcp." However, the tool on windows starts printing services once I concurrently run the Bonjour browser.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.