Commit Graph

608 Commits

Author SHA1 Message Date
Przemysław Czerpak
437aabe97f 2025-12-10 17:00 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbssl/d2i.c
    * use HB_SSL_CONST instead of explicit const for some ancient (<0.9.8)
      OpenSSL versions
2025-12-10 17:00:13 +01:00
Przemysław Czerpak
24b2f28431 2025-12-10 16:29 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbssl/evpmd.c
  * contrib/hbssl/hbssl.h
    * moved hb_EVP_MD_ptr_to_id() function from static to public area

  * contrib/hbssl/hbssl.hbx
  * contrib/hbssl/hbssl.hbm
  + contrib/hbssl/d2i.c
    * added new functions to extract asynchronous keys and certificates
      from DER data:
         D2I_PUBKEY( <cDER> ) -> <pEVPKey>
         D2I_RSAPUBLICKEY( <cDER> ) -> <pRSAKey>
         D2I_X509( <cDER> ) -> <pX509Cert>

  * contrib/hbssl/hbssl.hbx
  * contrib/hbssl/evppkey.c
    + added new functions to get/set RSA asymmetric keys parameters
      encapsulated in EVP_PKEY structures:
         EVP_PKEY_CTX_get_RSA_padding()
         EVP_PKEY_CTX_set_RSA_padding()
         EVP_PKEY_CTX_get_RSA_OAEP_md()
         EVP_PKEY_CTX_set_RSA_OAEP_md()
         EVP_PKEY_CTX_get_RSA_MGF1_md()
         EVP_PKEY_CTX_set_RSA_MGF1_md()

  * src/common/hbdate.c
    * accept up to 9 fractional digits (nanoseconds) in timestamp strings
      though only first three ones (milliseconds) are significant.
      Recently some tools begin to generate such timestamp values and
      Harbour had problems with decoding them correctly.

  * src/compiler/hbmain.c
    + allow to pass file name for source code compiled by hb_compileFromBuf()
      It works like in all other versions of hb_compile*() functions - it's
      enough to pass it as argument without option prefix (option prefix
      is "-" on all platforms and also "/" on DOS, OS2, MS-Win).
      Please remember that first parameter after control ones is used as
      compiler name in generated output messages regardless of its option
      prefix.
2025-12-10 16:29:20 +01:00
Aleksander Czajczynski
f4dda9a302 2025-10-21 13:20 UTC+0200 Aleksander Czajczynski (hb fki.pl)
* contrib/hbssl/hbssl.hbc
    ! actually target VS 2017 for libcrypto, libssl

  * utils/hbmk2/hbmk2.prg
    ! slight rework of MSVC version detection, so it actually operates
      with empty cPath_CompC variable

    * also try to discover version number of future MSVC releases

    * with Zig building GUI applications on Windows, hbmk2 will
      now pass -Wl,/subsystem:windows to the linker
2025-10-21 13:20:05 +02:00
Aleksander Czajczynski
349a0167d5 2025-10-20 17:42 UTC+0200 Aleksander Czajczynski (hb fki.pl) [ci skip]
* contrib/hbssl/hbssl.hbc
    ! actually lib* prefix should stay on win/msvc platform
      OpenSSL builds. Thanks to Mario H. Sabado for testing
      and feedback.
2025-10-20 17:43:30 +02:00
Aleksander Czajczynski
1b105c2d3d 2025-10-20 10:47 UTC+0200 Aleksander Czajczynski (hb fki.pl)
* .github/workflows/windows-ci.yml
    * encourage to test OpenSSL

  * contrib/hbssl/hbssl.hbc
    * treat Microsoft Visual Studio 2017 or newer can use
      the latest OpenSSL lib. That's very loose approximation,
      but hopefully better than before. If you are using such
      compiler please update your OpenSSL library.

    % deduplicated the rules, leftovers from old static "_s" suffixing
