|
|
researchv10 Norman
/*
* A R P C O N F I G
*
* Ethernet address resolution setup procedure.
* For use with the Chaosnet Line Discipline and/or TCP/IP.
* Invoked from 'netconfig' with fd 0 open to an ethernet channel.
*
*
* (c) Copyright 1985 Nirvonics, Inc.
*
* Written by Kurt Gollhardt
* Last update Thu Mar 14 13:24:01 1985
*
* This software is the property of Nirvonics, Inc.
* All rights reserved.
*
*/
#include <stdio.h>
#include <sys/ioctl.h>
#include <sys/types.h>
#include <sys/order.h>
#include <sys/ethernet.h>
extern int arp_ld;
int arp_type;
main(ac,av)
char **av;
{
unsigned char en_addr[6];
int i;
if (ioctl(0, FIOPUSHLD, &arp_ld) < 0) {
fprintf(stderr, "Can't push arp line discipline\n");
exit(1);
}
arp_type = hfirst_short(ETHERPUP_ARPTYPE);
if (ioctl(0, ENIOTYPE, &arp_type) < 0) {
fprintf(stderr, "Can't set arp type\n");
exit(1);
}
if (ioctl(0, ENIOADDR, en_addr) < 0) {
fprintf(stderr, "Can't get ethernet address\n");
exit(1);
}
printf("%s: running on ethernet", av[0]);
for (i = 0; i < 6; i++)
printf(" %02x", en_addr[i]);
putchar('\n');
fflush(stdout);
pause();
}
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.