Commit Graph

3139 Commits

Author SHA1 Message Date
Viktor Szakats
abb6886ede 2009-08-04 14:59 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/gtsln/kbsln.c
    ! Silenced linux/sunpro warning.

  * config/linux/sunpro.cf
    ! Minor fix.
2009-08-04 12:59:48 +00:00
Viktor Szakats
51416661e9 2009-08-04 03:18 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbqt/hbqt_slots.cpp
    ! Deleted windows.h.

  * include/hbsetup.h
    + PPC CPU detection made better.

  * include/hbatomic.h
  * source/vm/maindllp.c
  * source/rtl/gttone.c
    + Using HB_CPU_* macros to detect CPU instead of compiler
      specific solutions.
      Przemek, please review me.

  * source/vm/maindllp.c
    % Using hbver.h constants to form the version number
      included in the .dll name. So it's now maintainence
      free.
    % Reduced redundancy when forming .dll names.

  * source/vm/maindllp.c
  * utils/hbmk2/hbmk2.prg
    * Renamed wce .dll to harbour[mt]-20-wce-arm.dll
    * Renamed non-ARM wce .dlls to harbour[mt]-20-wce.dll

  * INSTALL
  + config/linux/sunpro.cf
    + Added Sun Studio compiler support for Linux platforms.
      Thanks Tamas Tevesz for the tip that this port exists.
      It has various problems to fix, but it's a start.

  * config/sunos/sunpro.cf
    ! Typo in prev commit.
2009-08-04 01:26:12 +00:00
Viktor Szakats
3edb418b26 2009-08-01 14:43 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/global.cf
    + Minor improvements.
    ; NOTE:
      I was experimenting how to return HB_COMPILER
      and HB_ARCHITECTURE values from GNU Make to caller batch/script.
      So far no success.
      Help/ideas would be much appreciated. This would be needed
      to fully switch to GNU Make level arch/comp detection, since
      these values are also needed by make_gnu*.*, mpkg_gnu.* scripts.

  * source/rtl/hbinet.c
    * Renamed iErrorCode to iError.
2009-08-01 12:47:55 +00:00
Viktor Szakats
f87ee247e1 2009-08-01 12:40 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/header.cf
  * config/rules.cf
  * config/none.cf
  * config/global.cf
  * config/doc.cf
  * config/lib.cf
  * config/bin.cf
  * config/dir.cf
  * config/test.cf
    + Added HB_COMPILER and HB_ARCHITECTURE autodetection.
      It's experimental yet.
    + Added support for HB_BUILD_SUBDIR envvar which can
      extend the <arch>/<comp> path by arbitrary subdir(s).
      Useful to keep custom binary builds in parallel, f.e.
      release/debug, cpp/c, cpu targets. Notice that hbmk2
      will not be able to use such customized directory
      structure yet, but there'll probably be a cmdline option
      for that in the future (it won't/can't be automatic).
      Notice, this feature doesn't work yet on OS/2 because
      the shell doesn't support 'mkdir -p' equivalent.
    * Cleaned internal ARCH_COMP var usage.
    % Deleted SOURCE_DIR usage, it was a no-op.

  * make_gnu.bat
    ! Fixed autodetection of mingwarm.
    ; Autodetection code will have to be deleted from here anyway.

  + config/os2-mkdir.exe
    + Added OS/2 GNU mkdir executable. (not yet used)

  * examples/superlib/superlib.dif
    + Added 'const'.

  * source/rtl/hbinet.c
    ! Fixed to use hb_retc() to return hb_socketErrorStr() value.
2009-08-01 10:41:04 +00:00
Viktor Szakats
81dcbfa6ec 2009-07-31 12:33 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/hbinet.c
    % Minor internal type cleanup.
2009-07-31 10:33:58 +00:00
Viktor Szakats
c7da271ebe 2009-07-31 12:29 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/hbinet.c
    % Cleaned old error description handling logic. Now the error
      desc is dynamically retrieved instead of being stored along
      the error code.
2009-07-31 10:30:43 +00:00
Przemyslaw Czerpak
352ca04d7b 2009-07-31 11:58 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbinet.c
    ! fixed typo in received bytes calculation. It was reported as warning
      in BCC builds - thanks to Enrico.
