Win98se and using SSHD as a TRUE service

Gerald Villemure GVillemure@ik.ca
Fri Nov 9 10:26:00 GMT 2001


I tried adding this code I grabbed from the VNC source:

  // Obtain a handle to the kernel library
  HINSTANCE kerneldll = LoadLibrary("KERNEL32.DLL");
  if (kerneldll == NULL)
     break;

  // And find the RegisterServiceProcess function
  DWORD (*RegisterService)(DWORD, DWORD);
  RegisterService = (DWORD (*)(DWORD, DWORD))
     GetProcAddress(kerneldll, "RegisterServiceProcess");
  if (RegisterService == NULL)
     break;

  // Register this process with the OS as a service!
  RegisterService(NULL, 1);

I put this in the file called daemon.c but I am unable to compile.

If I was to guess the problem lies in the fact that you can't mix and match
Win32 code with Unix code.

It looks like porting cygrunsrv to Win95 may be the only solution.

Le me know if there is any other avenue I can try.

Gerald
PS. Are there any open source "service control manager" packages out there?

----- Original Message -----
From: "Max Bowsher" <maxb@ukf.net>
To: "Gerald Villemure" <GVillemure@ik.ca>; <cygwin@cygwin.com>
Sent: Friday, November 09, 2001 2:34 PM
Subject: Re: Win98se and using SSHD as a TRUE service


> The elegant reusable solution would require the creation of a
cygrunsrv-like
> program for 9x/Me. Whilst none of the programming would be particularly
> challenging, the whole program would basically have to be rewritten,
because
> the 9x/Me service control manager is 100% different from the NT/2k SCM.
You
> are increasingly unlikely to find anyone who can be bothered to write the
> program, now that the 9x/Me product line is obsolete.
>
> A quick and dirty fix would be to add a call to RegisterServiceProcess[See
> Win32 API docs] in the initialization code of ssh, and recompile. That
would
> give you a version of ssh which would fix your problem (but wouldn't run
on
> NT/2k).
>
> Max Bowsher.
>
> ----- Original Message -----
> From: "Gerald Villemure" <GVillemure@ik.ca>
> To: <cygwin@cygwin.com>
> Sent: Friday, November 09, 2001 5:06 AM
> Subject: Win98se and using SSHD as a TRUE service
>
>
> > I would like to say that if I knew how to code I would be the first to
> > volunteer to develope a fix.  At this point I can mostly offer my time
as
> a
> > tester more then anything else.
> >
> > The issue is this:
> >
> > I put the following entry into the registry:
> >
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices]
> > "C:\\CYGWIN\\BIN\\BASH.EXE --login -c /usr/sbin/sshd"
> >
> > This starts SSHD as a service when the system boots but the problem is
> that
> > SSHD dosen't register itself as a true service. I can say this because I
> use
> > a tool to see the processes currently running on the box called WinTOP
> which
> > you can find here:
> >
> >
> http://www.microsoft.com/windows95/downloads/contents/wutoys/w95kerneltoy/
> > default.asp
> >
> > According to WinTOP my "VNC" process is a "system process" but my "SSHD"
> is
> > a normal user level process.
> >
> > I would not care either way but for the fact that if I login via SSHD
then
> > the next time the user logs out SSHD will DIE!
> >
> > Everythign else with regards to SSHD work VERY well.
> >
> > Last tested with:
> > Win98se
> > Cygwin 1.3.4-4
> > OpenSSH 3.0p1-1
> >
> > Thanks for any help,
> >
> > Gerald
> > --------------------------------------------------------------------
> > I n t e r K n o w l e d g e
> > Gerald Villemure
> > I am a DO-er, not a TRY-er.                  email: GVillemure@ik.ca




--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list