Re: 01.16.00 xmlrpc on windows ( utf related issues).

jayshankar nair <[email protected]> Wed, 14 Jan 2009 01:43:28 -0800 (PST)
Newsgroups gmane.text.xml.rpc.specification
Message-ID <[email protected]>
Hi,

It seems va_listx operation is not working  properly on windows.  The arguments are populated with the string "callback_method" in xmlrpc_build.c.  After the va_listx operation, its now something garbage on windows. 


Thanks,
Jay

--- On Tue, 1/13/09, jayshankar nair <[email protected]> wrote:
From: jayshankar nair <[email protected]>
Subject: Re: [xml-rpc] 01.16.00 xmlrpc on  windows ( utf related issues).
To: [email protected]
Date: Tuesday, January 13, 2009, 8:59 PM










    
            Hi Troy,



The same piece of code is working fine in linux. In windows its giving this particular problem.



Also if two-byte representation is needed, do i need to enable FLAGS in code. I mean in this case it would just set to FAULT and doesn't malloc for valuepp.



Please let me know.



Thanks,

Jay



--- On Tue, 1/13/09, Troy Farrell <troy.farrell@ ni.com> wrote:

From: Troy Farrell <troy.farrell@ ni.com>

Subject: Re: [xml-rpc] 01.16.00 xmlrpc on  windows ( utf related issues).

To: xml-rpc@yahoogroups .com

Date: Tuesday, January 13, 2009, 7:05 AM



Greetings Jay.



It seems by your log that you are passing invalid data to your method. 



UTF-8 can only represent values 0x00-0x7f in single-byte format.  When the 



value reaches0x80, two-byte representation is needed.  For example, 0x80 



is represented ("encoded") as 0xc280.  See the Wikipedia article on UTF0-8 



for more information:



http://en.wikipedia .org/wiki/ UTF-8



You may also find your server's documentation (including the rant on 



XML-RPC strings) useful:



http://xmlrpc- c.sourceforge. net/doc/libxmlrp c.html#stringtyp e



Cheers.



Troy



xml-rpc@yahoogroups .com wrote on 01/13/2009 04:23:05 AM:



> [image removed] 



> 



> [xml-rpc] 01.16.00 xmlrpc on windows ( utf related issues).



> 



> jayshankar nair 



> 



> to:



> 



> xml-rpc



> 



> 01/13/2009 04:23 AM



> 



> Sent by:



> 



> xml-rpc@yahoogroups .com



> 



> Please respond to xml-rpc



> 



> Hi,



> 



> I am currently testing my application on windows with xmlrpc 01.16.



> 00. I am getting utf related problems. This occurs when i try to to 



> call function xmlrpc::value_ struct const data(param1) . It fails in 



> the utf8 routine.



> 



> XMLRPC Logs are as below. PLease let me know your opinion.



> 



> Thanks,



> Jay



> 



> value.cpp:value_ struct:763



> value.cpp:value_ struct:778



> value.cpp:value_ struct:780



> value.cpp:value_ struct:791



> xmlrpc_data. c:xmlrpc_ INCREF:92 refcount= 1



> xmlrpc_data. c:xmlrpc_ INCREF:94 ref count = 2 addr = 2f63338



> value.cpp:value_ struct:793



> xmlrpc_data. c:xmlrpc_ DECREF:101



> xmlrpc_data. c:xmlrpc_ DECREF:105 addr=2f63338



> 106:refcount = 2



> 108:refcount = 1



> xmlrpc_data. c:xmlrpc_ DECREF:109



> xmlrpc_data. c:xmlrpc_ DECREF:113



> xmlrpc_data. c:xmlrpc_ INCREF:92 refcount= 1



> xmlrpc_data. c:xmlrpc_ INCREF:94 ref count = 2 addr = 2f0dde0



> xmlrpc_data. c:xmlrpc_ DECREF:101



> xmlrpc_data. c:xmlrpc_ DECREF:105 addr=2f0dde0



> 106:refcount = 2



> 108:refcount = 1



> xmlrpc_data. c:xmlrpc_ DECREF:109



> xmlrpc_data. c:xmlrpc_ DECREF:113



> value.cpp:operator= :136