2009-07-31 09:58:11 +00:00
Przemyslaw Czerpak
bbd1e6b0a4 2009-07-31 11:31 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbinet.c
    ! modified hb_inetRecv[All]() to always return number
      of bytes read if at least one byte was successfully read
      just like in documentation so it's not longer necessary to
      use hb_inetCount() to check real number of read bytes.
      On error they return -1 and 0 when foreign host closed connection.
    ! modified hb_inetSend[All]() to always return number of written
      bytes if at least one byte was successfully written so it's not
      longer necessary to use hb_inetCount() to check real number of
      written bytes. On error they return -1.
    ! modified hb_inetRecvLine() to return "" on errors and always
      set numeric value with error code or number of bytes read
      in 2-nd parameter passed by reference
    ! modified hb_inetDataReady() to return -1 instead of .F. to
      indicate errors when socket is not open socket
    ! modified  hb_inetRecvLine() and hb_inetRecvEndBlock() to work
      like in documentation and set in 2-nd parameter passed by
      reference the size of read line with line terminator, -1
      or error and 0 when foreign host closed connection.
    ! modified hb_inetRecvEndBlock() to always use default EOL when
      there is no not empty string in passed string parameter or
      passed array with line terminators
    ! fixed some small differences between hb_inetRecvLine() and
      hb_inetRecvEndBlock()
    ! fixed returned values in hb_InetDGramSend() and hb_InetDGramRecv()
      to be synced with documentation
    * minor: modified hb_inetRecvEndBlock() to use as default EOL
      s_inetCRLF instead of hardcoded "\r\n"
    * eliminated some redundant code
    + added automatic socket initialization in windows builds
    % added support for read ahead buffer in hb_inetRecvLine() and
      hb_inetRecvEndBlock() and updated other functions which may
      interact with it. It greatly improved the speed of code
      which extensively uses above functions.

   Warning!!! Above modifications may force updating other code which used
              some undocumented hb_inet*() functions behavior i.e. some side
              effects in previous implementation. Please update your code
              if necessary.

  * harbour/doc/inet.txt
    ! modified hb_inetAccept() documentation wrongly describing value
      returned on error when it's NIL

  * harbour/config/os2/watcom.cf
    ! fixes for real OS2 command processor - please test
2009-07-31 09:32:11 +00:00
Viktor Szakats
d518e481c5 2009-07-30 00:43 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbextern.ch
  * source/rtl/dateshb.c
    + Added HB_UTCOFFSET() -> <nSecs> core function to return UTC offset
      as signed number in seconds.

  * contrib/hbwin/win_misc.c
    + Copied WIN_SYSREFRESH() from httpsrv. Bit reworked (types, goto,
      64-bit compatibility, unnecessary outer loop), pls review.

  * examples/httpsrv/uhttpd.hbp
  - examples/httpsrv/uhttpdc.c
  * examples/httpsrv/uhttpd.prg
    * HB_UTCOFFSET() renamed to UHTTPD_UTCOFFSET() and rewritten as .prg.
    ! Using __PLATFORM__WINDOWS to enable WIN_SYSREFRESH() calls.
2009-07-29 22:46:19 +00:00
Przemyslaw Czerpak
efae473295 2009-07-29 11:53 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbsocket.c
    ! fixed interface settings for multicast in IPv6 - in IPv6 interface
      indexes are used instead of addresses
2009-07-29 09:53:54 +00:00
Viktor Szakats
f769e560ad 2009-07-29 11:08 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/gtcrs/gtcrs.c
    + Utilizing write return values and returning success from low 
      level write functions to satisfy linux/gcc insisting on warnings.
2009-07-29 09:09:25 +00:00
Viktor Szakats
d6d9e74142 2009-07-29 10:55 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/gtcrs/gtcrs.c
    ! Suppress Linux warnings complaining about dropping return
      values of write operations.
2009-07-29 08:56:09 +00:00
Viktor Szakats
9a976e633e 2009-07-29 10:22 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/hbsocket.c
    ! Added missing 'static'.
2009-07-29 08:22:38 +00:00
Przemyslaw Czerpak
f9561f17c8 2009-07-29 05:19 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbsocket.c
    * force blocking IO on socket returned by accept() - on some system
      new sockets can inherit blocking IO flag from the listening socket
