Commit Graph

136 Commits

Author SHA1 Message Date
Boris Faure d280b4b2dd emile: length is known, no need for strlen 2023-08-29 07:37:45 +01:00
Carsten Haitzler d1f1af054f emile/ecore-con - remove gnutls support since openssl3 is out
openssl3 should now solve licensing issues with openssl. there is no
good reason to keep gnutls support anymore especially since there just
isn't anyoen who wants to maintain that extra ifdef'd code (and that
code has some gotchas that don't match the full features of openssl
too). so this removed "code cruft" to maintain, complexity and
maintenance work as well as build complexity.
2022-08-12 09:33:17 +01:00
Carsten Haitzler faf9745538 emile - fix deprecated warning and move ssl func
TLSv1_server/client_method -> TLS_server/client_method

openssl is complaining about this. back to clean warning-free build.
2022-08-12 09:02:16 +01:00
Carsten Haitzler 0e22417f45 eet emile - cipher - add braces for if defines to be clear on order of op 2022-08-01 17:35:52 +01:00
orbea bdd5b244e6 Support LibreSSL 3.5.x
LibreSSL 3.5.x now works with the standard OpenSSL code paths.
2022-07-04 09:08:39 -07:00
Carsten Haitzler b0232b5e1d emile - handle possible invalid compress type more gracefully
check length return is < 0 and handle that.

@fix
2022-05-18 12:16:05 +01:00
Carsten Haitzler 43b41f2383 emile - disable warnings when they are wrong ifor new buffers
emile in these 2 cases allocates an empty uninitilised buffer that
will then be filled - gcc thinks we're passing uninit data to a func -
which is right but intended as it is later filled. disable this
warning for these segments of code.
2021-05-26 03:43:31 +01:00
Carsten Haitzler d6005e9df8 emile - dont check return of alloca as it is not defined to fail 2021-05-26 03:43:31 +01:00
Shinwoo Kim ab969c5915 eet, emile: safety++
Summary:
(1) EVP_MD_CTX_new could return NULL
(2) EVP_DigestUpdate returns 0 for failure.
  https://www.openssl.org/docs/man1.0.2/man3/EVP_DigestUpdate.html

Reviewers: raster, Hermet, cedric, devilhorns

Reviewed By: devilhorns

Subscribers: SPAM-roll99, devilhorns, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12237
2021-02-04 10:11:33 +09:00
Marcel Hollerbach 8e3606698e refactor build
libraries are split into deps, external deps, and pub deps.
Evas engines are refactored to use the predefined engine deps.

this is preparation work for efl-one.

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D11806
2020-05-27 11:06:46 +02:00
Stefan Schmidt 3ca9d72825 build: lib: harmonize the use of package_c_args in all libs
Add it to subprojects which are not using it and remove and old
ELEMENTARY_BUILD define we no longer use. This allows us to have a
central place in the main meson.build file to set this variable.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Reviewed-by: Vincent Torri <vincent.torri@gmail.com>
Reviewed-by: João Paulo Taylor Ienczak Zanette <joao.tiz@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D11854
2020-05-26 10:15:21 +02:00
Carsten Haitzler 63b5d81983 Revert "Fix EAPI definition by defining EFL_BUILD for each built DLL"
This reverts commit 3ade45cbc8.
2020-05-18 11:13:59 +01:00
Vincent Torri 3ade45cbc8 Fix EAPI definition by defining EFL_BUILD for each built DLL
Summary: EAPI must be defined to dllexport when building DLL, and to dllimport when using these DLL. To achieve this, define EFL_BUILD for each library and module, and set DLL_EXPORT unconditionally. Static library are and will be not supported

Test Plan: compilation

Reviewers: zmike, raster, jptiz

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11834
2020-05-18 09:51:48 +01:00
Xavi Artigas e7f4bc4c2a doxygen docs: Fix all invalid @param names
There were quite a few of these...
2020-04-20 12:24:41 +02:00
Wonki Kim 3cf0bdd599 emile: fix a potentional resource leaking.
'ctx' can be leaked in some case.
this pathc fixes it.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11368
2020-04-06 09:05:08 +02:00
Xavi Artigas 9c24c05458 doxygen: fix missing endcond tag 2020-02-28 12:05:26 +01:00
Wonki Kim 46f616828e emile: remove a improper free logic
BIO *b has freed improperly.
this patch removes the logic.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11367
2020-02-19 15:20:26 +01:00
Carsten Haitzler 6b04e5f215 fix jpeg loading which freed the wrong ptr
fixes T8497
@fix
2019-12-02 19:54:25 +00:00
Carsten Haitzler eea0e92c2c emile - use newer lz4 api instead of deprecated one 2019-08-07 11:44:05 +01:00
Xavi Artigas 68c530080b docs: Fix common misspellings in H files
Fixed all appearances of words from this list in H files:
https://en.wikipedia.org/wiki/Wikipedia:Lists_of_common_misspellings/For_machines
2019-04-02 13:28:48 +02:00
Mike Blumenkrantz 58fb597acc Revert "Emile: Move colorspaces to Efl.Gfx"
This reverts commit 0d41ad0c83.

