If it would be because of memory, the std::string.replace() would not fix, would it? Everything is done in one function, I don't think this is the problem.
On 15.09.2014 19:11, gonzalo diethelm wrote: > That usually happens... Try to focus on the differences between your > short example and your real code. > > One point to focus on could be memory management: are you sure the > messages you are sending are actually surviving until they get sent? > A > simple wrong way to manage this would be putting your messages in an > automatic variable that gets overwritten when you leave the function > that sends the message. Another wrong way would be using a static > buffer for your messages, that gets overwritten with each message. > > HTH. > > -- > Gonzalo Diethelm > DCV Chile > >> -----Original Message----- >> From: [email protected] [mailto:zeromq-dev- >> [email protected]] On Behalf Of Dávid Kaya >> Sent: Monday, September 15, 2014 2:02 PM >> To: ZeroMQ development list >> Subject: Re: [zeromq-dev] ZMQ appends weird characters to message >> >> Well I tried to recreate the problem but it works as intended in my >> short >> example. I really don't know where could be the problem since I am >> doing it >> exactly the same way in my example as in my application. Maybe the >> problem is in the std::string, because when I use >> std::string.replace() to replace some characters in the URL then it >> works fine. >> But when I dont use it and append the URL to "success:" >> message right away, then it does not work. So maybe >> std::string.replace() somehow fixes the string when it rearranges >> it. >> The first problem with "login" was because I wasn't using size() in >> string >> constructor. >> >> David >> >> On 15.09.2014 17:56, gonzalo diethelm wrote: >> > Please create a short (as short as possible) example that shows >> this >> > symptom, and post it to the list. >> > >> > -- >> > Gonzalo Diethelm >> > DCV Chile >> > >> >> -----Original Message----- >> >> From: [email protected] [mailto:zeromq-dev- >> >> [email protected]] On Behalf Of Dávid Kaya >> >> Sent: Monday, September 15, 2014 12:39 PM >> >> To: ZeroMQ development list >> >> Subject: Re: [zeromq-dev] ZMQ appends weird characters to message >> >> >> >> Yes, I've printed that message. There can't be any NULL byte >> there. >> >> It is string >> >> "success:" appended with url. It is normal url like >> >> "http://example.org/path/to/jsp?lang=en_US?session="session id >> here". >> >> That session ID contains numbers, characters and dashes. >> >> >> >> >> >> On 15.09.2014 17:30, gonzalo diethelm wrote: >> >> > No, this is not a (known) limitation. Did you print exactly >> what >> >> you >> >> > are sending and what you are receiving? My guess is you are >> >> putting a >> >> > null byte in the middle of what you are sending. >> >> > >> >> > -- >> >> > Gonzalo Diethelm >> >> > DCV Chile >> >> > >> >> >> -----Original Message----- >> >> >> From: [email protected] [mailto:zeromq-dev- >> >> >> [email protected]] On Behalf Of Dávid Kaya >> >> >> Sent: Monday, September 15, 2014 12:21 PM >> >> >> To: [email protected] >> >> >> Subject: Re: [zeromq-dev] ZMQ appends weird characters to >> message >> >> >> >> >> >> Well, I've printed out size and it is correct. I've also >> >> shortened >> >> >> the message by 5 characters and it stopped cutting off the >> last >> >> >> characters (atleast I think it stopped, tried 15 times and it >> >> came >> >> >> correct every time). So I think the problem was in the length >> of >> >> the >> >> >> message. I don't know if it is a bug in ZMQ or system >> limitation >> >> of >> >> >> socket files? >> >> >> >> >> >> David >> >> >> >> >> >> >> >> >> On 15.09.2014 16:47, gonzalo diethelm wrote: >> >> >> > Good point. Forgot about the specific details for that C++ >> >> >> > constructor. The null byte should not be required. >> >> >> > >> >> >> > As Tom points out, you should print out what you are sending >> >> and >> >> >> > receiving (contents and length) and make sure it makes >> sense. >> >> >> > >> >> >> > HTH. >> >> >> > >> >> >> > -- >> >> >> > Gonzalo Diethelm >> >> >> > DCV Chile >> >> >> > >> >> >> >> -----Original Message----- >> >> >> >> From: [email protected] >> [mailto:zeromq-dev- >> >> >> >> [email protected]] On Behalf Of Tom Quarendon >> >> >> >> Sent: Monday, September 15, 2014 11:42 AM >> >> >> >> To: ZeroMQ development list >> >> >> >> Subject: Re: [zeromq-dev] ZMQ appends weird characters to >> >> message >> >> >> >> >> >> >> >> > You have two choices: >> >> >> >> > 1. Send the '\0' as part of the message (and set length >> to >> >> one >> >> >> >> more byte). >> >> >> >> > 2. Append a '\0' after receiving the message. >> >> >> >> >> >> >> >> Uh, why? >> >> >> >> string(static_cast<char*>(reply.data()),reply.size()); >> >> >> >> doesn't assume the string is null terminated. It constructs >> >> >> string >> >> >> >> from pointer and length. Isn't adding a in a null just >> going >> >> mask >> >> >> the >> >> >> >> real issue and make it look like the std::string only >> >> contained >> >> >> >> "login" when really it still contained the extra stuff as >> >> well. >> >> >> >> David, Do you know what reply.size() actually contains? >> Have >> >> you >> >> >> >> tried printing that out and comparing it to what you >> expect? >> >> >> >> >> >> >> >> _______________________________________________ >> >> >> >> zeromq-dev mailing list >> >> >> >> [email protected] >> >> >> >> http://lists.zeromq.org/mailman/listinfo/zeromq-dev >> >> >> > >> >> >> > >> >> >> > ----------------------------------------- >> >> >> > Declaración de confidencialidad: Este Mensaje esta destinado >> >> para >> >> >> el >> >> >> > uso de la o las personas o entidades a quien ha sido >> dirigido y >> >> >> puede >> >> >> > contener información reservada y confidencial que no puede >> ser >> >> >> > divulgada, difundida, ni aprovechada en forma alguna. El uso >> no >> >> >> > autorizado de la información contenida en este correo podrá >> ser >> >> >> > sancionado de conformidad con la ley chilena. >> >> >> > Si usted ha recibido este correo electrónico por error, le >> >> pedimos >> >> >> > eliminarlo junto con los archivos adjuntos y avisar >> >> inmediatamente >> >> >> al >> >> >> > remitente, respondiendo este mensaje. >> >> >> > >> >> >> > "Before printing this e-mail think if is really necesary". >> >> >> > Disclosure: This Message is to be used by the individual, >> >> >> individuals >> >> >> > or entities that it is addressed to and may include private >> and >> >> >> > confidential information that may not be disclosed, made >> public >> >> >> nor >> >> >> > used in any way at all. Unauthorized use of the information >> in >> >> >> this >> >> >> > electronic mail message may be subject to the penalties set >> >> forth >> >> >> by >> >> >> > Chilean law. >> >> >> > If you have received this electronic mail message in error, >> we >> >> ask >> >> >> you >> >> >> > to destroy the message and its attached file(s) and to >> >> immediately >> >> >> > notify the sender by answering this message. >> >> >> > _______________________________________________ >> >> >> > zeromq-dev mailing list >> >> >> > [email protected] >> >> >> > http://lists.zeromq.org/mailman/listinfo/zeromq-dev >> >> >> >> >> >> _______________________________________________ >> >> >> zeromq-dev mailing list >> >> >> [email protected] >> >> >> http://lists.zeromq.org/mailman/listinfo/zeromq-dev >> >> > >> >> > ----------------------------------------- >> >> > Declaración de confidencialidad: Este Mensaje esta destinado >> para >> >> el >> >> > uso de la o las personas o entidades a quien ha sido dirigido y >> >> puede >> >> > contener información reservada y confidencial que no puede ser >> >> > divulgada, difundida, ni aprovechada en forma alguna. El uso no >> >> > autorizado de la información contenida en este correo podrá ser >> >> > sancionado de conformidad con la ley chilena. >> >> > Si usted ha recibido este correo electrónico por error, le >> pedimos >> >> > eliminarlo junto con los archivos adjuntos y avisar >> inmediatamente >> >> al >> >> > remitente, respondiendo este mensaje. >> >> > >> >> > "Before printing this e-mail think if is really necesary". >> >> > Disclosure: This Message is to be used by the individual, >> >> individuals >> >> > or entities that it is addressed to and may include private and >> >> > confidential information that may not be disclosed, made public >> >> nor >> >> > used in any way at all. Unauthorized use of the information in >> >> this >> >> > electronic mail message may be subject to the penalties set >> forth >> >> by >> >> > Chilean law. >> >> > If you have received this electronic mail message in error, we >> ask >> >> you >> >> > to destroy the message and its attached file(s) and to >> immediately >> >> > notify the sender by answering this message. >> >> > _______________________________________________ >> >> > zeromq-dev mailing list >> >> > [email protected] >> >> > http://lists.zeromq.org/mailman/listinfo/zeromq-dev >> >> >> >> _______________________________________________ >> >> zeromq-dev mailing list >> >> [email protected] >> >> http://lists.zeromq.org/mailman/listinfo/zeromq-dev >> > _______________________________________________ >> > zeromq-dev mailing list >> > [email protected] >> > http://lists.zeromq.org/mailman/listinfo/zeromq-dev >> >> _______________________________________________ >> zeromq-dev mailing list >> [email protected] >> http://lists.zeromq.org/mailman/listinfo/zeromq-dev > > ----------------------------------------- > Declaración de confidencialidad: Este Mensaje esta destinado para > el uso de la o las personas o entidades a quien ha sido dirigido y > puede contener información reservada y confidencial que no puede > ser divulgada, difundida, ni aprovechada en forma alguna. El uso no > autorizado de la información contenida en este correo podrá ser > sancionado de conformidad con la ley chilena. > Si usted ha recibido este correo electrónico por error, le pedimos > eliminarlo junto con los archivos adjuntos y avisar inmediatamente > al remitente, respondiendo este mensaje. > > "Before printing this e-mail think if is really necesary". > Disclosure: This Message is to be used by the individual, > individuals or entities that it is addressed to and may include > private and confidential information that may not be disclosed, > made public nor used in any way at all. Unauthorized use of the > information in this electronic mail message may be subject to the > penalties set forth by Chilean law. > If you have received this electronic mail message in error, we ask > you to destroy the message and its attached file(s) and to > immediately notify the sender by answering this message. > _______________________________________________ > zeromq-dev mailing list > [email protected] > http://lists.zeromq.org/mailman/listinfo/zeromq-dev _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