2009-07-29 03:20:01 +00:00
Przemyslaw Czerpak
fe03d112cb 2009-07-29 04:24 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbsocket.c
    ! finished hb_socketResolveAddr() in systems where getaddrinfo()
      is not available
2009-07-29 02:25:02 +00:00
Przemyslaw Czerpak
6a49526b0f 2009-07-29 00:50 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbsocket.c
    ! disabled inet_pton() and inet_ntop() in OS2 GCC builds.
2009-07-28 22:50:50 +00:00
Przemyslaw Czerpak
50ebdd772e 2009-07-28 18:54 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbsocket.c
    * return -1 instead of 0 on timeout in hb_socketSend*() and
      hb_socketRecv*() functions
2009-07-28 16:54:33 +00:00
Przemyslaw Czerpak
eb76326d2d 2009-07-28 18:21 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbsocket.c
    ! yet another mistake in select() sets I missed to fix in previous commit
2009-07-28 16:22:38 +00:00
Przemyslaw Czerpak
757c4ad242 2009-07-28 18:10 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbsocket.c
    ! fixed stupid typo in S&R - I reverted select() socket sets
      in send()/recv() when I was modifying function names.
      It can be also an answer why it exploited some problems
      with hb_InetRecvLine() in Francesco code.
2009-07-28 16:10:44 +00:00
Przemyslaw Czerpak
ef2cd8b99c 2009-07-28 17:52 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbsocket.c
    ! fixed typo in recent modification
2009-07-28 15:52:42 +00:00
Przemyslaw Czerpak
01c98e8064 2009-07-28 17:21 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbsocket.c
    * accept NULL and empty string "" as default address (INADDR_ANY)
      in hb_socketInet?Addr() functions

  * harbour/source/rtl/hbinet.c
    % use NULL as default address in hb_socketInetAddr()
2009-07-28 15:22:07 +00:00
Przemyslaw Czerpak
62334184f8 2009-07-28 14:37 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/gtcrs/Makefile
    * disabled from OS2 builds - if someone knows OS2 curses port then
      he can try to reenable it and update gtcrs code to compile with it.
2009-07-28 12:38:15 +00:00
Viktor Szakats
86fc847f7c 2009-07-28 13:55 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbsocket.ch
  * include/hbsocket.h
  * source/rtl/hbsocket.c
  * source/rtl/hbinet.c
  * examples/uhttpd2/socket.c
  * examples/httpsrv/socket.c
    * Slightly renamed some constants to settle on a common
      prefix for all socket related ones: HB_SOCKET_*
      HB_SOCK_PF_*      -> HB_SOCKET_PF_*
      HB_SOCK_AF_*      -> HB_SOCKET_AF_*
      HB_SOCK_*         -> HB_SOCKET_PT_* (for protocol types)
      HB_SOCK_IPPROTO_* -> HB_SOCKET_IPPROTO_*
      HB_SOCK_SHUT_*    -> HB_SOCKET_SHUT_*
      HB_SOCK_FUNC      -> HB_SOCKET_FUNC

  * contrib/hbtip/thtml.prg
    * Minor formatting.
2009-07-28 11:56:55 +00:00
Przemyslaw Czerpak
3472f72ddd 2009-07-28 13:24 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/Makefile
    ! added hbextlng.ch

  * harbour/source/rtl/hbinet.c
    ! fixed broadcast addresses wrongly used as default
2009-07-28 11:24:35 +00:00
Viktor Szakats
d985b594f5 2009-07-28 12:37 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/hbinet.c
    * Struct member 'com' renamed to 'sd' to be in sync.
2009-07-28 10:37:57 +00:00
Viktor Szakats
1054de0e9b 2009-07-28 12:24 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbsocket.h
  * contrib/hbssl/hbssl.c
  * source/rtl/hbsocket.c
  * source/rtl/hbinet.c
  * examples/uhttpd2/socket.c
  * examples/httpsrv/socket.c
    * HB_SOCKET_T -> HB_SOCKET

  * contrib/gtwvg/gtwvg.c
  * contrib/gtwvg/wvggui.c
  * source/rtl/gtstd/gtstd.c
  * source/rtl/filesys.c
  * source/rtl/gtpca/gtpca.c
  * source/rtl/gtwvt/gtwvt.c
    ! Added casts for msvc64.
      Some C RTL functions in msvc64 expects file handles as 'int's.
      The rest is some non-critical stuff.
      Now only size_t to int/ULONG warnings remain in hbrtl.
    ; TOFIX: Plus these two:
      ../../../hbstrfmt.c(459) : warning C4244: 'argument' : conversion from '__int64' to 'ULONG', possible loss of data
      ../../../hbtoken.c(280) : warning C4244: '=' : conversion from '__int64' to 'ULONG', possible loss of data
