comp.lang.ada
 help / color / mirror / Atom feed
* Errors in the Win32 bindings
@ 2003-06-24 11:22 Martin Dowie
  2003-06-24 13:09 ` Frank J. Lhota
  0 siblings, 1 reply; 16+ messages in thread
From: Martin Dowie @ 2003-06-24 11:22 UTC (permalink / raw)


Who should these errors be reported to?

e.g. function utime takes an access parameter which
prohibits passing a 'NULL' although this is a valid
value for this routine.






^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
  2003-06-24 11:22 Errors in the Win32 bindings Martin Dowie
@ 2003-06-24 13:09 ` Frank J. Lhota
  2003-06-24 13:47   ` Martin Dowie
  0 siblings, 1 reply; 16+ messages in thread
From: Frank J. Lhota @ 2003-06-24 13:09 UTC (permalink / raw)


"Martin Dowie" <martin.dowie@baesystems.com> wrote in message
news:3ef8340b$2@baen1673807.greenlnk.net...
> Who should these errors be reported to?
>
> e.g. function utime takes an access parameter which
> prohibits passing a 'NULL' although this is a valid
> value for this routine.

I found a similar error in the Win32.Winsock package. The specification for
the "select" function (renamed "c_select" to avoid the reserved word) is

    function c_select(
                nfds     : Win32.INT;
                readfds  : access FD_SET;
                writefds : access FD_SET;
                exceptfds: access FD_SET;
                timeout  : ac_TIMEVAL_t)
               return Win32.INT;                            -- winsock.h:741

which prohibits using null for readfds, writefds, and exceptfds, in spite of
the fact that this is a common method of passing empty sets to "select".
Given that Win32.Winsock already defines the following access type

    type PFD_SET is access all FD_SET;                      -- winsock.h:846

we could fix this problem by using this access type to declare readfds,
writefds, and exceptfds, e.g.

    function c_select(
                nfds     : Win32.INT;
                readfds  : PFD_SET;
                writefds : PFD_SET;
                exceptfds: PFD_SET;
                timeout  : ac_TIMEVAL_t)
               return Win32.INT;                            -- winsock.h:741

With this declaration, you can use any combination of nulls and access to
actual FD_SET values in a call to "c_select".

Also, the package specification for Win32.Winsock is missing a declaration
for the FD_ZERO procedure, which should be there as an inlined subprogram.
Curiously, a body for FD_ZERO can be found in the Win32.Winsock package
body.

What is frustrating is that these problems are ridiculously easy to fix, if
only we knew who is responsible for maintaining the Win32 packages. I raised
this issue in this NG several months ago. None of the responses answered the
question of who owns Win32.

If no one is currently maintaining Win32, should a group of dedicated Ada
engineers take it over, perhaps making it a sourceforge project?





^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
  2003-06-24 13:09 ` Frank J. Lhota
@ 2003-06-24 13:47   ` Martin Dowie
  2003-06-24 19:59     ` Frank J. Lhota
  0 siblings, 1 reply; 16+ messages in thread
From: Martin Dowie @ 2003-06-24 13:47 UTC (permalink / raw)


"Frank J. Lhota" <NOSPAM.lhota.adarose@verizon.net> wrote in message
news:T3YJa.9745$N%6.8880@nwrdny02.gnilink.net...
[snip]
> If no one is currently maintaining Win32, should a group of dedicated Ada
> engineers take it over, perhaps making it a sourceforge project?

I'd be up for that - I have a couple of new API modules that could be added
too...