> xmlrpc_data. c:xmlrpc_ INCREF:92 refcount= 1



> xmlrpc_data. c:xmlrpc_ INCREF:94 ref count = 2 addr = 2f0dde0



> xmlrpc_data. c:xmlrpc_ DECREF:101



> xmlrpc_data. c:xmlrpc_ DECREF:105 addr=2f0dde0



> 106:refcount = 2



> 108:refcount = 1



> xmlrpc_data. c:xmlrpc_ DECREF:109



> xmlrpc_data. c:xmlrpc_ DECREF:113



> xmlrpc_data. c:xmlrpc_ INCREF:92 refcount= 1



> xmlrpc_data. c:xmlrpc_ INCREF:94 ref count = 2 addr = 2f0dad8



> xmlrpc_data. c:xmlrpc_ DECREF:101



> xmlrpc_data. c:xmlrpc_ DECREF:105 addr=2f0dad8



> 106:refcount = 2



> 108:refcount = 1



> xmlrpc_data. c:xmlrpc_ DECREF:109



> xmlrpc_data. c:xmlrpc_ DECREF:113



> value.cpp:operator= :136



> xmlrpc_data. c:xmlrpc_ INCREF:92 refcount= 1



> xmlrpc_data. c:xmlrpc_ INCREF:94 ref count = 2 addr = 2f0dad8



> xmlrpc_data. c:xmlrpc_ DECREF:101



> xmlrpc_data. c:xmlrpc_ DECREF:105 addr=2f0dad8



> 106:refcount = 2



> 108:refcount = 1



> xmlrpc_data. c:xmlrpc_ DECREF:109



> xmlrpc_data. c:xmlrpc_ DECREF:113



> xmlrpc_data. c:xmlrpc_ INCREF:92 refcount= 1



> xmlrpc_data. c:xmlrpc_ INCREF:94 ref count = 2 addr = 2f50c00



> xmlrpc_data. c:xmlrpc_ DECREF:101



> xmlrpc_data. c:xmlrpc_ DECREF:105 addr=2f50c00



> 106:refcount = 2



> 108:refcount = 1



> xmlrpc_data. c:xmlrpc_ DECREF:109



> xmlrpc_data. c:xmlrpc_ DECREF:113



> value.cpp:operator= :136



> xmlrpc_data. c:xmlrpc_ INCREF:92 refcount= 1



> xmlrpc_data. c:xmlrpc_ INCREF:94 ref count = 2 addr = 2f50c00



> xmlrpc_data. c:xmlrpc_ DECREF:101



> xmlrpc_data. c:xmlrpc_ DECREF:105 addr=2f50c00



> 106:refcount = 2



> 108:refcount = 1



> xmlrpc_data. c:xmlrpc_ DECREF:109



> xmlrpc_data. c:xmlrpc_ DECREF:113



> xmlrpc_data. c:xmlrpc_ INCREF:92 refcount= 1



> xmlrpc_data. c:xmlrpc_ INCREF:94 ref count = 2 addr = 2efedb0



> xmlrpc_data. c:xmlrpc_ DECREF:101



> xmlrpc_data. c:xmlrpc_ DECREF:105 addr=2efedb0



> 106:refcount = 2



> 108:refcount = 1



> xmlrpc_data. c:xmlrpc_ DECREF:109



> xmlrpc_data. c:xmlrpc_ DECREF:113



> value.cpp:operator= :136



> xmlrpc_data. c:xmlrpc_ INCREF:92 refcount= 1



> xmlrpc_data. c:xmlrpc_ INCREF:94 ref count = 2 addr = 2efedb0



> xmlrpc_data. c:xmlrpc_ DECREF:101



> xmlrpc_data. c:xmlrpc_ DECREF:105 addr=2efedb0



> 106:refcount = 2



> 108:refcount = 1



> xmlrpc_data. c:xmlrpc_ DECREF:109



> xmlrpc_data. c:xmlrpc_ DECREF:113



> xmlrpc_data. c:xmlrpc_ INCREF:92 refcount= 1



> xmlrpc_data. c:xmlrpc_ INCREF:94 ref count = 2 addr = 2efeae0