2025-10-20 10:46:48 +02:00
Aleksander Czajczynski
d42d81d605 2025-10-19 22:12 UTC+0200 Aleksander Czajczynski (hb fki.pl)
* contrib/hbssl/hbssl.h
  * contrib/hbssl/hbssl.hbm
  * contrib/hbssl/ssl.c
    ! HB_OPENSSL_HAS_APPLINK was never checked,
      defining HB_OPENSSL_NO_APPLINK didn't do anything

    * make current OpenSSL 3.6.0 build under fresh MSYS2
      shell. MSYS2 does not distribute applink.c, claiming
      MingGW C runtime is safe for operation without it.
      Have to define HB_OPENSSL_NO_APPLINK and additional
      workaround for lacking __int64 type when including
      ssl.h. If you need similar workround outside of
      MSYS2 shell, setenv: HB_USER_CFLAGS=-DHB_OPENSSL_MSYS

      packages needed: openssl-devel (for headers)
                       mingw-w64-x86_64-openssl (for libs)
                       mingw-w64-aarch64-openssl

  * contrib/hbssl/hbssl.hbc
    * using Clang or Zig compiler on Windows, build will
      now reference libssl and libcrypto instead of old
      ssleay32/libeay32 pair when linking.

  * config/win/zig.mk
    % unnecessary check
2025-10-19 22:12:22 +02:00
Przemysław Czerpak
d677cbb1e9 2025-09-16 13:16 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbcurl/core.c
    ! pacified warning
2025-09-16 13:16:11 +02:00
Przemysław Czerpak
9c8cd237d7 2025-09-10 09:08 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbbmp/core.c
    ! pacified BCC warnings
2025-09-10 09:08:26 +02:00
Przemysław Czerpak
dbfbc756d7 2025-09-09 19:55 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbbmp/core.c
    ! pacified BCC warnings

  * src/vm/macro.c
    * minor modification to test if it can pacify false warning in recent GCC
2025-09-09 19:55:30 +02:00
Przemysław Czerpak
1da71cd5eb 2025-09-09 17:38 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbmlzo/3rd/minilzo/README
  * contrib/hbmlzo/3rd/minilzo/lzoconf.h
  * contrib/hbmlzo/3rd/minilzo/lzodefs.h
  * contrib/hbmlzo/3rd/minilzo/minilzo.c
  - contrib/hbmlzo/3rd/minilzo/minilzo.diff
  * contrib/hbmlzo/3rd/minilzo/minilzo.h
  * contrib/hbmlzo/3rd/minilzo/minilzo.hbp
    * updated to version 2.10
2025-09-09 17:38:39 +02:00
Przemysław Czerpak
aa81797e35 2025-09-09 16:36 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/3rd/png/LICENSE
  * src/3rd/png/Makefile
  * src/3rd/png/png.c
  * src/3rd/png/png.diff
  * src/3rd/png/png.h
  * src/3rd/png/pngconf.h
  * src/3rd/png/pngdebug.h
  * src/3rd/png/pngerror.c
  * src/3rd/png/pngget.c
  * src/3rd/png/pnginfo.h
  * src/3rd/png/pnglconf.h
  * src/3rd/png/pngmem.c
  * src/3rd/png/pngpread.c
  * src/3rd/png/pngpriv.h
  * src/3rd/png/pngread.c
  * src/3rd/png/pngrio.c
  * src/3rd/png/pngrtran.c
  * src/3rd/png/pngrutil.c
  * src/3rd/png/pngset.c
  * src/3rd/png/pngstru.h
  * src/3rd/png/pngtrans.c
  * src/3rd/png/pngwio.c
  * src/3rd/png/pngwrite.c
  * src/3rd/png/pngwtran.c
  * src/3rd/png/pngwutil.c
    * updated to version 1.6.50

  * contrib/hbmlzo/3rd/minilzo/minilzo.c
  + contrib/hbmlzo/3rd/minilzo/minilzo.diff
    ! fixed compilation with ISO C++ 17 compilers
