🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: de.comp.sys.next
7 messages
7 total messages Started by Tonio Seeger Wed, 22 Jul 1992 09:26
Proplem: Hostname
#49
Author: Tonio Seeger
Date: Wed, 22 Jul 1992 09:26
26 lines
1166 bytes
Hallo Leute,


Wie kann ein Programm den Namen des Hosts erfagen auf dem es gerade l uft?
Ich habe es auf folgende Art und Weisen probiert, bin aber nie zu den  
Hostnamen vorgedrungen !
(Der Name des Host ist ao_next1)

[NXApp hostName]  liefert eine NULLPointer

gethostent()	  aus <netdb.h>  liefert "localhost" ??

gethostname()	  aus <libc.h> liefert "tonio", also den UserNamen !?

Ist unsere NetInfo villeicht flasch konfiguriert, oder was mache ich  
falsch ?

Grusz Tonio

E-Mail: tonio@ao_next1.psych.th-darmstadt.de

Tonio Seeger
Fachbereich Psychologie
Hochschulstra e 1
TH-Darmstadt
6100 Darmstadt
Re: Proplem: Hostname
#56
Author: Thomas Neumann
Date: Wed, 22 Jul 1992 21:17
67 lines
2225 bytes
In article <1992Jul22.092650.10748@infoserver.th-darmstadt.de> tonio@ao_next2.psych.th-darmstadt.de (Tonio Seeger) writes:
>Hallo Leute,
>
>
>Wie kann ein Programm den Namen des Hosts erfagen auf dem es gerade l uft?
>Ich habe es auf folgende Art und Weisen probiert, bin aber nie zu den  
>Hostnamen vorgedrungen !
>(Der Name des Host ist ao_next1)
>

was sagt das `hostname' Kommando in der Shell ??

>
>gethostent()	  aus <netdb.h>  liefert "localhost" ??
>

Sure. Wenn das der `primary name' ist. NetInfo solltest du aber so
konfigurieren, dass 127.0.0.1 auch unter dem `richtigen' Namen be-
kannt ist, der `richtige' Name also ein Alias fuer `localhost' ist.
Wenn das so eingerichtet ist, dann kommst du ueber gethostent() auch
an alle anderen Namen:


struct    hostent {
	char *h_name;  /* official name of host */
	char **h_aliases;   /* alias list */
        int  h_addrtype;    /* host address type */
        int  h_length; /* length of address */
        char **h_addr_list; /* list of addresses from name server */
};

char **h_aliases ist ein Zeiger auf den ersten von n Zeigern auf
die Aliasnamen. Ende der Tabelle ist durch (char *)0 gekennzeichnet.


>gethostname()	  aus <libc.h> liefert "tonio", also den UserNamen !?
>

???

Also folgendes Prograemmchen klappt bei mir wie erwartet:


#include <stdio.h>
#include <stdlib.h>
#include <libc.h>
#include <sys/param.h>

int main(void)
{
        char hname[MAXHOSTNAMELEN + 1];

        if (gethostname(hname, sizeof hname) == 0) {
	        (void) puts(hname);
	        return EXIT_SUCCESS;
	}
	return EXIT_FAILURE;
}



>Ist unsere NetInfo villeicht flasch konfiguriert, oder was mache ich  
>falsch ?   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Sieht fast so aus...

bye -- Thomas
Re: Proplem: Hostname
#51
Author: Axel Zinser
Date: Thu, 23 Jul 1992 01:00
27 lines
1580 bytes
In article <1992Jul22.092650.10748@infoserver.th-darmstadt.de> tonio@ao_next2.psych.th-darmstadt.de (Tonio Seeger) writes:
>Hallo Leute,
>
>Wie kann ein Programm den Namen des Hosts erfagen auf dem es gerade l uft?
>Ich habe es auf folgende Art und Weisen probiert, bin aber nie zu den  
>Hostnamen vorgedrungen !
>(Der Name des Host ist ao_next1)
>
>[NXApp hostName]  liefert eine NULLPointer
>
>gethostent()	  aus <netdb.h>  liefert "localhost" ??
>
>gethostname()	  aus <libc.h> liefert "tonio", also den UserNamen !?
>
>Ist unsere NetInfo villeicht flasch konfiguriert, oder was mache ich  
>falsch ?