stop defining legacy types to eo types!!!!
https://i.redd.it/95mmznk5wo021.gif

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8243
2019-03-08 12:06:20 -08:00
Vincent Torri f7c560c311 replace hton and ntoh family functions with ones defined in eina
Summary: This fixes especially the execution of edje_cc on Windows

Test Plan: execution of edje_cc

Reviewers: cedric, raster

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7834
2019-02-01 14:25:35 +00:00
Carsten Haitzler 3511b96448 emile+ tgv saver - stop using deprecated lz4 functions to remove warnings 2019-01-15 12:39:21 +00:00
Marcel Hollerbach e43f090265 cmake: remove!
This build was never complete and also was not maintained probebly.

It is also dropped in favour of meson which is cool, merged, works & is fast.

Differential Revision: https://phab.enlightenment.org/D7010
2018-12-20 20:07:26 +01:00
Vincent Torri 41f7ae6e49 emile - fix windows build
use evil and fix libjpeg boolean re-def.
2018-10-31 14:12:44 +00:00
Marcel Hollerbach 46d464e5bf here comes meson
a new shiny buildtool that currently completes in the total of ~ 4 min..
1 min. conf time
2:30 min. build time
Where autotools takes:
1:50 min. conf time
3:40 min. build time.

meson was taken because it went quite good for enlightenment, and is a traction gaining system that is also used by other mayor projects. Additionally, the DSL that is defined my meson makes the configuration of the builds a lot easier to read.

Further informations can be gathered from the README.meson

Right now, bindings & windows support are missing.

It is highly recommented to use meson 0.48 due to optimizations in meson
that reduced the time the meson call would need.

Co-authored-by: Mike Blumenkrantz <zmike@samsung.com>

Differential Revision: https://phab.enlightenment.org/D7012
Depends on D7011
2018-10-02 17:22:50 +02:00
Hermet Park 268d3fcef5 emile image: close file properly.
@fix
2018-07-18 14:26:16 +09:00
Hermet Park 820aca03ea emil: resolve possible memory leak.
Submitted-By-Off: JongMin Lee <jm105.lee@samsung.com>
2018-04-05 15:01:44 +09:00
Vincent Torri f5b01ac5ce all: Simplify definition of EAPI
This will help in the transition from Autotools to Meson. This has been
tested on Windows for which EFL_XXX_BUILD were first introduced.
2018-01-18 18:04:03 +09:00
Subodh Kumar c5e3196731 emile: comparing less than zero with unsigned interger.
Summary:
Unsigned integer should not be compared to less than zero.
@fix