2025-09-09 16:36:53 +02:00
Przemysław Czerpak
c4b2a030c4 2025-08-29 12:49 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbbmp/core.c
  * contrib/hbbmp/hbbmp.ch
  * contrib/hbbmp/hbbmp.h
  * contrib/hbbmp/hbbmp.hbx
    + added new PRG functions:
         hb_bmp_frombitmap( <cBitMap>, <nAlign>, <nWidth>, <nHeight>, ;
                            [<nDepth>=1], [<nDPI>=72], [<aPalette>], ;
                            [@<nError>] ) -> <pBMP> | NIL
         hb_bmp_colorreset( <pBMP> )

  * contrib/hbct/dattime3.c
    ! struct timespec initialization

  * contrib/hbplist.txt
    + added hbbmp library

  * contrib/hbzebra/coredraw.c
  * contrib/hbzebra/hbzebra.hbx
    + added new PRG function:
         hb_zebra_getbitmap( <hZebra>, <nAlign>=8, <lBottomUp>=.F., ;
                             @<nWidth>, @<nHeight>, <nScaleX>, <nScaleY>, ;
                             <nBorder> ) -> <cBitMap> | NIL

  * contrib/hbzebra/tests/bmp.prg
    + added example for much faster BMP creation using hb_zebra_getbitmap() and
      hb_bmp_frombitmap() functions

  * src/rtl/filebuf.c
    ! casting

  * src/vm/extrap.c
    * allocate stack buffer dynamically, in new Linux version IGSTKSZ is
      defined as sysconf( _SC_SIGSTKSZ ) so it cannot be used as legal size
      for static arrays
2025-08-29 12:49:40 +02:00
Przemysław Czerpak
e679f6f8d6 2025-08-23 18:49 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbbmp/core.c
    ! fixed copy & past typos reported by Grigory Filatov. Thanks a lot.
2025-08-23 18:49:07 +02:00
Przemysław Czerpak
8319837387 2025-08-22 21:50 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
+ contrib/hbbmp/core.c
  + contrib/hbbmp/hbbmp.ch
  + contrib/hbbmp/hbbmp.h
  + contrib/hbbmp/hbbmp.hbc
  + contrib/hbbmp/hbbmp.hbp
  + contrib/hbbmp/hbbmp.hbx
  + contrib/hbbmp/readme.txt
  + contrib/hbbmp/tests/hbbmptst.prg
  + contrib/hbbmp/tests/hbmk.hbm
    + added new BMP image library for Harbour
    ; HBBMP is small library for Harbour dedicated to create and modify
      BMP images. It has not any 3rd party libs dependencies.
      See readme.txt for more information

  + contrib/hbzebra/tests/bmp.prg
    + added example code which uses HBBMP as backend for HBZEBRA and
      creates BMP images with generated barcodes.
2025-08-22 21:50:57 +02:00
Przemysław Czerpak
188c206440 2025-08-22 12:00 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbzebra/coredraw.c
  * contrib/hbzebra/hbzebra.hbx
    + added new PRG function:
         hb_zebra_getsize( <hZebra>, @<nWidth>, @<nHeight> ) -> <nError>
      it calculates size in points of the created barcode and returns 0 on
      success or error code

  + contrib/hbzebra/tests/gtgfx.prg
    + borrowed from Viktor's fork, thanks
      2014-09-18 22:32 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
       + added on-screen barcode example, created by elch
         (with some minor cleanups)
         https://groups.google.com/d/msg/harbour-users/_Wht51JZGgE/ZXyvaJNH9ggJ
         feb4fc0e20

  * contrib/sddoci/core.c
    * map ostrlen() to strlen() or wcslen() in OCI_CHARSET_UNICODE builds
    ; TOFIX: this library uses wchar_t for unicode strings, it means that
             in *nixes where wchar_t is 32-bit integer mapping to Harbour
             HB_WCHAR is wrong and has to be fixed

  * include/hbapifs.h
  * src/harbour.def
  * src/rtl/filebuf.c
   + added new C function:
         HB_BOOL hb_fileSave( const char * pszFileName,
                              const void * buffer, HB_SIZE nSize );

  * include/harbour.hbx
  * src/harbour.def
  * src/rtl/vfile.c
    + added new PRG function:
         hb_vfSave(  <cFileName>, <cFileBody> ) --> <lOK>

  * src/rtl/vfile.c
    * set FError() code in hb_vfLoad()