2009-07-28 10:26:23 +00:00
Przemyslaw Czerpak
25c5333120 2009-07-28 12:23 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbsocket.c
    * pacified MSVC64 warnings
2009-07-28 10:23:25 +00:00
Przemyslaw Czerpak
4cef2a48c4 2009-07-28 11:45 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbsocket.c
    % small improvement in INET6 broadcast address initialization
      enabled for all *nix builds, tested only with Linux and SunOS.
2009-07-28 09:46:00 +00:00
Przemyslaw Czerpak
8b0a2e6ba8 2009-07-28 10:45 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbsocket.c
    ! fixed timeout updating in non Linux builds

  * harbour/mpkg_rpm.sh
    ! test 'gd-devel' version number not 'gd'
2009-07-28 08:46:02 +00:00
Viktor Szakats
f9e33982f7 2009-07-28 10:26 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* make_gnu_os2.cmd
  * make_gnu.bat
    % Deleted defaulting of HB_*_INSTALL. Now done by make files.
    ; Same should be done for *nixes.

  * contrib/xhb/inet.h
    * Converted to a stub which shows error. This header was
      making public some local structures and functions which are
      no longer supported in Harbour.

  * contrib/xhb/inet.h
  * contrib/hbct/print.c
  * contrib/hbtpathy/tpwin.c
  * source/rtl/hbinet.c
    ! *WIN_32* -> *WIN*
2009-07-28 08:29:54 +00:00
Viktor Szakats
3a74eec9e1 2009-07-28 10:05 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/hbinet.c
    % Deleted _HB_SOCKET
    * [P]HB_SOCKET -> [P]HB_SOCKET_STRUCT
    ; This gives way to use HB_SOCKET as a public name.
    * Renamed Socket -> socket, Newsocket -> new_socket
    ; Generated code is verified to stay the same.
2009-07-28 08:06:19 +00:00
Viktor Szakats
4b7833ba16 2009-07-28 01:51 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* external/libhpdf/Makefile
    + Enabled for os2/watcom.

  * include/hbdefs.h
    * Minor addition to new type section.
      'bool' is the new type for boolean, so maybe we should
      use them instead of hbBool/TRUE/FALSE.

  * source/rtl/hbsocket.c
    ! Added one 'static'.
    * Added one pair of paranthesis (formatting).

  * source/rtl/hbgtcore.c
  * source/rtl/hbsha1.c
  * contrib/hbwin/win_prt.c
    * Minor formatting.

  * contrib/xhb/xhbfunc.c
    + Added copyright holder for HB_F_EOF().

  * contrib/hbssl/ssl.c
    ! Minor typo in comment.

  * contrib/hbssl/hbssl.h
    ! Added HB_EXTERN_BEGIN/HB_EXTERN_END.

  * config/global.cf
    + Added HB_UNIX_COMPATIBLE variable.
    + Setting default lib install dir to lib/<arch>/<comp>
      on non-*nix systems.

  * examples/httpsrv/socket.c
    + Copied from uhttpd2. Please verify.
