freeswitch/libs/xmlrpc-c/lib/abyss/patch_notes.txt

115 lines
3.2 KiB
Plaintext

Notes about the Abyss Patch -- By: Rosimildo da Silva, Jan 31, 2001.
-------------------------------------------------------------------
This file contains some notes about the changes made to the
Abyss source tree. The changes were required to fix a few
bugs, and port the base code to compile under CygWin,
and Borland C++ free compiler. The free compiler for
Win32 from Borland can be downloaded from here:
http://www.borland.com/bcppbuilder/freecompiler/
What is new:
+ Package should compile out of the box under CygWin
+ Added makefiles and changes to use Borland C++ compiler
under WIN32 as well as VC++ 6.0
+ Fix Abyss.dsp to use the proper thread safe libraries,
and updated to VC++ 6.0
+ Fixed thread leaks ( handles )
Applying the patch to Abyss-0.3.tar.gz
--------------------------------------
+ get archive from here:
http://abyss.linuxave.net/abyss-0.3.tar.gz
WARNING: this site seems to be dead for the last two months.
+ cd /work ( any dir )
tar xzvf abyss-0.3.tar.gz
cd abyss
patch -p1 <abyss-0.3-20010131.patch
What to do next:
a) Cygwin
cd abyss/src
make
b) Borland C++
cd abyss\src
set BCC_PATH=<location where your compiler is located>
( BCC_PATH=d:\bcb5 )
make -f makefile.bcc32
c) VC++ 6.0
cd abyss\src
msdev Abyss.dsp
( Or just open the workspace with Visual Studio, and you know
the drill ).
NOTE: Under Cygwin, after I apply the patch, Visual Studio was unable to
recognize the workspace. ???
List of changes done to the ABYSS http server: ( ChangesLog )
----------------------------------------------
+ changed _WIN32 to ABYSS_WIN32. THis solve the problem that the
macro _WIN32 is defined under CygWin. CygWin has a unix like
api ( _UNIX ), so the macro _UNIX should be defined then.
Under CygWin we would have _UNIX and _WIN32 defined at the same
time.
+ Theead API -- Added two extra functions: ThreadExit() and
ThreadClose(). These allows the resources of the threads to be
released when the thread has complete its duty serving the
request.
+ Added extra flag to TConn structure to make possible the
management of the worker threads by the server.
+ Changed allocation of TConn array from stack to heap. This
would cause problems on certain system ( specially embedded systems ),
where the stack sizes arr not that large.
+ Changed ServerRun to free thread resources when the connection
for the thread is closed.
+ Changed main.c to make the sginal registration conforming with
the usage of the _FORK option.
+ Change ThreadCreate to be able to specify the "stack size" of the
worker's threads ( pthread ). Defined lable for it.
+ Added flag _NO_USERS to disable check for users and groups.
This is useful for embedded systems where no users are available.
+ Updated VC++ workspace to version 6.0
+ Changed the creation of the thread under WIN32 to use a RTL
function ( _beginthreadex ), as recommend by MS, instead of using
the naked WIN32 API.
--
Rosimildo da Silva rdasilva@connectel.com
ConnectTel, Inc. Austin, TX -- USA
Phone : 512-338-1111 Fax : 512-918-0449
Company Page: http://www.connecttel.com
Home Page: http://members.nbci.com/rosimildo/