^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
  2003-06-24 13:47   ` Martin Dowie
@ 2003-06-24 19:59     ` Frank J. Lhota
  2003-06-24 20:50       ` Martin Dowie
  0 siblings, 1 reply; 16+ messages in thread
From: Frank J. Lhota @ 2003-06-24 19:59 UTC (permalink / raw)



"Martin Dowie" <martin.dowie@baesystems.com> wrote in message
news:3ef85611$1@baen1673807.greenlnk.net...
> "Frank J. Lhota" <NOSPAM.lhota.adarose@verizon.net> wrote in message
> news:T3YJa.9745$N%6.8880@nwrdny02.gnilink.net...
> [snip]
> > If no one is currently maintaining Win32, should a group of dedicated
Ada
> > engineers take it over, perhaps making it a sourceforge project?
>
> I'd be up for that - I have a couple of new API modules that could be
added
> too...

Another good point -- the Win32 packages are built on an old version of the
Win32 headers, so there are parts of the current Win32 API that are not
represented in the Win32 packages. Again, this problem is easy to remedy if
anyone takes the responsibility.





^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
  2003-06-24 19:59     ` Frank J. Lhota
@ 2003-06-24 20:50       ` Martin Dowie
  2003-06-25  9:00         ` Pascal Obry
  0 siblings, 1 reply; 16+ messages in thread
From: Martin Dowie @ 2003-06-24 20:50 UTC (permalink / raw)


"Frank J. Lhota" <NOSPAM.lhota.adarose@verizon.net> wrote in message
news:w42Ka.3892$QN3.617@nwrdny03.gnilink.net...
> Another good point -- the Win32 packages are built on an old version of
the
> Win32 headers, so there are parts of the current Win32 API that are not
> represented in the Win32 packages. Again, this problem is easy to remedy
if
> anyone takes the responsibility.

I'm not sure we could SourceForge it - isn't the license a Microsoft one?
Not sure. From
the headers the last person to work on them is a regular here - are you
there Pascal?!?!





^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
  2003-06-24 20:50       ` Martin Dowie
@ 2003-06-25  9:00         ` Pascal Obry
  2003-06-25 13:17           ` Frank J. Lhota
  0 siblings, 1 reply; 16+ messages in thread
From: Pascal Obry @ 2003-06-25  9:00 UTC (permalink / raw)



"Martin Dowie" <martin.dowie@btopenworld.com> writes:

> I'm not sure we could SourceForge it - isn't the license a Microsoft one?
> Not sure. From the headers the last person to work on them is a regular here
> - are you there Pascal?!?!

Yes :) The win32ada binding problems should be reported to ACT.

Pascal.

-- 

--|------------------------------------------------------
--| Pascal Obry                           Team-Ada Member
--| 45, rue Gabriel Peri - 78114 Magny Les Hameaux FRANCE
--|------------------------------------------------------
--|         http://perso.wanadoo.fr/pascal.obry
--| "The best way to travel is by means of imagination"
--|
--| gpg --keyserver wwwkeys.pgp.net --recv-key C1082595



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
  2003-06-25  9:00         ` Pascal Obry
@ 2003-06-25 13:17           ` Frank J. Lhota
  2003-06-25 19:28             ` Pascal Obry
  0 siblings, 1 reply; 16+ messages in thread
From: Frank J. Lhota @ 2003-06-25 13:17 UTC (permalink / raw)


"Pascal Obry" <p.obry@wanadoo.fr> wrote in message
news:usmpyh6q5.fsf@wanadoo.fr...

> Yes :) The win32ada binding problems should be reported to ACT.

Aonix also uses these packages. Does Aonix obtain them from ACT?





^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
  2003-06-25 13:17           ` Frank J. Lhota
@ 2003-06-25 19:28             ` Pascal Obry
  2003-06-25 20:22               ` Martin Dowie
  0 siblings, 1 reply; 16+ messages in thread
From: Pascal Obry @ 2003-06-25 19:28 UTC (permalink / raw)



"Frank J. Lhota" <NOSPAM.lhota.adarose@verizon.net> writes:

> Aonix also uses these packages. Does Aonix obtain them from ACT?

From what I know both versions are originated from Intermetrics work. Aonix
and ACT distribute this binding. I do not know if Aonix fix problems on this
binding though.

Pascal.

-- 

--|------------------------------------------------------
--| Pascal Obry                           Team-Ada Member
--| 45, rue Gabriel Peri - 78114 Magny Les Hameaux FRANCE
--|------------------------------------------------------
--|         http://perso.wanadoo.fr/pascal.obry
--| "The best way to travel is by means of imagination"
--|
--| gpg --keyserver wwwkeys.pgp.net --recv-key C1082595



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
  2003-06-25 19:28             ` Pascal Obry
