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