All of lore.kernel.org
 help / color / mirror / Atom feed
* retriving a dhcp assigned ip
@ 2003-03-22 20:42 Massimiliano Cialdi
  2003-03-22 20:46 ` Jan-Benedict Glaw
  2003-03-22 22:06 ` Flávio de Ayra Mendes
  0 siblings, 2 replies; 3+ messages in thread
From: Massimiliano Cialdi @ 2003-03-22 20:42 UTC (permalink / raw)
  To: linux-c-programming

How can I retrive the ip address assigned to my host by a dhcp server?
I think I need to use ioctl with SIOCGIFADDR parameter, but I don't know
where the address is saved.

thanks

-- 
Massimiliano Cialdi
cialdi@firenze.net
m.cialdi@oksys.it
cialdi@control.dsi.unifi.it

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

* Re: retriving a dhcp assigned ip
  2003-03-22 20:42 retriving a dhcp assigned ip Massimiliano Cialdi
@ 2003-03-22 20:46 ` Jan-Benedict Glaw
  2003-03-22 22:06 ` Flávio de Ayra Mendes
  1 sibling, 0 replies; 3+ messages in thread
From: Jan-Benedict Glaw @ 2003-03-22 20:46 UTC (permalink / raw)
  To: linux-c-programming

[-- Attachment #1: Type: text/plain, Size: 765 bytes --]

On Sat, 2003-03-22 21:42:16 +0100, Massimiliano Cialdi <cialdi@firenze.net>
wrote in message <20030322214216.45bc5681.cialdi@firenze.net>:
> How can I retrive the ip address assigned to my host by a dhcp server?
> I think I need to use ioctl with SIOCGIFADDR parameter, but I don't know
> where the address is saved.

Look for a sample program that does the job. For example, "ifconfig"
from the net-tools package fetches the IP address...

MfG, JBG

-- 
   Jan-Benedict Glaw       jbglaw@lug-owl.de    . +49-172-7608481
   "Eine Freie Meinung in  einem Freien Kopf    | Gegen Zensur | Gegen Krieg
    fuer einen Freien Staat voll Freier Bürger" | im Internet! |   im Irak!
      ret = do_actions((curr | FREE_SPEECH) & ~(IRAQ_WAR_2 | DRM | TCPA));

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: retriving a dhcp assigned ip
  2003-03-22 20:42 retriving a dhcp assigned ip Massimiliano Cialdi
  2003-03-22 20:46 ` Jan-Benedict Glaw
@ 2003-03-22 22:06 ` Flávio de Ayra Mendes
  1 sibling, 0 replies; 3+ messages in thread
From: Flávio de Ayra Mendes @ 2003-03-22 22:06 UTC (permalink / raw)
  To: Massimiliano Cialdi; +Cc: linux-c-programming

[-- Attachment #1: Type: text/plain, Size: 221 bytes --]

Massimiliano Cialdi wrote:

>How can I retrive the ip address assigned to my host by a dhcp server?
>I think I need to use ioctl with SIOCGIFADDR parameter, but I don't know
>where the address is saved.
>
>thanks
>
>  
>

[-- Attachment #2: discoverip.c --]
[-- Type: text/x-csrc, Size: 1203 bytes --]

/* 
 * Wed Mar  3 16:21:48 EST 1999 - 
 * h4 <h4@locked.org>
 */

#include <stdio.h>
#include <errno.h>  
#include <string.h>

#include <sys/stat.h> /* socket() */
#include <sys/types.h> /* socket() */
#include <sys/ioctl.h> /* socket() */
#include <sys/socket.h> /* socket() */
#include <linux/if.h> /* ifreq */
#include <linux/in.h> /* sockaddr_in */

int main(int argc, char **argv)
{
  struct sockaddr_in *sk8;
  struct ifreq        r0x;

  int sockfd;

  if (argc != 2) {
    fprintf(stderr, "usage: %s <interface>\n", argv[0]);
    exit(1);
  }
  
  /* 
   * linux/if.h
   * #define ifr_name   ifr_ifrn.ifrn_name
   */
  strncpy(r0x.ifr_name, argv[1], sizeof(r0x.ifr_name));

  if ((sockfd = socket(AF_INET, SOCK_STREAM, IPPROTO_IP)) == -1) {
    fprintf(stderr, "socket(): %s\n", strerror(errno));
    exit(1);
  }

  if (ioctl(sockfd, SIOCGIFADDR, &r0x) != 0) {
    fprintf(stderr, "ioctl(): %s\n", strerror(errno));
    exit(1);
  }

  /*
   * linux/if.h
   * #define ifr_addr        ifr_ifru.ifru_addr
   */
  sk8 = (struct sockaddr_in *)&r0x.ifr_addr;

  fprintf(stdout, "interface : %s\n", r0x.ifr_name);
  fprintf(stdout, "address: %s\n", inet_ntoa(sk8->sin_addr.s_addr));

  return(0);
}


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

end of thread, other threads:[~2003-03-22 22:06 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-03-22 20:42 retriving a dhcp assigned ip Massimiliano Cialdi
2003-03-22 20:46 ` Jan-Benedict Glaw
2003-03-22 22:06 ` Flávio de Ayra Mendes

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.