2009-07-27 23:54:06 +00:00
Przemyslaw Czerpak
2abefe1b3e 2009-07-27 23:43 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbstack.h
    + added socket error codes to HB_IOERRORS

  * harbour/include/Makefile
  + harbour/include/hbsocket.ch
  + harbour/include/hbsocket.h
  * harbour/source/rtl/Makefile
  + harbour/source/rtl/hbsocket.c
    + added new BSD socket functions: hb_socket*(). They should be quite
      close to low level C socket interface with few modifications which
      help to hide some platform differences. Unfortunately we do not use
      autoconf so I had to arbitrary set which features are available
      on some platforms. In practice it means that it reduces portability
      to older OS-es, i.e. it should work with current Linux versions
      but it will not without some modifications in macros used to control
      supported features with older Linuxes using kernel 2.2 or 2.0.
      The same can happen with other *nix ports like Darwin, SunOS, HP-UX
      or with different versions of some Windows compilers. I also do not
      know which functionality is available in OS2 GCC ports and I would
      like to ask OS2 users to make tests and disable not working features.
      We also need tests with HP-UX, Darwin and SunOS.
      IP6 support is enabled only in *nixes. If Windows users are interested
      in IP6 then please add support for it. Most of Windows compilers do
      not support standard POSIX functions so I do not want to make it
      myself using unknown for me API without testing.
      In *nix builds PF_UNIX/PF_LOCAL sockets are also supported.
      Support for other socket types can be easy added if someone is
      interested in them.
      The constant values used in hbsocket.ch are equal to original BSD
      socket definitions. If it's necessary then it's possible to enable
      their translation inside hbsocket.c code though I do not think we
      will find such OS.
      The list of hb_socket*() functions was designed to cover all existing
      functionality in hbinet.c and socket.c. Most of functions supports
      timeout parameter what effectively allows to hide direct select()
      usage.
      Please make test with real applications and report any problems
      with hb_inet*() functions you will find.

  * harbour/source/vm/hvm.c
    * minor cleanup

  * harbour/source/rtl/hbi18n1.c
    * cleaned variable name

  * harbour/source/rtl/hbinet.c
  * harbour/examples/uhttpd2/socket.c
  * harbour/contrib/hbssl/hbssl.c
    * updated to use hb_socket*() functions

  * harbour/include/hbextern.ch
    * enabled HB_INET*() functions in DOS builds - they will simply return
      errors

  - harbour/include/hbapinet.h
    - removed old header file

  * harbour/source/pp/ppcore.c
    ! modified ENDTEXT marker to work also with comments in the same line
      It's more closer to Clipper though intentionally we are not fully
      CA-Cl*pper compatible here.
2009-07-27 21:43:31 +00:00
Viktor Szakats
4a51d89404 2009-07-23 18:19 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
+ source/rtl/hbfeof.c
  * source/rtl/Makefile
  * source/rtl/philes.c
    ! HB_FEOF() moved to separate file to ease name collision
      situations.

  * contrib/hbssl/evpciph.c
  * contrib/hbssl/bio.c
  * contrib/hbssl/evpmd.c
  * contrib/hbssl/evpenc.c
    ! Fixed buffer sizes, after valgrind test.
      (off by one bugs. hb_storclen_buffer()/hb_retclen_buffer() need
      one byte extra above the size returned, in order to hold the 
      EOS char)

  * contrib/xhb/freadlin.c
  * contrib/hbqt/qth/QFtp.qth
  * contrib/hbqt/qth/QHttp.qth
  * contrib/hbqt/QFtp.cpp
  * contrib/hbqt/QHttp.cpp
  * contrib/hbcurl/hbcurl.c
  * contrib/hbwin/win_prt.c
    ! Fixed similar to above allocation errors.

  * config/global.cf
    + Added HB_???_INSTALL initialization. Just a step, needs more
      work before making it a replacement for current method.
