Hi,

sorry for late response…

Ok, I see it breaks only in my tree because of some experiments. I can fix it 
by myself.

Yes, you are right about GET/POST methods, both can be used (just read RFC) but 
we have to
check content-type for POST in order to avoid parsing of large data or 
something like that.
For a form data RFC suggest: application/x-www-form-urlencoded (see: 
http://www.w3.org/TR/html401/interact/forms.html#h-17.13 
<http://www.w3.org/TR/html401/interact/forms.html#h-17.13>)

Please add check for content-type for POST and I would be more as happy to 
commit it.

Thanks in advance,
Alex


> Am 28.10.2015 um 12:44 schrieb Lamasuta, Franck, Vodafone Automotive 
> <[email protected]>:
> 
> Hi Alex,
>  
> Regarding your first comment:
> 1) The patch doesn't break compilation on my side…
> 2) I did change the call:
> -    *cgivars = parse_cgivars(client->url);
> +    *cgivars = parse_cgivars(client->method, client->url, 
> client->request->body);
> Please could you check again?
>  
>  
> Regarding your second comment:
> 1) I re-used parse_cgivars() on purpose. If we create 2 different functions, 
> about 75% of the code (the actual parsing) will be the same. So we should 
> create instead 3 functions: 1 to process the GET parameters, 1 to process the 
> POST parameters and a shared one to actually parse the variables.
> It seems over-complicated compared to the 4 lines I have added in 
> parse_cgivars().
> 2) Where did you see that CGI variables are only related to the GET method? 
> As far as I know, POST and GET are only 2 different methods to pass CGI 
> variables.
>  
> Regards,
> Franck
>  
>  
> From: Alexander Malysh [mailto:[email protected]] On Behalf Of 
> [email protected]
> Sent: Wednesday, October 28, 2015 10:58 AM
> To: Lamasuta, Franck, Vodafone Automotive
> Cc: [email protected]
> Subject: Re: [PATCH] Parsing of parameters in POST requests
>  
> Hi Franck,
>  
> thanks for your patch but I can’t accept it.
>  
> 1. It break compilation, because you change function declaration but not a 
> calls.
> 2. I don’t think that parse cgivars function is the right place to do it. CGI 
> vars are GET method
>  
> I think it’s better to implement new parse function and caller should decide 
> wich one to use.
>  
> Alex
>  
> Am 20.10.2015 um 17:41 schrieb Lamasuta, Franck, Vodafone Automotive 
> <[email protected] 
> <mailto:[email protected]>>:
>  
> Hi list,
>  
> When Kannel receives HTTP requests, it parses the parameters in the URL. This 
> is fine for GET or HEAD requests. But it isn't for POST requests as the 
> parameters are supposed to be supplied in the body.
>  
> One of our partners (Maxis, in Malaysia)  sends HTTP POST requests to submit 
> the delivery reports and Kannel can't process them correctly.
> Please find attached a patch to fix this issue.
> It allows Kannel to parse the parameters from the body when it's a POST and 
> from the URL, like before, for the other HTTP methods.
>  
> Regards,
> Franck
>  
> This message and any files or documents attached are strictly confidential or 
> otherwise legally protected. It is intended only for the individual or entity 
> named. If you are not the named addressee or have received this email in 
> error, please inform the sender immediately, delete it from your system and 
> do not copy or disclose it or its contents or use it for any purpose. Please 
> also note that transmission cannot be guaranteed to be secure or 
> error-free.<gwlib_http.c.diff>
>  
> This message and any files or documents attached are strictly confidential or 
> otherwise legally protected. It is intended only for the individual or entity 
> named. If you are not the named addressee or have received this email in 
> error, please inform the sender immediately, delete it from your system and 
> do not copy or disclose it or its contents or use it for any purpose. Please 
> also note that transmission cannot be guaranteed to be secure or error-free.

Reply via email to