@ 2003-06-25 20:22               ` Martin Dowie
  2003-06-26 19:42                 ` Pascal Obry
  0 siblings, 1 reply; 16+ messages in thread
From: Martin Dowie @ 2003-06-25 20:22 UTC (permalink / raw)


> > Aonix also uses these packages. Does Aonix obtain them from ACT?
>
> From what I know both versions are originated from Intermetrics work.
Aonix
> and ACT distribute this binding. I do not know if Aonix fix problems on
this
> binding though.

And there's the problem - just now at least the bindings are consistent
with all distributions. What are the chances of getting ACT and Aonix
to distribute a 'fixed' and/or expanded version?

I do like the idea of setting up a user-group to maintain these that is
independent of compiler vendors - it would be one less thing for them
to waste time over when they could be developing new tools/APIs :-)

One for the ARA?





^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
  2003-06-25 20:22               ` Martin Dowie
@ 2003-06-26 19:42                 ` Pascal Obry
  2003-06-26 21:02                   ` tmoran
  0 siblings, 1 reply; 16+ messages in thread
From: Pascal Obry @ 2003-06-26 19:42 UTC (permalink / raw)



"Martin Dowie" <martin.dowie@btopenworld.com> writes:

> And there's the problem - just now at least the bindings are consistent
> with all distributions. What are the chances of getting ACT and Aonix
> to distribute a 'fixed' and/or expanded version?

I do not understand, ACT does distribute the "fixed" Win32Ada binding
with GNAT.

The problem with this binding is that it has been created mostly by a tool
and then fixed by hand (~ 10% of the code if my memory is right). This binding
has been done long time ago using old version of the Win32 API. It is still
very useful but not quite up-to-date with current Win32 API as found in
Windows 2000/XP for example.

Another approach to access the Windows features is to use the GNATCOM
package. See Ada Power for more information. Lot of the features are supported
by the COM bindings (always up to date as it is generated from COM object
description) but is missing some of the Windows API... No perfect solution :)

Pascal.

-- 

--|------------------------------------------------------
--| Pascal Obry                           Team-Ada Member
--| 45, rue Gabriel Peri - 78114 Magny Les Hameaux FRANCE
--|------------------------------------------------------
--|         http://perso.wanadoo.fr/pascal.obry
--| "The best way to travel is by means of imagination"
--|
--| gpg --keyserver wwwkeys.pgp.net --recv-key C1082595



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
  2003-06-26 19:42                 ` Pascal Obry
@ 2003-06-26 21:02                   ` tmoran
  2003-06-26 21:34                     ` Frank J. Lhota
  2003-06-27  5:47                     ` Pascal Obry
  0 siblings, 2 replies; 16+ messages in thread
From: tmoran @ 2003-06-26 21:02 UTC (permalink / raw)


> but not quite up-to-date with current Win32 API as found in
If there are just a few functions that you need, or need to fix, it's not
hard to write your own function definition and pragma import.



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
  2003-06-26 21:02                   ` tmoran
@ 2003-06-26 21:34                     ` Frank J. Lhota
  2003-06-26 22:21                       ` tmoran
  2003-06-27  5:47                     ` Pascal Obry
  1 sibling, 1 reply; 16+ messages in thread
From: Frank J. Lhota @ 2003-06-26 21:34 UTC (permalink / raw)


<tmoran@acm.org> wrote in message news:RbJKa.26878$Ab2.50431@sccrnsc01...
> > but not quite up-to-date with current Win32 API as found in
> If there are just a few functions that you need, or need to fix, it's not
> hard to write your own function definition and pragma import.

Yes, but wouldn't it be nice to be able to share your work, so that someone
else does not have to save them the trouble?





^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
  2003-06-26 21:34                     ` Frank J. Lhota
@ 2003-06-26 22:21                       ` tmoran
  2003-06-27  7:36                         ` Martin Dowie
  0 siblings, 1 reply; 16+ messages in thread