Irgendwas ist bei Euch faul. Beide Funktionen muessen den Rechnernamen
liefern. Bei gethostent() ist das Ergebnis ja auch ok - der Name ist
einer der hostent->h_aliases, aber auch gethostname() liefert den
Rechnernamen.

Gruss, fifi
-- 
Axel Zinser		+49 511 699945			       fifi@hiss.han.de
Uni Hildesheim, RZ	+49 5121 883577			 fifi@uni-hildesheim.de
		Expo 2000: Mensch? Natur? Technik!
Re: Proplem: Hostname
#57
Author: Imdat Solak
Date: Thu, 23 Jul 1992 22:17
46 lines
2101 bytes
tonio@ao_next2.psych.th-darmstadt.de (Tonio Seeger) writes:

> Hallo Leute,
> 
> 
> Wie kann ein Programm den Namen des Hosts erfagen auf dem es gerade l uft?
> Ich habe es auf folgende Art und Weisen probiert, bin aber nie zu den  
> Hostnamen vorgedrungen !
> (Der Name des Host ist ao_next1)
> 
> [NXApp hostName]  liefert eine NULLPointer
> 
> gethostent()	  aus <netdb.h>  liefert "localhost" ??
> 
> gethostname()	  aus <libc.h> liefert "tonio", also den UserNamen !?
> 
> Ist unsere NetInfo villeicht flasch konfiguriert, oder was mache ich  
> falsch ?
> 
Es kann eigentlich nicht angehen, dass Eure NetInfoDB falsch ist, aber ich
habe grade mal folgenden Code auf unserem Server in der Firma von zu
Hause remote-gestartet und es lieferte als Hostname [dart] (richtigerweise).

#import <libc.h>

int main ()
{
	char me[2048];
	gethostname(me,sizeof(me));
	fprintf(stdout,"[%s]\n",me);
	return 1;
}

sizeof(me) muss eigentlich MAXHOSTNAMELEN+1 sein, aber ich wusste nicht, ob
es in libc.h oder nicht, deswegen habe ich hardcoded 2048 genommen.

Versuch's mal auf Eurer Machine...


fgrussf -- im.dat
_______________________________________________________________________________
-   Imdat Solak - Hasselmannstr. 1 - 2300 Kiel 1 - Voice: ++49 431 67 59 89   -
-        Prinzenstrasse 16 - 2254 Friedrichtstadt - Voice:++49 4881 72 86     -
- Registered NeXTdeveloper - imdat@tpki.toppoint.de - No NeXTmail to this adr.-
- ****** Mehr als Schleswig-Holsteiner kann der Mensch nicht werden ********* -
-------------------------------------------------------------------------------
Re: Proplem: Hostname
#62
Author: Lytras Apostolos
Date: Fri, 24 Jul 1992 23:20
66 lines
2485 bytes
In article <1992Jul22.092650.10748@infoserver.th-darmstadt.de> tonio@ao_next2.psych.th-darmstadt.de (Tonio Seeger) writes:
>
>Ist unsere NetInfo villeicht flasch konfiguriert, oder was mache ich  
>falsch ?

Angehaengt an dieses Posting findest Du ein kleines Programm, das Dir
die verschiedenen Infos aus der netdb zieht. Es kompiliert auf NeXT auch
ganz gut, wie ich festgestellt habe, obwohl ich es urspruenglich fuer
ULTRIX geschrieben habe...

NetInfo scheint aber tatsaechlich etwas merkwuerdig konfiguriert zu
sein, habe es jedenfalls nicht geschafft, Dir was zu mailen...

Gruss
- Apostolos

PS: Beispiel Output fuer meine Maschine hier...

hostname:          avalon
network alias [1]: avalon
network alias [2]: av
network name:      avalon.unizh.ch

und die NeXT:

hostname:          xybrdyn
network alias [1]: localhost
network name:      xybrdyn

-------------- hier schnipseln ---------------
/**

   bhostname.c -- better 'hostname': get name info for local host
   July 8, 1992, Apostolos Lytras, lytras@avalon.physik.unizh.ch

**/

#include <stdio.h>
#include <sys/param.h>
#include <strings.h>
#include <netdb.h>