2009-07-23 17:22:31 +00:00
Viktor Szakats
a67b63175a 2009-07-23 12:02 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbmisc/dates2.c
    * Renamed DAYSINMONTH() to HBMISC_DAYSINMONTH(),
      to avoid collision with hbct function with the same
      name, but different functionality.
    - Deleted functions below from hbmisc library:
      EOM(), BOM(), WOM(), DOY(), WOY(), EOY(), BOY()
      They have superior alternatives with the same name
      in hbct lib, please use those.

  * contrib/hbssl/evpciph.c
  * contrib/hbssl/ssl.c
  * contrib/hbssl/bio.c
  * contrib/hbssl/tests/pem.prg
  + contrib/hbssl/tests/pubkey.pem
  * contrib/hbssl/tests/crypt.prg
  * contrib/hbssl/err.c
    + Added EVP_SEALINIT() (under development)
    + Added EVP_SEALUPDATE(), EVP_SEALFINAL().
    + Added SSL_SET_MSG_CALLBACK() (it's a debug function really,
      and the solution is slightly hackish, as I have to access
      OpenSSL structure and Harbour item freeing needs to be done
      manually. Anyhow it can be excluded from builds.
    + Added ERR_LOAD_CRYPTO_STRINGS().
    + Added ERR_PRINT_ERRORS(). (very useful)
    + Added ERR_FREE_STRINGS().

  * include/hbapi.h
  * source/vm/arrays.c
  * source/vm/extend.c
  * source/debug/dbgentry.c
  * source/rtl/hbgtcore.c
    ! Renamed API function hb_arraySetCPtr() to hb_arraySetCLPtr().
      Old function name still available for compatibility.
2009-07-23 10:03:20 +00:00
Viktor Szakats
40a7012cb7 2009-07-22 15:48 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* bin/hb-func.sh
  * include/hbextern.ch
  * contrib/Makefile
  * source/rtl/Makefile
  + source/rtl/sha1.c
  + source/rtl/sha1.h
  + source/rtl/hbsha1hm.c
  + source/rtl/sha2.c
  + source/rtl/sha2.h
  + source/rtl/hbsha2hm.c
  + source/rtl/sha1hmac.c
  + source/rtl/sha1hmac.h
  + source/rtl/hbsha1.c
  + source/rtl/sha2hmac.c
  + source/rtl/sha2hmac.h
  + source/rtl/hbsha2.c
  + tests/testsha1.prg
  + tests/testsha2.prg
    * hbcrypt contrib library merged into the core.
2009-07-22 13:53:21 +00:00
Viktor Szakats
2849c6e191 2009-07-22 15:39 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbapi.h
  * source/common/hbstr.c
  * source/rtl/hbmd5.c
    * Moved (and somewhat standardized and renamed) mem to hex C
      function from hbm5/rtl to common lib.

  * bin/hb-func.sh
    ! Fixed double '%' chars in hbmk.cfg generation.

  * contrib/hbcrypt/Makefile
  + contrib/hbcrypt/hbsha1.c
  + contrib/hbcrypt/hbsha1hm.c
  + contrib/hbcrypt/tests/testsha1.prg
    + Added HB_SHA1() and HB_HMAC_SHA1() functions.

  * source/rtl/hbmd5.c
    * Changed meaning of second boolean parameter. From
      now on a .T. has to be passed to get binary output.
      (I won't list this as a incompatible, as the new
      parameter has just been introduced)
    ; by now HB_MD5() and HB_SHA*() functions are synced 
      in functionality.

  * contrib/hbcrypt/hbsha1.c
  * contrib/hbcrypt/hbsha2.c
  * contrib/hbcrypt/hbsha1hm.c
  * contrib/hbcrypt/hbsha2hm.c
  * contrib/hbcrypt/tests/testsha2.prg
    * Changed all SHA2 functions to returned digest in hex
      format by default. The binary format can be requested by
      passing .T. as an extra parameter.
      INCOMPATIBLE: Please update your sources if you used
                    these functions. Add .T. parameter to keep
                    current workings.

  * contrib/hbcurl/hbcurl.c
    % Cleaned types (no BYTE, no BOOL, deleted unnecessary casts).
      Only a few ULONGs remained.

  * contrib/hbssl/pem.c
    + Some advances.
2009-07-22 13:41:36 +00:00
Viktor Szakats
2a1929a261 2009-07-21 00:23 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/net.c
    ! Fixed NETNAME()/hb_netname() on dos/watcom platforms
      in error cases it was leaking 16 bytes of memory.
      (+ minor formatting)
      Please review me.
    + NETNAME(), HB_USERNAME() now do conversion from OS
      codepage. Couldn't test it, please review me.
2009-07-20 22:24:54 +00:00
Przemyslaw Czerpak
8f26e540ec 2009-07-20 13:20 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/itemapi.c
    * cleaned hb_itemPutC*() functions. Now each function which accepts
      only pure szText pointer without length can be called with NULL
      as szText. Each function which need string length parameter needs
      non NULL szText value. I hope it's easy to remember for developers.
    % minor code optimizations for above rules

  * harbour/source/rtl/filebuf.c
    * allow to reuse tables in aliased workarea in RW mode after previous
      opening in RO mode
2009-07-20 11:20:22 +00:00
Viktor Szakats
6e3895739e 2009-07-20 10:19 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbapinet.h
  * source/rtl/hbinet.c
    ! Fixed headers for non-Windows.
2009-07-20 08:21:50 +00:00
Viktor Szakats
5d8cbff947 2009-07-20 00:48 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbssl/ssl.c
   + contrib/hbssl/hbssl.c
   * contrib/hbssl/Makefile
     + HB_SSL_READ_ALL() and HB_SSL_READ_LINE() rewritten.
       (HB_SSL_READ_ALL() isn't fully optimal, and maybe there
       are errors, please check.)
     + Added SSL_GET_RFD(), SSL_GET_WFD().

   * include/Makefile
   + include/hbapinet.h
   * source/rtl/hbinet.c
     + Moved some basic declarations to new API header,
       mainly to export hb_select[Read|Write]*() functions.
       We will also need such header in the future when
       we implement C level socket/networking API. Current
       solution is quite messy since the header has to
       pull Windows headers which may not be friendly with
       all usages/include order.

   * source/rtl/hbinet.c
     * HB_SOCKET_STRUCT renamed to HB_SOCKET.
     + Added PHB_SOCKET type.
     + Added hb_selectReadFD(), hb_selectWriteFD() which
       are similar to hb_selectReadSocket() and
       hb_selectWriteSocket() but expect raw FD plus explicit
       timeout values.
       These function names and solutions are tentative
       to solve SSL integration with Harbour, and hopefully
       in the future we will have a clean net API, the current
       one is very messy.

   * source/vm/itemapi.c
     ! hb_itemPutCPtr(), hb_itemPutCLPtr() fixed to put empty
       string to item if szText is NULL and length is non-zero,
       instead of trying to free NULL pointer causing internal
       error.

   * include/hbextlng.ch
     * Corrected header to be in sync with CDP and not
       to repeat the filename.
2009-07-19 22:51:05 +00:00
Viktor Szakats
a647e930c6 2009-07-19 19:40 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbssl/Makefile
  + contrib/hbssl/sslerr.c
  + contrib/hbssl/sslx509.c
  * contrib/hbssl/ssl.c
  * contrib/hbssl/sslctx.c
  * contrib/hbssl/hbssl.ch
  * contrib/hbssl/tests/test.prg
    + Added ERR_*() API functions.
    + Prefixed .ch contant names with HB_ to avoid collision with
      ssl own headers.
    + Added SSL_CTX_SET_MODE(), SSL_CTX_GET_MODE() functions.
    + Added HB_SSL_READ_ALL(), HB_SSL_READ_LINE() functions meaning
      to mimic HB_INETRECVALL() and HB_INETRECVLINE(). (probably needs
      more work, it'd be great if someone who understands the guts of
      these inet functions could take a look)
    * SSL_PEEK() synced with SSL_READ() recent changes.
    + Added SSL_SET_MODE(), SSL_GET_MODE(), SSL_SET_MTU() functions.
    + Added SSL_GET_RBIO(), SSL_GET_WBIO() functions.
    + Added SSL_GET_PEER_CERTIFICATE() function.
    + Added X509_GET_SUBJECT_NAME(), X509_GET_ISSUER_NAME(), X509_NAME_ONELINE()
    + Added HB_SSL_MODE_* constants.

  * include/hbextern.ch
    * Changed to use new hbextlng.ch.

  - examples/hbextern/hbextern.lst
    ! It wasn't deleted in 2009-07-18 21:37 UTC+0600 for some reason.

  * source/rtl/console.c
    ! Fixed OUTSTD() and OUTERR() to output separator space
      to std/err instead of alt.

  * source/rtl/hbinet.c
    % Minor optimization.
2009-07-19 17:42:06 +00:00
Przemyslaw Czerpak
314d60309f 2009-07-18 02:57 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/hbzlib.c
    + added HB_ZERROR( <nError> ) => <cErrorDescription>
      It's wrapper to zError() ZLIB function.
2009-07-18 00:57:57 +00:00
Viktor Szakats
c439db6050 2009-07-17 10:40 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/gtxwc/gtxwc.c
    ! Fixed typo.
      This should fix the warning plus black screen reported by 
      some users. Please test.
2009-07-17 08:40:59 +00:00
Viktor Szakats
64f481018a 2009-07-17 10:02 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/gtxwc/gtxwc.c
    ! Fixed to compile under cygwin.
2009-07-17 08:02:34 +00:00
Przemyslaw Czerpak
4e8c876b3e 2009-07-16 20:58 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/gtcrs/Makefile
    * test for HB_COMPILER=djgpp instead of HB_ARCHITECTURE=dos to
      activate trick used to detect PDCURSES in DJGPP builds when
2009-07-16 18:58:10 +00:00
Viktor Szakats
2a935acc52 2009-07-15 11:58 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/hbinet.c
    * Formatting, cleanup.
    * Few types cleaned. Although many 'int's seems better be 'long',
      I didn't touch it.
      Please review. No functionality should change.
    ! HB_INETSTATUSDESC() to always return string if socket is valid.
2009-07-15 10:26:14 +00:00
Przemyslaw Czerpak
99c6f1913f 2009-07-15 03:28 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rtl/gtwin/gtwin.c
    * added code to disable/enable mouse input by:
         hb_gtInfo( HB_GTI_MOUSESTATUS, <lOnOff> )
      It's possible that hb_gtInfo( HB_GTI_MOUSESTATUS, .F. ) will also
      disable mouse cursor in full screen mode but I haven't tested it.
      Please check.
2009-07-15 01:28:20 +00:00
Viktor Szakats
6cd0529480 2009-07-15 03:11 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* source/rtl/gtwin/gtwin.c
    * Minor formatting.

  * source/rtl/gtapi.c
    % hb_gtSetCursor(): Deleted parameter evaluation.
      It's better to do it only on low-level.

  * config/win/bcc.cf
    % Line deleted.

  * utils/hbmk2/hbmk2.prg
    + -nohblib now supported in scripts.
    + -nohblib- option added.

  * examples/pp/pp.hbp
    * Comment deleted.
2009-07-15 01:12:42 +00:00
Przemyslaw Czerpak
e81c3d4058 2009-07-15 02:35 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/config/hpux/gcc.cf
  * harbour/config/darwin/gcc.cf
  * harbour/config/dos/watcom.cf
  * harbour/config/dos/djgpp.cf
  * harbour/config/win/watcom.cf
  * harbour/config/win/icc.cf
  * harbour/config/win/cygwin.cf
  * harbour/config/win/msvc.cf
  * harbour/config/win/xcc.cf
  * harbour/config/win/mingw.cf
  * harbour/config/win/pocc.cf
  * harbour/config/win/bcc.cf
  * harbour/config/linux/watcom.cf
  * harbour/config/linux/gcc.cf
  * harbour/config/linux/icc.cf
  * harbour/config/os2/watcom.cf
  * harbour/config/os2/gcc.cf
  * harbour/config/sunos/gcc.cf
  * harbour/config/bsd/gcc.cf
  * harbour/config/wce/msvcarm.cf
  * harbour/config/wce/mingwarm.cf
  * harbour/config/wce/poccarm.cf
    * cleanup: rtl -> hbrtl, rdd -> hbrdd

  * harbour/harbour.spec
  * harbour/harbour-win-spec
  * harbour/harbour-wce-spec
  * harbour/include/hbcomp.h
  * harbour/source/Makefile
  + harbour/source/nulrtl
  + harbour/source/nulrtl/nulrtl.c
  + harbour/source/nulrtl/Makefile
    + added hbnulrtl library to use non .prg harbour binaries

  * harbour/source/rtl/strmatch.c
  * harbour/source/common/Makefile
  + harbour/source/common/strwild.c
    * moved hb_strMatch*() functions from RTL to COMMON library
      Warning: copyright changed in new file. Viktor is rtl/strmatch.c
      copyright holder but hb_strMatch*() functions is my code.

  * harbour/source/rtl/Makefile
  - harbour/source/rtl/hbffind.c
  * harbour/source/common/Makefile
  * harbour/source/common/hbffind.c
    * moved hb_fsFind*() functions from RTL to COMMON library

  * harbour/source/main/harbour.c
  * harbour/source/main/Makefile
    * use hbnulrtl library to create harbour binaries

  * harbour/source/pp/Makefile
  * harbour/source/pp/hbpp.c
    * use hbnulrtl library to create hbpp binaries
    * added support for wildcard search

  * harbour/examples/pp/pp.c
  * harbour/examples/pp/pp.hbp
    * use hbnulrtl library to create pp binaries
      question: why is ignored -nohblib in pp.hbp?

  * harbour/contrib/rddads/ads1.c
    % removed always false if() { ... } statement
2009-07-15 00:37:09 +00:00