From: tmoran @ 2003-06-26 22:21 UTC (permalink / raw)


> Yes, but wouldn't it be nice to be able to share your work, so that someone
> else does not have to save them the trouble?
Always to be desired.  But if the OP wants a couple of functions fixed
this afternoon, arranging for a general maintenance re-release might
not be the best way for him to go.



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
  2003-06-26 21:02                   ` tmoran
  2003-06-26 21:34                     ` Frank J. Lhota
@ 2003-06-27  5:47                     ` Pascal Obry
  1 sibling, 0 replies; 16+ messages in thread
From: Pascal Obry @ 2003-06-27  5:47 UTC (permalink / raw)



tmoran@acm.org writes:

> > but not quite up-to-date with current Win32 API as found in
> If there are just a few functions that you need, or need to fix, it's not
> hard to write your own function definition and pragma import.

Hum! Not hard to write ? The routine spec maybe but the right type
definition can be quite challenging !

Pascal.

-- 

--|------------------------------------------------------
--| Pascal Obry                           Team-Ada Member
--| 45, rue Gabriel Peri - 78114 Magny Les Hameaux FRANCE
--|------------------------------------------------------
--|         http://perso.wanadoo.fr/pascal.obry
--| "The best way to travel is by means of imagination"
--|
--| gpg --keyserver wwwkeys.pgp.net --recv-key C1082595



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
  2003-06-26 22:21                       ` tmoran
@ 2003-06-27  7:36                         ` Martin Dowie
       [not found]                           ` <m2d6gzu485.fsf@attglobal.net>
  0 siblings, 1 reply; 16+ messages in thread
From: Martin Dowie @ 2003-06-27  7:36 UTC (permalink / raw)


<tmoran@acm.org> wrote in message news:7mKKa.27085$Ab2.50425@sccrnsc01...
> Always to be desired.  But if the OP wants a couple of functions fixed
> this afternoon, arranging for a general maintenance re-release might
> not be the best way for him to go.

I can live with writing my own local 'fixed' version but it would have been
a whole lot nicer if there was a central "Win32Ada" repository instead of
having to tell each and every compiler vendor that their distro needs a
fix...





^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Errors in the Win32 bindings
       [not found]                           ` <m2d6gzu485.fsf@attglobal.net>
@ 2003-06-27 14:46                             ` Preben Randhol
  0 siblings, 0 replies; 16+ messages in thread
From: Preben Randhol @ 2003-06-27 14:46 UTC (permalink / raw)


Jerry van Dijk wrote:
> That would be nice. Even nicer would be to leave Win32Ada behind us and
> create a new thin binding based on the free and maintained W32API.
> Advantages would be 1) no MS copyright issues 2) up to date binding 3)
> includes the DDK 4) compatibily with just about any other language..

Putting it on sourceforge and giving it a GMGPL [*] license would be nice
too.

[*] Or some other license like it
-- 
Ada95 is good for you.
http://www.crystalcode.com/codemage/MainMenu/Coding/Ada/IntroducingAda.php



^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2003-06-27 14:46 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-06-24 11:22 Errors in the Win32 bindings Martin Dowie
2003-06-24 13:09 ` Frank J. Lhota
2003-06-24 13:47   ` Martin Dowie
2003-06-24 19:59     ` Frank J. Lhota
2003-06-24 20:50       ` Martin Dowie
2003-06-25  9:00         ` Pascal Obry
2003-06-25 13:17           ` Frank J. Lhota
2003-06-25 19:28             ` Pascal Obry
2003-06-25 20:22               ` Martin Dowie
2003-06-26 19:42                 ` Pascal Obry
2003-06-26 21:02                   ` tmoran
2003-06-26 21:34                     ` Frank J. Lhota
2003-06-26 22:21                       ` tmoran
2003-06-27  7:36                         ` Martin Dowie
     [not found]                           ` <m2d6gzu485.fsf@attglobal.net>
2003-06-27 14:46                             ` Preben Randhol
2003-06-27  5:47                     ` Pascal Obry

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox