Re: panel and ORBit Problems



-----BEGIN PGP SIGNED MESSAGE-----

Well, I don't have HPUX nor do I know anything about it, but nevertheless
some comments ...

On 12 Aug 1998, Sebastien Carpe wrote:

> To: gnome-list@gnome.org
> Subject: panel and ORBit Problems
> From: Sebastien Carpe <scarpe@atos-group.com>
> 
> Okie well... i just dowloaded and made Gnome v0.25 (26 for lib) up.
> I've seen smthg about other possible mailing list ... this one is the
> only i could thought of when i subscribe... if that's the wrong place
> to report, tell me please...
> 
> That wasn't as easy as i exspected, since i'm on a HPUX 9.05, not
> Linux at all, and even a quite old system (since i've seen strange
> things in it - like variable presentce in libs but no declaration in
> corresponding include... Oh well.... *sigh* -)
> 
> Here are a few things i met ... I've had bad times about some code,
> here is what i remembered :
> - In ORBit, there's a call to getcwd with (NULL,0) as argument. On my
> system, that means get current directory, do a malloc of _0_ char
> maximum to place the resulting directory ... hum hum ... Function

Bad. Is there any way to tell your getcwd to malloc as much memory as
needed or to get the length of the result ?

> called 'get_full_path' (get etag to track down)
> - gnomesupport.h wasn't present, i had to do some awk stuff to get

This is correct. But this `awk stuff' should normally be done
automatically so I guess this hasn't worked for any reason.

> one. but after that, for some reason, dirent got redefined to direct,

Hari, you seem to have done this on Apr 13 (from the ChangeLog) - was this
simly a typo or did you have some reason ?

> and i had to replace 'include "dirent.h"' with 'include "ndir.h"' in a
> few places to avoid prototype collision on stuff like 'readdir' and some 
> others...

You mean your system has a "dirent.h" which doesn't work ? - it seems like
"ndir.h" gets included when there is no "dirent.h".

> - The panel is still working half. Especially applets are giving me
> problems. the gen_util_applet accepted to be called twice b4, but no
> more... If i try to get Mailcheck (i like this) while the clock is on, 

This does not even work on my Linux box ...

> i got smthg like trying to reset servant number 4362784362 (number not 
> exact, i don't have it handy, but i can, if that matters) and then it
> hangs !! some other times it crashes, especially when trying to
> swallow strange thing (i like to swallow an xterm Console. Work fine
> with fvwmbutton). Moreover it hates when people kill its swallowed app 
> (goes core dump and pouts). Last but not least, it doesn't save
> configuration (whereas i did a clean logout). Beside all that, it
> seems to work ;P
> - getpagesize function, used in gnome-help-browser does NOT exist on

Seems to be a problem of 'gnome-libs/support/vsnprintf.c'. It is needed
for mprotect () - this is from the manpage under Linux:

NAME
       mprotect  - control allowable accesses to a region of memory

SYNOPSIS
 
       #include <sys/mman.h>

       int mprotect(const void *addr, size_t len, int prot);

ERRORS
       EINVAL  addr is not a valid pointer, or not a multiple  of
               PAGESIZE.

       #include <limits.h>    /* for PAGESIZE */
       #ifndef PAGESIZE
       #define PAGESIZE 4096
       #endif

Two questions:

1.) Does you mprotect () allow arbitrary sizes for its `len' parameter
    or must they be multiple of the pagesize.

2.) If yes - is there a `PAGESIZE' defined in any header file on your
    system or how do one get this constant ?

> my system, nor on the up to date version of HPUX (v10.20/v11). if
> someone could replace this, i'd be glad .. for now, i hard coded 4096
> in place, not sure it does mean anything...
> - in IIOP/ORBit, i've seen some call to the accept function, where the 
> 3rd parameter was not set. This is bad, it should tell the size of the 
> second parameter (fix is smthg like adding n=sizeof(struct addr_in))

- From the Linux manpage again:

NAME
       accept - accept a connection on a socket

SYNOPSIS
       #include <sys/types.h>

       #include <sys/socket.h>

       int accept(int s, struct sockaddr *addr, int *addrlen);

DESCRIPTION
       [...]
       tion is occurring.  The addrlen is a value-result  parame-
       ter;  it  should  initially  contain  the  amount of space
       pointed to by addr; on return it will contain  the  actual
       length  (in  bytes) of the address returned.  This call is
       used with connection-based socket  types,  currently  with
       SOCK_STREAM.

This tells me that zero is wrong under Linux, too. You wrote `it should
tell the size of the second parameter' - does this mean it is not a
pointer on your system ?

> I'm sorry, i don't have a patch file or whatever (i did not thought of 
> logging all the changes i made, kick me... :( ). I hope this will be
> sorta kinda usefull for you out there...
> 
> Hmmm 2 more things :
> 1st, a remark ... A number of application seems to be Linux specific
> (stuff like looking in linux/kernel.h). Is GNOME intended to work on
> all and every Un*x  ? At the moment, i can tell some part of the code
> seems to be fine, some other won't ever work on any platform other
> than Linux (too bad, indeed). Oh well, i suppose this is mainly due to 
> the available platform coders have...

Well, of cause GNOME is not limited to any OS - I think the main problem
is that most of the developers are working under (RedHat-)Linux and noone
has time to port it to other systems.

I am currently working on a library called `libgtop' which provides all
this Linux specific stuff in a portable way. Once it is ready and all
GNOME applications use it rather than the Linux specific /proc filesystem
one only needs to port this libray to another OS and everything should
work find. At the moment, it is working for Linux and (unstable) for
FreeBSD and I'm planning to port it also to SunOS soon.

> 2nd, is there any usefull docs about using ORBit (like there was one

Oh, I'd like this too - if someone knows about some, please let me
know ...

Martin

- -----------------------------------------------------------------
   Martin Baulig - Angewandte Mathematik - Universitaet Trier

   baulig@castor.uni-trier.de, http://www.home-of-linux.org/
   Key: 1024-bit key with ID C8178435 created 1997/01/24 
   ID:  67 C1 84 A0 47 F5 11 C5  5F 68 4C 84 99 05 C3 92
   Finger me for public key or fetch finger.txt from the url above
- ------------------------------------------------------------------




-----BEGIN PGP SIGNATURE-----
Version: 2.6.3i
Charset: noconv

iQCVAwUBNdHwn4A8K7jIF4Q1AQGSsAP8CZkG6dgBew7sz4W7Rh+7qEFpQylNLBHT
4YzoAprDtF6N51upE3z4xn/NdKW6vrfWRYLTP/KO2OHYnr1llbx0tDhu3BnxR8DT
tQYX4NnOlPObQr6I9ojB1lncAA69bMvhnEnhk9PMTxKEbE/hnp628EavpVhQ+6KZ
7N/RUfE6HMY=
=O/PK
-----END PGP SIGNATURE-----



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]