int main(void)
{
	char hostname[MAXHOSTNAMELEN+1];
	char netname[MAXHOSTNAMELEN+1];
	char altername[MAXHOSTNAMELEN+1];
	struct hostent *host_entry;
	int i=0;

	gethostname(hostname,MAXHOSTNAMELEN);
	printf("hostname:          %s\n",hostname);
	host_entry = gethostbyname (hostname);
	while (host_entry->h_aliases[i] != NULL) {
		strncpy (altername, host_entry->h_aliases[i], MAXHOSTNAMELEN);
		printf("network alias [%d]: %s\n",i+1,altername);
		i++;
	}
	strncpy (netname, host_entry->h_name, MAXHOSTNAMELEN);
	printf("network name:      %s\n",netname);
}

-- 
	 lytras@ifi.unizh.ch   		|   Apostolos Lytras
	 lytras@avalon.physik.unizh.ch	|   Informatik Club der Uni
	 lytras@amiga.physik.unizh.ch  	|   Zuerich, SysAdmin
Re: Proplem: Hostname
#63
Author: Lytras Apostolos
Date: Sat, 25 Jul 1992 05:07
66 lines
2461 bytes
In article <1992Jul22.092650.10748@infoserver.th-darmstadt.de> tonio@ao_next2.psych.th-darmstadt.de (Tonio Seeger) writes:
>
>Ist unsere NetInfo villeicht flasch konfiguriert, oder was mache ich  
>falsch ?

Angehaengt an dieses Posting findest Du ein kleines Programm, das Dir
die verschiedenen Infos aus der netdb zieht. Es kompiliert auf NeXT auch
ganz gut, wie ich festgestellt habe, obwohl ich es urspruenglich fuer
ULTRIX geschrieben habe...

NetInfo scheint aber tatsaechlich etwas merkwuerdig konfiguriert zu
sein, habe es jedenfalls nicht geschafft, Dir was zu mailen...

Gruss
- Apostolos

PS: Beispiel Output fuer meine Maschine hier...

hostname:          avalon
network alias [1]: avalon
network alias [2]: av
network name:      avalon.unizh.ch

und die NeXT:

hostname:          xybrdyn
network alias [1]: localhost
network name:      xybrdyn

-------------- hier schnipseln ---------------
/**

   bhostname.c -- better 'hostname': get name info for local host
   July 8, 1992, Apostolos Lytras, lytras@avalon.physik.unizh.ch

**/

#include <stdio.h>
#include <sys/param.h>
#include <strings.h>
#include <netdb.h>

int main(void)
{
	char hostname[MAXHOSTNAMELEN+1];
	char netname[MAXHOSTNAMELEN+1];
	char altername[MAXHOSTNAMELEN+1];
	struct hostent *host_entry;
	int i=0;

	gethostname(hostname,MAXHOSTNAMELEN);
	printf("hostname:          %s\n",hostname);
	host_entry = gethostbyname (hostname);
	while (host_entry->h_aliases[i] != NULL) {
		strncpy (altername, host_entry->h_aliases[i], MAXHOSTNAMELEN);
		printf("network alias [%d]: %s\n",i+1,altername);
		i++;
	}
	strncpy (netname, host_entry->h_name, MAXHOSTNAMELEN);
	printf("network name:      %s\n",netname);
}
----------- hier wieder schnipseln ------------
-- 
	 lytras@ifi.unizh.ch   		|   Apostolos Lytras
	 lytras@avalon.physik.unizh.ch	|   Informatik Club der Uni
	 lytras@amiga.physik.unizh.ch  	|   Zuerich, SysAdmin
Re: Proplem: Hostname
#64
Author: Lytras Apostolos
Date: Sat, 25 Jul 1992 05:12
9 lines
928 bytes
Naja... bevor man mich jetzt nieder`flame`t... meine letzte Message kam
scheinbar 2 mal hier rein... irgendwas lief beim ersten posten schief,
und dafuer war der zweite Versuch doppelt erfolgreich.. tut mir leid...

- A.
-- 
	 lytras@ifi.unizh.ch   		|   Apostolos Lytras
	 lytras@avalon.physik.unizh.ch	|   Informatik Club der Uni
	 lytras@amiga.physik.unizh.ch  	|   Zuerich, SysAdmin
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads