Mongoose broadcast listener unixHow to run a shell script on a Unix console or Mac terminal?BroadcastingPeak memory usage of a linux/unix processHow do I update/upsert a document in Mongoose?What is the “__v” field in MongooseData is not received correctly from TCP socket using CIs there a command to list all Unix group names?How to permanently set $PATH on Linux/Unix?How do I copy folder with files to another folder in Unix/Linux?Broadcast my message in Socket
Books on the History of math research at European universities
Who must act to prevent Brexit on March 29th?
Greatest common substring
Why Were Madagascar and New Zealand Discovered So Late?
Resetting two CD4017 counters simultaneously, only one resets
For airliners, what prevents wing strikes on landing in bad weather?
What will be the temperature on Earth when Sun finishes its main sequence?
Did US corporations pay demonstrators in the German demonstrations against article 13?
Organic chemistry Iodoform Reaction
Do all polymers contain either carbon or silicon?
Can I Retrieve Email Addresses from BCC?
Should a half Jewish man be discouraged from marrying a Jewess?
Pronouncing Homer as in modern Greek
Indicating multiple different modes of speech (fantasy language or telepathy)
How to check participants in at events?
Giant Toughroad SLR 2 for 200 miles in two days, will it make it?
What does the "3am" section means in manpages?
The One-Electron Universe postulate is true - what simple change can I make to change the whole universe?
Can the harmonic series explain the origin of the major scale?
Why isn't KTEX's runway designation 10/28 instead of 9/27?
Science Fiction story where a man invents a machine that can help him watch history unfold
Would it be legal for a US State to ban exports of a natural resource?
Can the electrostatic force be infinite in magnitude?
How will losing mobility of one hand affect my career as a programmer?
Mongoose broadcast listener unix
How to run a shell script on a Unix console or Mac terminal?BroadcastingPeak memory usage of a linux/unix processHow do I update/upsert a document in Mongoose?What is the “__v” field in MongooseData is not received correctly from TCP socket using CIs there a command to list all Unix group names?How to permanently set $PATH on Linux/Unix?How do I copy folder with files to another folder in Unix/Linux?Broadcast my message in Socket
Im trying to listen broadcast udp messages using cesanta mongoose in C/C++.
mgr = new mg_mgr();
struct ip_mreq group;
mg_mgr_init(mgr, this);
char listen[256];
snprintf(listen, sizeof(listen), "udp://%d", _port);
nc = mg_bind(mgr, listen, ev_handler);
if (nc == NULL)
strerror(errno);
return errno;
group.imr_multiaddr.s_addr = inet_addr("0.0.0.0");
group.imr_interface.s_addr = inet_addr(INADDR_ANY);
if (setsockopt(nc->sock, IPPROTO_IP, IP_ADD_MEMBERSHIP, (char *)&group, sizeof(group)) < 0)
strerror(errno);
return errno;
while(true)
mg_mgr_poll(mgr, 0);
It works fine on windows, and I'm able to catch the messages.
BUT it fails on linux (Debian) on the setsockopt with error 22 (invalid argument).
I thought the mongoose library was crossplatform, is there something I might be missing here?
I read that the option IP_ADD_MEMBERSHIP might give problems, but I don't know how should I set the socket options to receive the broadcast.
c linux mongoose udp broadcasting
add a comment |
Im trying to listen broadcast udp messages using cesanta mongoose in C/C++.
mgr = new mg_mgr();
struct ip_mreq group;
mg_mgr_init(mgr, this);
char listen[256];
snprintf(listen, sizeof(listen), "udp://%d", _port);
nc = mg_bind(mgr, listen, ev_handler);
if (nc == NULL)
strerror(errno);
return errno;
group.imr_multiaddr.s_addr = inet_addr("0.0.0.0");
group.imr_interface.s_addr = inet_addr(INADDR_ANY);
if (setsockopt(nc->sock, IPPROTO_IP, IP_ADD_MEMBERSHIP, (char *)&group, sizeof(group)) < 0)
strerror(errno);
return errno;
while(true)
mg_mgr_poll(mgr, 0);
It works fine on windows, and I'm able to catch the messages.
BUT it fails on linux (Debian) on the setsockopt with error 22 (invalid argument).
I thought the mongoose library was crossplatform, is there something I might be missing here?
I read that the option IP_ADD_MEMBERSHIP might give problems, but I don't know how should I set the socket options to receive the broadcast.
c linux mongoose udp broadcasting
add a comment |
Im trying to listen broadcast udp messages using cesanta mongoose in C/C++.
mgr = new mg_mgr();
struct ip_mreq group;
mg_mgr_init(mgr, this);
char listen[256];
snprintf(listen, sizeof(listen), "udp://%d", _port);
nc = mg_bind(mgr, listen, ev_handler);
if (nc == NULL)
strerror(errno);
return errno;
group.imr_multiaddr.s_addr = inet_addr("0.0.0.0");
group.imr_interface.s_addr = inet_addr(INADDR_ANY);
if (setsockopt(nc->sock, IPPROTO_IP, IP_ADD_MEMBERSHIP, (char *)&group, sizeof(group)) < 0)
strerror(errno);
return errno;
while(true)
mg_mgr_poll(mgr, 0);
It works fine on windows, and I'm able to catch the messages.
BUT it fails on linux (Debian) on the setsockopt with error 22 (invalid argument).
I thought the mongoose library was crossplatform, is there something I might be missing here?
I read that the option IP_ADD_MEMBERSHIP might give problems, but I don't know how should I set the socket options to receive the broadcast.
c linux mongoose udp broadcasting
Im trying to listen broadcast udp messages using cesanta mongoose in C/C++.
mgr = new mg_mgr();
struct ip_mreq group;
mg_mgr_init(mgr, this);
char listen[256];
snprintf(listen, sizeof(listen), "udp://%d", _port);
nc = mg_bind(mgr, listen, ev_handler);
if (nc == NULL)
strerror(errno);
return errno;
group.imr_multiaddr.s_addr = inet_addr("0.0.0.0");
group.imr_interface.s_addr = inet_addr(INADDR_ANY);
if (setsockopt(nc->sock, IPPROTO_IP, IP_ADD_MEMBERSHIP, (char *)&group, sizeof(group)) < 0)
strerror(errno);
return errno;
while(true)
mg_mgr_poll(mgr, 0);
It works fine on windows, and I'm able to catch the messages.
BUT it fails on linux (Debian) on the setsockopt with error 22 (invalid argument).
I thought the mongoose library was crossplatform, is there something I might be missing here?
I read that the option IP_ADD_MEMBERSHIP might give problems, but I don't know how should I set the socket options to receive the broadcast.
c linux mongoose udp broadcasting
c linux mongoose udp broadcasting
asked Mar 21 at 14:53
diego.martinezdiego.martinez
8832621
8832621
add a comment |
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55283273%2fmongoose-broadcast-listener-unix%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55283273%2fmongoose-broadcast-listener-unix%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown