Kannel on AIX
Vincent CHAVANIS
v.chavanis at telemaque.fr
Tue Jul 1 12:10:05 CEST 2008
Yeah, i'm also suprised !!!
(X25 is dead, long live TCP/IP ! )=)
The EMI patch looks good but, we need to check if everything goes fine
in changing speed.
<!--
ret = tcsetattr(fd, TCSANOW, &tios);
if (ret == -1) {
error(errno, "EMI[X25]: at_dial: fail to set termios attribute");
}
-->
Andreas Fink a écrit :
> so theres still people using X.25 with EMI UCP ;-)
> I'm surprised...
>
> On 01.07.2008, at 11:16, Bostock James wrote:
>
>> Hi,
>>
>> I am trying to get Kannel 1.4.1 to compile and run on AIX 5.2 using
>> gcc 4.0 and libxml2 2.6.23. To do so, I had to make two small changes
>> to the source code:
>>
>>
>> --- gateway-1.4.1.orig/gw/smsc/smsc_emi_x25.c 2005-02-11
>> 15:35:48.000000000 +0000
>> +++ gateway-1.4.1/gw/smsc/smsc_emi_x25.c 2008-07-01
>> 08:51:47.000000000 +0100
>> @@ -496,8 +496,17 @@
>>
>> /* The speed initialisation is pretty important. */
>> tcgetattr(fd, &tios);
>> +/* Choose the fastest speed available (assuming at least 38400 baud).
>> +*/ #if defined(B115200)
>> cfsetospeed(&tios, B115200);
>> cfsetispeed(&tios, B115200);
>> +#elif defined(B57600)
>> + cfsetospeed(&tios, B57600);
>> + cfsetispeed(&tios, B57600);
>> +#elif defined(B38400)
>> + cfsetospeed(&tios, B38400);
>> + cfsetispeed(&tios, B38400);
>> +#endif
>> kannel_cfmakeraw(&tios);
>> tios.c_cflag |= (HUPCL | CREAD | CRTSCTS);
>> tcsetattr(fd, TCSANOW, &tios);
>>
>
> that patch makes sense.
>
>
>> And
>>
>>
>> --- gateway-1.4.1.orig/gw/smsc/smsc_soap.c 2005-09-19
>> 23:07:33.000000000 +0100
>> +++ gateway-1.4.1.gcc/gw/smsc/smsc_soap.c 2008-07-01
>> 09:20:56.000000000 +0100
>> @@ -223,7 +223,9 @@
>> /* useful macros go here (some of these were ripped of other modules,
>> so maybe its better to put them in a shared file) */
>> #define O_DESTROY(a) { if(a) octstr_destroy(a); a=NULL; }
>> +#if !defined(__64BIT__)
>> typedef long long int64;
>> +#endif
>
>
> wouldn't the following be more appropriate:
>
> #if !defined(int64)
> typedef int64_t int64
> #endif
>
>
> ?
>
>> /*
>> * SOAP module public API towards bearerbox
>>
>>
>> This second change is questionable but indicates the problem: when
>> compiling in 64 bit mode, AIX already defines int64.
>>
>> I am fairly sure that B38400 can be assumed to be defined but you
>> could extend the patch to check for lower baud rates.
>>
>> I also tried building using the native AIX compiler which, in addition
>> to the above changes, requires that all the C++-style comments be
>> converted to C-style comments (there's probably a compiler switch that
>> allows C++-style comments but by default they are rejected).
>>
>> The build system assumes gcc (for the generation of include
>> dependencies via the -MM option) which is unfortunate.
>
> so the ./configure option --disable-depenency-tracking should be set for
> AIX...
>
>
>
>
>
--
Telemaque - 06560 SOPHIA-ANTIPOLIS - (FR)
Service Technique/Reseau - NOC
Direction du Developpement xMS+
http://www.telemaque.fr/
v.chavanis at telemaque.fr
Tel : +33 4 92 90 99 84 (fax 9142)
More information about the devel
mailing list