Reviewers: cedric

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5270

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2017-10-09 16:38:28 -07:00
jiin.moon d23aca3c8e emile: unmap the memory for image file after decode.
Summary:
In case of emile, unmap the memory of the image file when the image file is closing.
But closing of image file happen when the image is flushed from the cache, so the
mapped memory of image file remain for long period of time with no benefit (If it is
in cache, it won't get decoded again). So I think we don't need to keep the mapped
memory of image file.

Test Plan: self

Reviewers: cedric, jpeg, jypark

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D5210

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-09-27 11:51:50 -07:00
Vincent Torri 0cdd501246 EFL For WIN32: Replace HAVE_EVIL define with _WIN32 2017-09-22 05:06:10 -05:00
Cedric BAIL f8a654f1aa emile: SSL state should fallthrough to avoid duplication of logic. 2017-06-05 12:07:57 -07:00
Cedric BAIL 7afbe91ca5 emile: fallthrough is legal here as we handle fallback case when caller doesn't know about GRY8. 2017-06-05 12:07:57 -07:00
Jaeun Choi 53e31eeede emile_image: add error handling code for ifd_offset value
Signed-off-by: JEONGHYUN YUN <jh0506.yun@samsung.com>
2017-04-06 15:34:53 +09:00
Cedric BAIL 5420ebaf32 emile: rename emile_image_register to emile_image_callback_set.
This fix ABI report according to discussion on the mailing list.
2017-02-27 15:05:35 -08:00
Hosang Kim 6f9df2bb3d emile: don't use APIs deprecated in openssl-1.1
Summary:
When openssl-1.1.0 is built with `--api=1.1 disable-deprecated`, use of
deprecated APIs leads to build failures.

X-Gentoo-Bug: 606628
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=606628

Subscribers: cedric, jpeg

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D4616

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-07 14:17:47 -08:00
Gustavo Sverzut Barbieri 364c5c4cd8 cmake: handle 'FindXXX.cmake' standard with 'find-XXX' libraries.
One can use virtual 'find-XXX' entries in LIBRARIES or
PUBLIC_LIBRARIES to use XXX_LIBRARIES and XXX_INCLUDE_DIR.
2017-02-01 12:25:43 -02:00
Marcel Hollerbach d4673c0740 cmake: emile is depending on efl
there is some .eot.h file included from the efl interfaces, so we need a
dependency here
2017-02-01 12:19:24 +01:00
Marcel Hollerbach 8dc1166eaa cmake: use the jpeg module of cmake to find the library
finding libjpeg can be a bit more complex, there are systems that are
not delivering a .pc for it. So we should just use the cmake module to
find it.
2017-02-01 12:18:33 +01:00
Gustavo Sverzut Barbieri 525d1e0629 cmake: add EFL_SUPPORT_LIB() and simplify/speedup its usage.
generate a static library for src/static_libs and use that as
LIBRARIES for the actual library, for those such as rg_etc that are
used multiple times will even speed up the final build by compiling
only once.

Although not used, they can be made into shared libraries that would
go inside /usr/lib/efl/support/v-1.19/libname.so
2017-01-27 12:52:14 -02:00
Gustavo Sverzut Barbieri b67acda0d6 cmake: add emile and EFL_OPTION_BACKEND()
Add emile and with that EFL_OPTION_BACKEND() to support choosing among
different backends for something, in emile's case it's crypto backend
(gnutls, openssl or none).
2017-01-26 14:23:24 -02:00
Carsten Haitzler 2842165415 openssl 1.1 build break fixes
this fixes building against openssl 1.1 since it broke api in various
ways by hiding structs and deprecating api's (this causes warnings not
breaks unlike the struct hiding). this adapts to these changes and
makes efl build again.

@fix
2017-01-04 17:47:38 +09:00
Cedric BAIL 0ca1d0eef2 emile: refactor color convertion/copy logic in jpeg data decoder. 2016-12-15 16:45:10 -08:00
Cedric BAIL e12d59e216 emile: reduce the amount of clobbered variable. 2016-12-15 11:17:34 -08:00
Sungtaek Hong 44716502fc emile_image: fix possible segmentation fault in AGRY88
Summary:
 - ptrag is set NULL and is allocated only when prop is rotated.
   but *ptrag = 0xFF00 | ptr[0]; without checking rotation.

Reviewers: jpeg, cedric, Hermet

Reviewed By: Hermet

Subscribers: conr2d

Differential Revision: https://phab.enlightenment.org/D4463
2016-12-07 13:42:46 +09:00
Cedric BAIL c8fef4a556 emile: add infrastructure for callback to request what to do with image.
First use of this infrastructure is to make JPEG decoding interruptible.
2016-12-06 16:34:40 -08:00
Marcel Hollerbach 07bb7ca282 emile: do not rely on the struct size
Summary:
in newer versions of openssl, most of the public structures are made
opaque. So we should use the openssl api to allocate this structure.

Since ctx is now a pointer we dont need opened anymore, so those vars
are replaced with ctx checks. ctx is always NULL'ed after a free

fix T4923

Reviewers: cedric, jpeg, stefan_schmidt

Reviewed By: jpeg, stefan_schmidt

Subscribers: stefan_schmidt, ManMower, jpeg

Maniphest Tasks: T4923

Differential Revision: https://phab.enlightenment.org/D4456
2016-12-05 11:54:53 +01:00
Simon Lees d7a2e8608b
Emile: use stronger ssl cipher
Follows on from 356a1aa87a emile
didn't exist when this work was done originally
2016-10-17 20:58:04 +10:30
Cedric BAIL cbfcfdf3e9 emile: fix typos. 2016-09-21 10:34:05 -07:00