2025-08-22 12:00:07 +02:00
Przemysław Czerpak
1b633cd242 2025-08-17 18:27 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/gtqtc/gtqtc.h
  * contrib/gtqtc/gtqtc1.cpp
    + added support for disabling title and frames of console window by
         hb_gtInfo( HB_GTI_WINTITLE, <lNoFrame> )

  * src/rtl/transfrm.c
    ! fixed bug in "@S<n>" transformation when multibyte CDP is used
2025-08-17 18:27:35 +02:00
Aleksander Czajczynski
57c06eb936 2025-07-19 19:44 UTC+0200 Aleksander Czajczynski (hb fki.pl)
* contrib/hbhpdf/core.c
    + HPDF_GetPageByIndex( hDoc, nIndex ) --> hPage / NIL
      suggested by Luigi Ferraris

  * contrib/hbhpdf/tests/harupdf.prg
    + test the above (disabled by default)

  * README.md
    * updated CI badge(s) to GitHub Actions - they also cover
      the strict compilation mode, definitions are currently
      located in the same file as normal

    ! cleaned up links, mostly in tools section, some were
      broken, for others switched to https where applicable

    * mention HB_CCPREFIX= support for clang

  * contrib/hbdoc/hbdoc.prg
  * contrib/hbformat/utils/hbformat.prg
  * contrib/hbnetio/utils/hbnetio/hbnetio.prg
  * package/harbour.mft
  * package/harbour.rc
  * src/compiler/hbusage.c
  * utils/hbi18n/hbi18n.prg
  * utils/hbtest/hbtest.prg
    * bumped copyright year to 2025