> xmlrpc_data. c:xmlrpc_ DECREF:101



> xmlrpc_data. c:xmlrpc_ DECREF:105 addr=2efeae0



> 106:refcount = 2



> 108:refcount = 1



> xmlrpc_data. c:xmlrpc_ DECREF:109



> xmlrpc_data. c:xmlrpc_ DECREF:113



> value.cpp:operator= :136



> xmlrpc_data. c:xmlrpc_ INCREF:92 refcount= 1



> xmlrpc_data. c:xmlrpc_ INCREF:94 ref count = 2 addr = 2efeae0



> xmlrpc_data. c:xmlrpc_ DECREF:101



> xmlrpc_data. c:xmlrpc_ DECREF:105 addr=2efeae0



> 106:refcount = 2



> 108:refcount = 1



> xmlrpc_data. c:xmlrpc_ DECREF:109



> xmlrpc_data. c:xmlrpc_ DECREF:113



> 



> value.cpp:value_ struct:763



> value.cpp:value_ struct:778



> value.cpp:value_ struct:780



> value.cpp:value_ struct:784: 0



> xmlrpc_data. c:xmlrpc_ INCREF:92 refcount= 1



> xmlrpc_data. c:xmlrpc_ INCREF:94 ref count = 2 addr = 2f50c00



> value.cpp:value_ struct:788



> value.cpp:addToCStr uct:206



> xmlrpc_struct. c:xmlrpc_ struct_set_ value_n:444



> xmlrpc_struct. c:xmlrpc_ struct_set_ value_n:453



> xmlrpc_build. c:xmlrpc_ build_value: 401



> xmlrpc_build. c:xmlrpc_ build_value_ va:372



> xmlrpc_build. c:xmlrpc_ build_value_ va:378



> xmlrpc_build. c:xmlrpc_ build_value_ va:381



> xmlrpc_build. c:getValue: 264:s



> xmlrpc_build. c:getValue: 285



> xmlrpc_build. c:getString: 41



> xmlrpc_build. c:getString: 48



> xmlrpc_string. c:xmlrpc_ string_new_ lp:731



> xmlrpc_string. c:stringNew: 699



> xmlrpc_string. c:validateUtf: 577



> xmlrpc_string. c:validateUtf: 579



> value =c



> utf8.c:xmlrpc_ validate_ utf8:278



> utf8_data =c



> utf8.c:decode_ utf8:145 c



> utf8.c:decode_ utf8:146



> utf8.c:decode_ utf8:148



> utf8.c:decode_ utf8:150



> utf8.c:decode_ utf8:153



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = c



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = d



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = e



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = f



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = g



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = h



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = i



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = j



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = k



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = l



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = m



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = n



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = o



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = p



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = q



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = r



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = s



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = t



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = u



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = v



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = w



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = x



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = y



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = z



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = {



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = |



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = }



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = ~



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = ⌂



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:167



> utf8.c:decode_ utf8:160



> utf8.c:decode_ utf8:161



> char = Ç



> utf8.c:decode_ utf8:164



> utf8.c:decode_ utf8:172



> utf8.c:decode_ utf8:174



> utf8.c:decode_ utf8:181



> length = 0( fault occured here).



> utf8.c:decode_ utf8:266



> xmlrpc_string. c:stringNew: 701



> xmlrpc_build. c:xmlrpc_ build_value_ va:383



> xmlrpc_build. c:xmlrpc_ build_value: 405



> xmlrpc_struct. c:xmlrpc_ struct_set_ value_n:456



> xmlrpc_struct. c:xmlrpc_ struct_set_ value_n:459



> xmlrpc_data. c:xmlrpc_ DECREF:101



> xmlrpc_data. c:xmlrpc_ DECREF:105 addr=ffffffff( invalid address)



[Non-text portions of this message have been removed]



	

	 

	

	



	



	

	



[Non-text portions of this message have been removed]




      

    
    
	
	 
	
	








	


	
	


      

[Non-text portions of this message have been removed]


------------------------------------

Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/xml-rpc/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/xml-rpc/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:[email protected] 
    mailto:[email protected]

<*> To unsubscribe from this group, send an email to:
    [email protected]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/