functions.h revision b00044a2eb43864b8718585d21949611a2ee59ef
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * CDDL HEADER START
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * The contents of this file are subject to the terms of the
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * Common Development and Distribution License (the "License").
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * You may not use this file except in compliance with the License.
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * or http://www.opensolaris.org/os/licensing.
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * See the License for the specific language governing permissions
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * and limitations under the License.
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * When distributing Covered Code, include this CDDL HEADER in each
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * If applicable, add the following below this CDDL HEADER, with the
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * fields enclosed by brackets "[]" replaced with your own identifying
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * information: Portions Copyright [yyyy] [name of copyright owner]
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * CDDL HEADER END
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev * Use is subject to license terms.
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev/* door.c: door-based control/status interface */
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void initialize_door(void);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void terminate_door(void);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void report_interface_up(const char *, struct in_addr, int);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void report_interface_down(const char *, libnwam_diag_cause_t);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void report_interface_added(const char *);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void report_interface_removed(const char *);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void report_wlan_connect_fail(const char *);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void report_wlan_disconnect(const struct wireless_lan *);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void report_wlan_connected(const struct wireless_lan *);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void report_llp_selected(const char *);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void report_llp_unselected(const char *, libnwam_diag_cause_t);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void report_ulp_activated(const char *);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void report_ulp_deactivated(const char *);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void report_scan_complete(const char *, boolean_t,
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev const struct wireless_lan *, int);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern boolean_t request_wlan_key(struct wireless_lan *);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern boolean_t request_wlan_selection(const char *,
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev const struct wireless_lan *, int);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyev/* events.c: event queue handling */
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern void free_event(struct np_event *);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern boolean_t np_queue_add_event(enum np_event_type, const char *);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern struct np_event *np_queue_get_event(void);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern const char *npe_type_str(enum np_event_type);
5ee8e422dc45ae866a24584daa90397099b2f01bKonstantin Ananyevextern boolean_t start_event_collection(void);
/* interface.c: interface and upper layer profile handling */
extern void initialize_interfaces(void);
extern void remove_interface(const char *);
extern void update_interface_flags(const char *, int);
extern void show_if_status(const char *);
extern void clear_cached_address(const char *);
extern void deactivate_upper_layer_profile(void);
extern void print_interface_status(void);
/* wireless.c: wifi link handling */
extern void initialize_wireless(void);
extern void add_wireless_if(const char *);
extern void remove_wireless_if(const char *);
extern int add_known_ap(const char *, const char *);
extern int delete_known_ap(const char *, const char *);
extern void *periodic_wireless_scan(void *);
extern int set_specific_lan(const char *, const char *, const char *);
extern int set_wlan_key(const char *, const char *, const char *, const char *);
extern int launch_wireless_scan(const char *);
extern void disconnect_wlan(const char *);
extern void print_wireless_status(void);
/* llp.c: link layer profile handling */
extern void initialize_llp(void);
extern void llp_parse_config(void);
extern int set_llp_priority(const char *, int);
extern int set_locked_llp(const char *);
extern void llp_reselect(void);
extern void print_llp_status(void);
/* state_machine.c: state machine handling */
extern void cleanup(void);
/* util.c: utility & ipc functions */
extern void dprintf(const char *, ...);
extern void zero_out_v4addr(const char *);
extern int start_childv(const char *, char const * const *);
extern int start_child(const char *, ...);