[E-devel] PATCH: ecore_con_url.
A small patch that does 3 things:- Allow https:// Obviously won't work if curl is not compiled with SSL support,perhaps something like this could be put in: int ecore_con_url_supports_https(){ curl_version_info_data *curl_info = curl_version_info(CURLVERSION_NOW); if(curl_info-features CURL_VERSION_SSL) return 1; else return 0;}- Add Header cb event: receive headers from http connections.Your callback will receive _one_ header each time called (as curl does) - Allow api users to supply arbitrary http-headers.cheers,Øystein Index: libs/ecore/src/lib/ecore_con/Ecore_Con.h === RCS file: /var/cvs/e/e17/libs/ecore/src/lib/ecore_con/Ecore_Con.h,v retrieving revision 1.18 diff -u -r1.18 Ecore_Con.h --- libs/ecore/src/lib/ecore_con/Ecore_Con.h30 Mar 2006 06:48:45 - 1.18 +++ libs/ecore/src/lib/ecore_con/Ecore_Con.h27 May 2006 11:21:06 - @@ -83,6 +83,7 @@ typedef struct _Ecore_Con_Event_Client_Data Ecore_Con_Event_Client_Data; typedef struct _Ecore_Con_Event_Server_Data Ecore_Con_Event_Server_Data; typedef struct _Ecore_Con_Event_Url_Data Ecore_Con_Event_Url_Data; + typedef struct _Ecore_Con_Event_Url_Header Ecore_Con_Event_Url_Header; typedef struct _Ecore_Con_Event_Url_Complete Ecore_Con_Event_Url_Complete; struct _Ecore_Con_Event_Client_Add @@ -125,6 +126,13 @@ void *data; int size; }; + + struct _Ecore_Con_Event_Url_Header + { + Ecore_Con_Url*url_con; + void *header; + int size; +}; struct _Ecore_Con_Event_Url_Complete { @@ -139,6 +147,7 @@ EAPI extern int ECORE_CON_EVENT_CLIENT_DATA; EAPI extern int ECORE_CON_EVENT_SERVER_DATA; EAPI extern int ECORE_CON_EVENT_URL_DATA; + EAPI extern int ECORE_CON_EVENT_URL_HEADER; EAPI extern int ECORE_CON_EVENT_URL_COMPLETE; EAPI int ecore_con_init(void); @@ -169,6 +178,8 @@ EAPI Ecore_Con_Url*ecore_con_url_new(const char *url); EAPI void ecore_con_url_destroy(Ecore_Con_Url *url_con); EAPI int ecore_con_url_url_set(Ecore_Con_Url *url_con, const char *url); + EAPI int ecore_con_url_header_add(Ecore_Con_Url *url_con, const char *header); + EAPI void ecore_con_url_header_free_all(Ecore_Con_Url *url_con); EAPI int ecore_con_url_send(Ecore_Con_Url *url_con, void *data, size_t length, char *content_type); EAPI int ecore_con_dns_lookup(const char *name, Index: libs/ecore/src/lib/ecore_con/ecore_con_private.h === RCS file: /var/cvs/e/e17/libs/ecore/src/lib/ecore_con/ecore_con_private.h,v retrieving revision 1.14 diff -u -r1.14 ecore_con_private.h --- libs/ecore/src/lib/ecore_con/ecore_con_private.h20 Mar 2006 07:45:58 - 1.14 +++ libs/ecore/src/lib/ecore_con/ecore_con_private.h27 May 2006 11:21:06 - @@ -87,6 +87,7 @@ CURL *curl_easy; char *url; struct curl_slist *headers; + Ecore_List *user_headers; Ecore_Fd_Handler *fd_handler; char active : 1; }; Index: libs/ecore/src/lib/ecore_con/ecore_con_url.c === RCS file: /var/cvs/e/e17/libs/ecore/src/lib/ecore_con/ecore_con_url.c,v retrieving revision 1.9 diff -u -r1.9 ecore_con_url.c --- libs/ecore/src/lib/ecore_con/ecore_con_url.c8 Jan 2006 02:37:50 - 1.9 +++ libs/ecore/src/lib/ecore_con/ecore_con_url.c27 May 2006 11:21:08 - @@ -44,11 +44,14 @@ static int _ecore_con_url_fd_handler(void *data, Ecore_Fd_Handler *fd_handler); static int _ecore_con_url_perform(Ecore_Con_Url *url_con); static size_t _ecore_con_url_data_cb(void *buffer, size_t size, size_t nmemb, void *userp); +static size_t _ecore_con_url_header_cb(void *buffer, size_t size, size_t nmemb, void *userp); static void _ecore_con_event_url_complete_free(void *data __UNUSED__, void *ev); static void _ecore_con_event_url_data_free(void *data __UNUSED__, void *ev); +static void _ecore_con_event_url_header_free(void *data __UNUSED__, void *ev); static int _ecore_con_url_process_completed_jobs(Ecore_Con_Url *url_con_to_match); int ECORE_CON_EVENT_URL_DATA = 0; +int ECORE_CON_EVENT_URL_HEADER = 0; int ECORE_CON_EVENT_URL_COMPLETE = 0; static CURLM *curlm = NULL; @@ -64,6 +67,7 @@ if (!ECORE_CON_EVENT_URL_DATA) { ECORE_CON_EVENT_URL_DATA = ecore_event_type_new(); + ECORE_CON_EVENT_URL_HEADER = ecore_event_type_new(); ECORE_CON_EVENT_URL_COMPLETE = ecore_event_type_new(); } @@ -76,7 +80,7 @@ if (!curlm) { FD_ZERO(_current_fd_set); - if (curl_global_init(CURL_GLOBAL_NOTHING)) + if (curl_global_init(CURL_GLOBAL_SSL)) {
Re: [E-devel] Re: E CVS: libs/evas mej
On Sunday, 28 May 2006, at 08:21:18 (+0900), Carsten Haitzler wrote: which modules? Definitely mem. It fails to build if the edb loader for evas isn't installed. I believe net also, but I fixed evas before trying it again, so I could be wrong. But mem definitely wouldn't build. Michael -- Michael Jennings (a.k.a. KainX) http://www.kainx.org/ [EMAIL PROTECTED] n + 1, Inc., http://www.nplus1.net/ Author, Eterm (www.eterm.org) --- What good is having someone who can walk on water if you don't follow in His footsteps? -- Unknown --- All the advantages of Linux Managed Hosting--Without the Cost and Risk! Fully trained technicians. The highest number of Red Hat certifications in the hosting industry. Fanatical Support. Click to learn more http://sel.as-us.falkag.net/sel?cmd=lnkkid=107521bid=248729dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Re: E CVS: libs/evas mej
On Sat, 27 May 2006 19:34:02 -0400 Michael Jennings [EMAIL PROTECTED] babbled: On Sunday, 28 May 2006, at 08:21:18 (+0900), Carsten Haitzler wrote: which modules? Definitely mem. It fails to build if the edb loader for evas isn't installed. I believe net also, but I fixed evas before trying it again, so I could be wrong. But mem definitely wouldn't build. hmmm - are you sure? [ 9:33AM ~/C/e/e_modules/mem ] grep -i edb * Binary file VeraMono.ttf matches and that .ttf match is just luck - so ignore that... [ 9:35AM ~/C/e/e_modules/net ] grep -i edb * Binary file VeraMono.ttf matches same... no .db files are included, it doesnt execute anything to make edb db files - it doesn't ship any and doesn't call any edb calls... what's up? i suspect this is bogus. are you sure it's not something else? Michael -- Michael Jennings (a.k.a. KainX) http://www.kainx.org/ [EMAIL PROTECTED] n + 1, Inc., http://www.nplus1.net/ Author, Eterm (www.eterm.org) --- What good is having someone who can walk on water if you don't follow in His footsteps? -- Unknown --- All the advantages of Linux Managed Hosting--Without the Cost and Risk! Fully trained technicians. The highest number of Red Hat certifications in the hosting industry. Fanatical Support. Click to learn more http://sel.as-us.falkag.net/sel?cmd=lnkkid=107521bid=248729dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)[EMAIL PROTECTED] 裸好多 Tokyo, Japan (東京 日本) --- All the advantages of Linux Managed Hosting--Without the Cost and Risk! Fully trained technicians. The highest number of Red Hat certifications in the hosting industry. Fanatical Support. Click to learn more http://sel.as-us.falkag.net/sel?cmd=lnkkid=107521bid=248729dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Re: E CVS: emu mej
On Sat, 27 May 2006 19:41:12 -0400 (EDT) Enlightenment CVS [EMAIL PROTECTED] wrote: The emu module kinda threw everything for a loop by having a separate binary, so I had to add some spec-fu to make an exception for it. I have no spec-fu, so I would like to know what's going on here. Fair enough that the emu modules spec file needed to change, but why did every other module need to change as well? signature.asc Description: PGP signature
Re: [E-devel] Re: E CVS: emu mej
On Sunday, 28 May 2006, at 12:39:48 (+1000), David Seikel wrote: I have no spec-fu, so I would like to know what's going on here. Fair enough that the emu modules spec file needed to change, but why did every other module need to change as well? Module spec files are auto-generated from a centralized template because of the enormously repetitive nature of module spec files. The decision was made to blindly populate all subdirectories to automatically incorporate new modules instead of requiring editing of some centralized list every time new modules appear. The downside to this approach is that every module shares the same template, differing only in module name and version. Really, the only file that changed per se is e_modules-TEMPLATE.spec.in in the e_modules/ directory, but in order to support independent building of each module, the generated .spec.in files are committed too. So far it's no big deal; just one little %if block. If that changes, though, we may need to revisit the spec issue. Michael -- Michael Jennings (a.k.a. KainX) http://www.kainx.org/ [EMAIL PROTECTED] n + 1, Inc., http://www.nplus1.net/ Author, Eterm (www.eterm.org) --- Feel your breath on my shoulder, and I know we couldn't get any closer. I don't want to act tough; I just want to fall in love as we move into the night.-- Peter Cetera and Crystal Bernard, (I Wanna Take) Forever Tonight --- All the advantages of Linux Managed Hosting--Without the Cost and Risk! Fully trained technicians. The highest number of Red Hat certifications in the hosting industry. Fanatical Support. Click to learn more http://sel.as-us.falkag.net/sel?cmd=lnkkid=107521bid=248729dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Re: E CVS: libs/evas mej
On Sunday, 28 May 2006, at 09:37:53 (+0900), Carsten Haitzler wrote: hmmm - are you sure? Absolutely positive. The build failed with a message about /usr/lib/evas/modules/loaders/edb/linux-gnu-i686/module.so not being able to load. That said, I just ran a fresh build of every single module after having removed the edb loader and saver modules. Worked fine. I'm at a loss, honestly. I guess the best thing to do now would be to disable edb again in evas, and if I run into problems again, we'll go from there. Michael -- Michael Jennings (a.k.a. KainX) http://www.kainx.org/ [EMAIL PROTECTED] n + 1, Inc., http://www.nplus1.net/ Author, Eterm (www.eterm.org) --- Have I told you today how much I love you? Yes, but you may continue to repeat it for as long as you like. -- President Sheridan and Delenn, Babylon Five --- All the advantages of Linux Managed Hosting--Without the Cost and Risk! Fully trained technicians. The highest number of Red Hat certifications in the hosting industry. Fanatical Support. Click to learn more http://sel.as-us.falkag.net/sel?cmd=lnkkid=107521bid=248729dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Re: E CVS: emu mej
On Sat, 27 May 2006 22:47:46 -0400 Michael Jennings [EMAIL PROTECTED] wrote: On Sunday, 28 May 2006, at 12:39:48 (+1000), David Seikel wrote: I have no spec-fu, so I would like to know what's going on here. Fair enough that the emu modules spec file needed to change, but why did every other module need to change as well? Module spec files are auto-generated from a centralized template because of the enormously repetitive nature of module spec files. The decision was made to blindly populate all subdirectories to automatically incorporate new modules instead of requiring editing of some centralized list every time new modules appear. The downside to this approach is that every module shares the same template, differing only in module name and version. Really, the only file that changed per se is e_modules-TEMPLATE.spec.in in the e_modules/ directory, but in order to support independent building of each module, the generated .spec.in files are committed too. So far it's no big deal; just one little %if block. If that changes, though, we may need to revisit the spec issue. Is this due to the emu_client script? That's just an example client script, and the only thing that will happen if it is not available on the installed system is that a dialog will popup complaining that it is missing. On the emu TODO is to have client programs referenced via .order files and .eaps instead of this hard coded one, then we can remove this one little %if block. signature.asc Description: PGP signature
Re: [E-devel] Re: E CVS: emu mej
On Sunday, 28 May 2006, at 13:15:21 (+1000), David Seikel wrote: Is this due to the emu_client script? Yep, sure is. emu is the only one with a /usr/bin/something being installed. That's just an example client script, and the only thing that will happen if it is not available on the installed system is that a dialog will popup complaining that it is missing. Unfortunately, it's installed by the make install stuff, so if RPM sees it in /usr/bin without being packaged, it will still fail. So we either have to include it or erase it; I figured the former was probably the right call. On the emu TODO is to have client programs referenced via .order files and .eaps instead of this hard coded one, then we can remove this one little %if block. That would be great. :) Michael -- Michael Jennings (a.k.a. KainX) http://www.kainx.org/ [EMAIL PROTECTED] n + 1, Inc., http://www.nplus1.net/ Author, Eterm (www.eterm.org) --- The Road I have travelled on is paved with good intentions. It's littered with broken dreams that never quite came true. -- Restless Heart, When She Cries --- All the advantages of Linux Managed Hosting--Without the Cost and Risk! Fully trained technicians. The highest number of Red Hat certifications in the hosting industry. Fanatical Support. Click to learn more http://sel.as-us.falkag.net/sel?cmd=lnkkid=107521bid=248729dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel