• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Network interface definitions for the CUPS scheduler.
3  *
4  * Copyright © 2020-2024 by OpenPrinting.
5  * Copyright © 2007-2010 by Apple Inc.
6  * Copyright © 1997-2006 by Easy Software Products, all rights reserved.
7  *
8  * Licensed under Apache License v2.0.  See the file "LICENSE" for more
9  * information.
10  */
11 
12 /*
13  * Structures...
14  */
15 
16 typedef struct cupsd_netif_s		/**** Network interface data ****/
17 {
18   int			is_local,	/* Local (not point-to-point) interface? */
19 			port;		/* Listen port */
20   http_addr_t		address,	/* Network address */
21 			mask,		/* Network mask */
22 			broadcast;	/* Broadcast address */
23   size_t		hostlen;	/* Length of hostname */
24   char			name[32],	/* Network interface name */
25 			hostname[1];	/* Hostname associated with interface */
26 } cupsd_netif_t;
27 
28 
29 /*
30  * Globals...
31  */
32 
33 VAR int			NetIFUpdate	VALUE(1);
34 					/* Network interface list needs updating */
35 VAR cups_array_t	*NetIFList	VALUE(NULL);
36 					/* Array of network interfaces */
37 
38 /*
39  * Prototypes...
40  */
41 
42 extern cupsd_netif_t	*cupsdNetIFFind(const char *name);
43 extern void		cupsdNetIFUpdate(void);
44