2025-07-19 19:44:04 +02:00
Aleksander Czajczynski
3148b2f681 2025-07-10 14:04 UTC+0200 Aleksander Czajczynski (hb fki.pl)
* contrib/hbpost.hbm
    ! fix missing contrib/*/tests/files when using "make install"
      and HB_INSTALL_PREFIX.
      Thanks Jose Quintas for reporting (issue #310)
2025-07-10 14:04:06 +02:00
Aleksander Czajczynski
a5c88273b4 2025-07-05 20:20 UTC+0200 Aleksander Czajczynski (hb fki.pl)
+ config/wasm/global.mk
  + config/wasm/libs.mk
  + config/wasm/emcc.mk
  * utils/hbmk2/hbmk2.prg
  * contrib/hbrun/hbrun.hbp
    + add basic support for build Harbour into JS/WebAssembly using
      emscripten, using these settings:
        HB_PLATFORM=wasm HB_COMPILER=emcc HB_BUILD_3RDEXT=no

    * {abstr} is now a hbmk2 keyword to possibly group all
      toolsets similar in flavour: WASI/clang, JS/emscripten
      These most likely will be targeting plaforms which are not
      full operating-systems, they are also commonly qualified as
      sandbox solutions.

    * introduced __PLATFORM__WASM and __PLATFORM__ABSTRACT .prg defines

  * utils/hbmk2/hbmk2.prg
    + allow to specify hb_ProgName() value at build-time for platforms
      where the function cannot return a meaningful value (f.e.
      JS/WebAssembly)
    ; TODO: Add support for passing hb_ProgName() value command-line
            parameter, f.e. `--hb:self=hbrun`

  * config/global.mk
  * include/hbsetup.h
    * consider abstract/emscripten targets similar to linux-like

  * src/rtl/arc4.c
    ! fix to build under emscripten (which is assumed to be a
      linux-like environment)

  ; though platform/compiler names are not currently compatible
    with origin, this WebAssembly platform support was guided by
    Harbour 3.4:
    2017-06-09 01:10 UTC Viktor Szakats (vszakats users.noreply.github.com)
    as usual Viktor was here before, many thanks!

  ; example project, how to make a multi-platform GUI application which
    also targets WebAssembly, can be found here:
    https://github.com/alcz/harbour-cimgui-sokol-starterkit/
2025-07-05 20:20:38 +02:00
Przemysław Czerpak
81be99f647 2025-03-25 13:54 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbcurl/core.c
    ! pacified warnings

  * contrib/hbssl/ssl.c
  * contrib/hbssl/sslctx.c
    ! use 64-bit integers in SSL_[CTX]_[s|g]et_options() for OpenSSL >= 3.0
2025-03-25 13:54:05 +01:00
Aleksander Czajczynski
1a4c4e6b43 2025-02-21 11:16 UTC+0100 Aleksander Czajczynski (hb fki.pl)
* contrib/hbcurl/hbcurl.hbp
    + added Windows architecture specific libcurl names:
      libcurl-x64.dll, libcurl-arm64.dll as suggested
      by @carles9000 in #382
2025-02-21 11:16:08 +01:00
FiveTech Software
e44996d076 required explicit cast 2025-02-11 04:18:39 +01:00
Przemysław Czerpak
91e06d0ff1 2025-02-03 12:26 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbdefs.h
  * contrib/sddsqlt3/core.c
    - removed HB_WATCOM_64BUG macro - new versions of OW 2.0 supports 64bit
      integers in preprocessor directives - Many thanks to Aleksander who
      reported the problem on OpenWatcom V2 forum
    + added test for 64bit support in C preprocessor suggested by Aleksander

  * .github/workflows/windows-ci.yml
    * minor simplification
2025-02-03 12:26:02 +01:00
Aleksander Czajczynski
f39adf0370 2025-02-03 10:50 UTC+0100 Aleksander Czajczynski (hb fki.pl)
* contrib/hbcurl/core.c
    * formatting, use HB_IT_EVALITEM instead ( HB_IT_BLOCK | HB_IT_SYMBOL )
2025-02-03 10:50:33 +01:00
Aleksander Czajczynski
af085af261 2025-02-03 10:18 UTC+0100 Aleksander Czajczynski (hb fki.pl)
* contrib/hbcurl/core.c
    ! reverted static keyword

  * ChangeLog.txt
    ! formatting
2025-02-03 10:17:58 +01:00
Antonio Linares
a6567d2061 HB_CURLOPT_WRITEFUNCTION implemented support 2025-02-03 09:10:08 +01:00
Przemysław Czerpak
7ee496b5f8 2025-01-30 17:58 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/3rd/sqlite3/sqlite3.c
    * for GCC >= 14 builds added
         #pragma GCC diagnostic ignored "-Wstringop-overread"

  * contrib/3rd/sqlite3/sqlite3.hbp
    * removed
         -cflag=-Wno-stringop-overread
      used in all GCC builds when HB_BUILD_TEST='strict'

  * contrib/3rd/sqlite3/sqlite3.diff
    * regenerated
2025-01-30 17:58:22 +01:00
Przemysław Czerpak
06d4e4c6ae 2025-01-30 16:19 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbcurl/core.c
    ! casting

  * include/hbcompdf.h
    * removed unnecassary parenthesies and indenting

  * src/rtl/errint.c
    * added
         #pragma GCC diagnostic ignored "-Wnull-dereference"

  * src/vm/dlmalloc.c
    - removed
         #pragma GCC diagnostic ignored "-Wnull-dereference"

  * src/vm/fm.c
    + added
         #pragma clang diagnostic ignored "-Wgnu-null-pointer-arithmetic"
         #pragma GCC diagnostic ignored "-Warray-bounds"
         #pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
         #pragma GCC diagnostic ignored "-Walloc-size"
2025-01-30 16:19:59 +01:00
Przemysław Czerpak
793bd0c4c7 2025-01-30 04:23 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbzebra/datamtrx.c
    * added '#pragma GCC diagnostic ignored "-Warray-bounds"'
      to disable GCC 12, 13 and 14 false warnings about array bounds for
      static constant data

  * contrib/hbzebra/hbzebra.hbp
    * removed -Wno-error=array-bounds C compiler parameter used in all GCC
      builds
2025-01-30 04:23:31 +01:00
Przemysław Czerpak
db3379db21 2025-01-30 03:56 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbzebra/datamtrx.c
  * contrib/sddoci/core.c
    * reverted modifications committed by mistake
2025-01-30 03:56:27 +01:00
Przemysław Czerpak
e66aab7eff 2025-01-30 02:48 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/sddsqlt3/core.c
  * include/hbdefs.h
  * src/compiler/gencc.c
  * src/rtl/abs.c
  * src/vm/hvm.c
    * added workarounds for OpenWatcom 2.0 bug in 64bit expressions used
      in #[el]if statements
2025-01-30 02:48:48 +01:00
Przemysław Czerpak
1d0c512822 2025-01-29 13:50 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbssl/bio.c
    ! respect OPENSSL_NO_SOCK macro

  * contrib/hbssl/bio.c
  * contrib/hbssl/err.c
  * contrib/hbssl/evp.c
  * contrib/hbssl/pem.c
    * disabled deprecated functions which do nothinng in OpenSSL 3.0

  * src/rtl/filesys.c
  * src/rtl/hbcom.c
  * src/rtl/hbproces.c
  * src/rtl/hbsocket.c
  * src/rtl/net.c
  * src/rtl/netusr.c
  * src/vm/dynlibhb.c
    * updated for OpenWatcom 2.0 builds
2025-01-29 13:50:06 +01:00
Przemysław Czerpak
a8117990d8 2025-01-28 13:46 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbssl/hbssl.h
  * contrib/hbssl/evppkey.c
  * contrib/hbssl/rsa.c
    * reenabled hb_RSA_par_remove() for old OpenSSL() versions (<=0.9.6) which
      do not support RSA_up_ref()

  * contrib/hbssl/ssl.c
    ! use
         x509 = X509_dup( x509 );
         X509_check_purpose( x509, -1, 0 );
      instead of
         X509_up_ref( x509 );
      in OpenSSL versions prior 0x10100000L - they do not support X509_up_ref()

  * contrib/hbssl/x509.c
    * check passed parameters more strictly
    * return NIL when X509 certificate cannot be allocated/accessed
2025-01-28 13:46:38 +01:00
Przemysław Czerpak
08819f56f2 2025-01-28 12:23 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbssl/bio.c
    ! do not leave dummy BIO declaration for OpenSSL < 1.1.0
2025-01-28 12:23:23 +01:00
Przemysław Czerpak
8013782a89 2025-01-28 12:01 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbssl/bio.c
    ! use BIO_ADDR* in OpenSSL >= 1.1.0 and do not use it in LibreSSL
2025-01-28 12:01:47 +01:00
Przemysław Czerpak
f5a3c980fc 2025-01-28 11:34 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbssl/hbssl.hbx
  * contrib/hbssl/bio.c
    ! fixed BIO_set_conn_int_port() to work with OpenSSL >= 1.1
      (emulation with BIO_set_conn_port())
    ! fixed BIO_get_conn_ip() to work with OpenSSL >= 1.1
      (emulation with BIO_get_conn_address() and BIO_ADDR_hostname_string())
    + added BIO_get_conn_address(), it returns HB_SOCKET compatible array
      with address

  * contrib/hbssl/hbssl.hbx
  * contrib/hbssl/sslctx.c
    + added new function SSL_CTX_use_RSAPrivateKey()
    ! respect OPENSSL_NO_RSA macro in other SSL_CTX_use_RSA*() functions

  * contrib/hbssl/evp.c
    ! use EVP_CIPHER_key_length() and EVP_CIPHER_iv_length() in
      EVP_BytesToKey() to detect the exact key and iv length.

  * contrib/hbssl/hbssl.h
  * contrib/hbssl/evppkey.c
  * contrib/hbssl/rsa.c
    * removed hb_RSA_par_remove() function, use RSA_up_ref() instead

  * contrib/hbssl/hbssl.h
  * contrib/hbssl/x509.c
  * contrib/hbssl/pem.c
  * contrib/hbssl/ssl.c
    * removed 2-nd parameter ( HB_BOOL fRelease ) from hb_X509_ret(),
      use X509_up_ref() instead

  * contrib/hbssl/pem.c
    * respect OPENSSL_NO_DSA, OPENSSL_NO_DH and OPENSSL_NO_RSA macros

  * contrib/hbssl/ssl_sock.c
    * added casting to pacify SSL_set_fd() warning and updated link with
      description of the problem
2025-01-28 11:34:21 +01:00
Przemysław Czerpak
867b220bf4 2025-01-26 09:57 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/3rd/sqlite3/sqlite3.hbp
    * use -Wno-unknown-warning-option also in GCC MacOSX builds
2025-01-26 09:57:37 +01:00
Przemysław Czerpak
a75901b482 2025-01-26 09:37 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* .github/workflows/vm1-ci.yml
    * reenabled freebsd builds
    * be sure N_CPUS is always set
    * show compiler version before build

  * contrib/3rd/sqlite3/sqlite3.hbp
    * enable -Wno-unknown-warning-option only for CLANG - older GCC versions
      does not like it
    * use -Wno-stringop-overread instead of -Wno-error=stringop-overread,
      Unlike Wno-error=* the unknown -Wno-* options are ignored by most of
      old GCC compilers
2025-01-26 09:37:35 +01:00
Przemysław Czerpak
856c70d197 2025-01-25 17:14 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbssl/bio.c
  * contrib/hbssl/evpciph.c
  * contrib/hbssl/evpenc.c
  * contrib/hbssl/evpmd.c
  * contrib/hbssl/ssl.c
    * updated to compile with newer versions of LibreSSL
2025-01-25 17:14:45 +01:00
Przemysław Czerpak
c114c98743 2025-01-25 12:08 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbcurl/core.c
    ! fixed curl_easy_getinfo( <curl>, CURLINFO_CERTINFO, <arg> ) call. The
      argument should be 'struct curl_certinfo **' not 'struct curl_slist **'
2025-01-25 12:08:20 +01:00
Przemysław Czerpak
d59d6d69db 2025-01-25 11:14 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbcurl/core.c
    ! declare buffer for CURLOPT_ERRORBUFFER as 'char *' instead of
      'unsigned char *', the exact buffer type is chcked in typecheck-gcc.h
      and 'unsigned char *' does not pass this test
    ; QUESTION:
      Why curl_easy_setopt( <pCurl>, HB_CURLOPT_ER_BUFF_SETUP, [<nBufSize>] )
      accepts <nBufSize> parameter?
      Buffer smaller then CURL_ERROR_SIZE means GPF and larger waste of memory.
      The only acceptable value for <nBufSize> is CURL_ERROR_SIZE.
      The allocate buffer should be initialized with '\0' otherwise we will
      have other GPF trap when user call curl_easy_er_buff_get() before any
      error is set. This bug was fixed in CURL 7.60.0.
2025-01-25 11:14:38 +01:00
Aleksander Czajczynski
a30e2091db 2025-01-24 15:02 UTC+0100 Aleksander Czajczynski (hb fki.pl)
* contrib/hbct/dattime3.c
    ! fixed in block variable declaration for strict ANSI C compat
    * code formatting
    ; both borrowed from Viktor's fork, thanks
      aa4665f16f
      d9f37296b0

  * src/rdd/dbcmd.c
    * note about C5.3/5.2 DBAPPEND( [<lUnlockAll>=.t.] ) updated again
      upon Przemek notification, thanks
2025-01-24 15:02:38 +01:00
Przemysław Czerpak
bf146ab5ee 2025-01-24 12:32 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbwin/olecore.c
    * pacified false MSVC warning. It's very seldom situation that I'm adding
      code to pacify false compiler warnings anyhow in this case it cost in
      practice nothing so I decided to do that.

  * contrib/xhb/hboutdbg.c
  * src/rtl/gtcrs/gtcrs.c
    * NULL pointer casting to pacify warning

  * src/pp/hbpp.c
    % do not created new iLen variable but reuse the one previously declared

  * src/vm/classes.c
    % allocate puiMsgIdx as array of HB_USHORT items instead of HB_SYMCNT.
      This modification only reduces the memory usage and has no effect on
      number of accepted symbols.
    * changed 'HB_SYMCNT uiHashKey' to 'HB_SIZE nHashKey' to avoid explicit
      casting in the code
2025-01-24 12:32:32 +01:00
Przemysław Czerpak
8b21566675 2025-01-24 10:10 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbssl/hbssl.hbm
    * added -Wno-error=deprecated-declarations to suppress errors in Solaris
      strict builds compiled with -Werror
      EVP_des_*() except EVP_des_ede3*()), EVP_desx_*(), EVP_rc[24]*() and
      EVP_md[245]*() are deprecated
2025-01-24 10:10:24 +01:00
Przemysław Czerpak
a403494eff 2025-01-24 09:21 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbssl/ssl.c
  * contrib/hbssl/sslctx.c
    * protect access to SSLv3_*() functions with #ifndef OPENSSL_NO_SSL3_METHOD
2025-01-24 09:21:32 +01:00
Aleksander Czajczynski
4a4691653b 2025-01-23 11:47 UTC+0100 Aleksander Czajczynski (hb fki.pl)
* contrib/hbcurl/core.c
  * contrib/hbcurl/hbcurl.ch
  * contrib/hbcurl/hbcurl.hbx
    * applied more cleanups, following Viktor Szakats guidance in hisrepo:
      6127603217
      - add `HB_CURLM_ERROR` to indicate error in hbcurl wrapper.
      - replace use of `HB_CURLM_INTERNAL_ERROR` with `HB_CURLM_ERROR`.
      - sync Harbour variable integer sizes with curl ones.
      - tidy up a variable scopes.
      - drop unused variable.
      - omit `hb_ret()` (it's a no-op).
      - formatting.
      - add functions to `hbcurl.hbx`.

    + add curl_ws_send()/curl_ws_recv() - WebSocket connectivity,
      borrowed from Viktor's fork, thanks again!
      2c71a5c940

  * src/rdd/dbcmd.c
    * note about C5.3 and Harbour extensions to
      DBAPPEND( [<lUnlockAll>=.t.] ), thanks Viktor

  * ChangeLog.txt
    ! typos
2025-01-23 11:48:57 +01:00
Przemysław Czerpak
81bf9807b5 2025-01-22 21:08 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* utils/hbmk2/hbmk2.prg
    * do not interrupt whole build process when optional dependency package
      is disabled explicitly by -depcontrol=<optdeppkg>:no

  * contrib/gtqtc/gtqtc.hbc
  * contrib/gtqtc/gtqtc.hbp
    * respect QT_SELECT envvar looking for QT dependencies
2025-01-22 21:08:08 +01:00
Przemysław Czerpak
0ca7dbe6f2 2025-01-21 09:45 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* .github/workflows/windows-ci.yml
    * install freeimage only in 64-bit environment,
      it's not available in the 32-bit one

  * contrib/3rd/sqlite3/sqlite3.hbp
    * use -Wno-unknown-warning-option to pacify problems with old
      clang versions which do not understand -Wno-stringop-overread
2025-01-21 09:45:12 +01:00
Przemysław Czerpak
223bfa649e 2025-01-21 08:46 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/3rd/sqlite3/sqlite3.hbp
    * do not enable -Wno-error=stringop-overread C compiler flag in MS-Windows
      clang builds and HB_BUILD_TEST='strict' - this C clang version does not
      support it
2025-01-21 08:46:15 +01:00
Przemysław Czerpak
f4ea383593 2025-01-21 06:45 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* .github/workflows/windows-ci.yml
    * disabled global -Wno-error=... C compiler parameters
    * set HB_BUILD_TEST="${{matrix.strictness}}" envvar

  * contrib/3rd/sqlite3/sqlite3.hbp
    * set -Wno-error=stringop-overread C compiler parameter for GCC builds
      when HB_BUILD_TEST='strict'

  * contrib/hbzebra/hbzebra.hbp
    * set -Wno-error=array-bounds C compiler parameter for GCC builds
      when HB_BUILD_TEST='strict'
2025-01-21 06:45:38 +01:00