// Skip function: __VERIFIER_error // Skip function: __VERIFIER_nondet_int // Skip function: __VERIFIER_nondet_ulong // Function: __alloc_workqueue_key // with type: struct workqueue_struct *__alloc_workqueue_key(const char *, unsigned int, int, struct lock_class_key *, const char *, ...) // with return type: (struct workqueue_struct)* struct workqueue_struct *__alloc_workqueue_key(const char *arg0, unsigned int arg1, int arg2, struct lock_class_key *arg3, const char *arg4, ...) { // Pointer type return ldv_malloc(0UL); } // Function: __compiletime_assert_1468 // with type: void __compiletime_assert_1468() // with return type: void void __compiletime_assert_1468() { // Void type return; } // Function: __compiletime_assert_1469 // with type: void __compiletime_assert_1469() // with return type: void void __compiletime_assert_1469() { // Void type return; } // Function: __compiletime_assert_804 // with type: void __compiletime_assert_804() // with return type: void void __compiletime_assert_804() { // Void type return; } // Function: __dev_kfree_skb_irq // with type: void __dev_kfree_skb_irq(struct sk_buff *, enum skb_free_reason ) // with return type: void void __dev_kfree_skb_irq(struct sk_buff *arg0, enum skb_free_reason arg1) { // Void type return; } // Function: __dynamic_dev_dbg // with type: void __dynamic_dev_dbg(struct _ddebug *, const struct device *, const char *, ...) // with return type: void void __dynamic_dev_dbg(struct _ddebug *arg0, const struct device *arg1, const char *arg2, ...) { // Void type return; } // Function: __init_waitqueue_head // with type: void __init_waitqueue_head(wait_queue_head_t *, const char *, struct lock_class_key *) // with return type: void void __init_waitqueue_head(wait_queue_head_t *arg0, const char *arg1, struct lock_class_key *arg2) { // Void type return; } // Function: __init_work // with type: void __init_work(struct work_struct *, int) // with return type: void void __init_work(struct work_struct *arg0, int arg1) { // Void type return; } // Function: __ldv_linux_kernel_locking_spinlock_spin_lock // with type: void __ldv_linux_kernel_locking_spinlock_spin_lock(spinlock_t *) // with return type: void void __ldv_linux_kernel_locking_spinlock_spin_lock(spinlock_t *arg0) { // Void type return; } // Function: __list_add // with type: void __list_add(struct list_head *, struct list_head *, struct list_head *) // with return type: void void __list_add(struct list_head *arg0, struct list_head *arg1, struct list_head *arg2) { // Void type return; } // Function: __list_del_entry // with type: void __list_del_entry(struct list_head *) // with return type: void void __list_del_entry(struct list_head *arg0) { // Void type return; } // Function: __might_sleep // with type: void __might_sleep(const char *, int, int) // with return type: void void __might_sleep(const char *arg0, int arg1, int arg2) { // Void type return; } // Function: __mutex_init // with type: void __mutex_init(struct mutex *, const char *, struct lock_class_key *) // with return type: void void __mutex_init(struct mutex *arg0, const char *arg1, struct lock_class_key *arg2) { // Void type return; } // Function: __raw_spin_lock_init // with type: void __raw_spin_lock_init(raw_spinlock_t *, const char *, struct lock_class_key *) // with return type: void void __raw_spin_lock_init(raw_spinlock_t *arg0, const char *arg1, struct lock_class_key *arg2) { // Void type return; } // Function: __wake_up // with type: void __wake_up(wait_queue_head_t *, unsigned int, int, void *) // with return type: void void __wake_up(wait_queue_head_t *arg0, unsigned int arg1, int arg2, void *arg3) { // Void type return; } // Function: _dev_info // with type: void _dev_info(const struct device *, const char *, ...) // with return type: void void _dev_info(const struct device *arg0, const char *arg1, ...) { // Void type return; } // Function: _raw_spin_unlock_irqrestore // with type: void _raw_spin_unlock_irqrestore(raw_spinlock_t *, unsigned long) // with return type: void void _raw_spin_unlock_irqrestore(raw_spinlock_t *arg0, unsigned long arg1) { // Void type return; } // Skip function: calloc // Function: cancel_delayed_work // with type: bool cancel_delayed_work(struct delayed_work *) // with return type: bool bool __VERIFIER_nondet_bool(void); bool cancel_delayed_work(struct delayed_work *arg0) { // Typedef type // Real type: _Bool // Simple type return __VERIFIER_nondet_bool(); } // Function: cancel_delayed_work_sync // with type: bool cancel_delayed_work_sync(struct delayed_work *) // with return type: bool bool __VERIFIER_nondet_bool(void); bool cancel_delayed_work_sync(struct delayed_work *arg0) { // Typedef type // Real type: _Bool // Simple type return __VERIFIER_nondet_bool(); } // Function: cancel_work_sync // with type: bool cancel_work_sync(struct work_struct *) // with return type: bool bool __VERIFIER_nondet_bool(void); bool cancel_work_sync(struct work_struct *arg0) { // Typedef type // Real type: _Bool // Simple type return __VERIFIER_nondet_bool(); } // Function: complete // with type: void complete(struct completion *) // with return type: void void complete(struct completion *arg0) { // Void type return; } // Function: del_timer // with type: int del_timer(struct timer_list *) // with return type: int int __VERIFIER_nondet_int(void); int del_timer(struct timer_list *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: del_timer_sync // with type: int del_timer_sync(struct timer_list *) // with return type: int int __VERIFIER_nondet_int(void); int del_timer_sync(struct timer_list *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: destroy_workqueue // with type: void destroy_workqueue(struct workqueue_struct *) // with return type: void void destroy_workqueue(struct workqueue_struct *arg0) { // Void type return; } // Function: dev_err // with type: void dev_err(const struct device *, const char *, ...) // with return type: void void dev_err(const struct device *arg0, const char *arg1, ...) { // Void type return; } // Function: finish_wait // with type: void finish_wait(wait_queue_head_t *, wait_queue_t *) // with return type: void void finish_wait(wait_queue_head_t *arg0, wait_queue_t *arg1) { // Void type return; } // Skip function: free // Function: ieee80211_alloc_hw_nm // with type: struct ieee80211_hw *ieee80211_alloc_hw_nm(size_t , const struct ieee80211_ops *, const char *) // with return type: (struct ieee80211_hw)* struct ieee80211_hw *ieee80211_alloc_hw_nm(size_t arg0, const struct ieee80211_ops *arg1, const char *arg2) { // Pointer type return ldv_malloc(sizeof(struct ieee80211_hw)); } // Function: ieee80211_find_sta // with type: struct ieee80211_sta *ieee80211_find_sta(struct ieee80211_vif *, const u8 *) // with return type: (struct ieee80211_sta)* struct ieee80211_sta *ieee80211_find_sta(struct ieee80211_vif *arg0, const u8 *arg1) { // Pointer type return ldv_malloc(sizeof(struct ieee80211_sta)); } // Function: ieee80211_free_hw // with type: void ieee80211_free_hw(struct ieee80211_hw *) // with return type: void void ieee80211_free_hw(struct ieee80211_hw *arg0) { // Void type return; } // Function: ieee80211_free_txskb // with type: void ieee80211_free_txskb(struct ieee80211_hw *, struct sk_buff *) // with return type: void void ieee80211_free_txskb(struct ieee80211_hw *arg0, struct sk_buff *arg1) { // Void type return; } // Function: ieee80211_get_hdrlen_from_skb // with type: unsigned int ieee80211_get_hdrlen_from_skb(const struct sk_buff *) // with return type: unsigned int unsigned int __VERIFIER_nondet_uint(void); unsigned int ieee80211_get_hdrlen_from_skb(const struct sk_buff *arg0) { // Simple type return __VERIFIER_nondet_uint(); } // Function: ieee80211_queue_delayed_work // with type: void ieee80211_queue_delayed_work(struct ieee80211_hw *, struct delayed_work *, unsigned long) // with return type: void void ieee80211_queue_delayed_work(struct ieee80211_hw *arg0, struct delayed_work *arg1, unsigned long arg2) { // Void type return; } // Function: ieee80211_queue_work // with type: void ieee80211_queue_work(struct ieee80211_hw *, struct work_struct *) // with return type: void void ieee80211_queue_work(struct ieee80211_hw *arg0, struct work_struct *arg1) { // Void type return; } // Function: ieee80211_register_hw // with type: int ieee80211_register_hw(struct ieee80211_hw *) // with return type: int int __VERIFIER_nondet_int(void); int ieee80211_register_hw(struct ieee80211_hw *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: ieee80211_rx_irqsafe // with type: void ieee80211_rx_irqsafe(struct ieee80211_hw *, struct sk_buff *) // with return type: void void ieee80211_rx_irqsafe(struct ieee80211_hw *arg0, struct sk_buff *arg1) { // Void type return; } // Function: ieee80211_stop_queues // with type: void ieee80211_stop_queues(struct ieee80211_hw *) // with return type: void void ieee80211_stop_queues(struct ieee80211_hw *arg0) { // Void type return; } // Function: ieee80211_tx_status_irqsafe // with type: void ieee80211_tx_status_irqsafe(struct ieee80211_hw *, struct sk_buff *) // with return type: void void ieee80211_tx_status_irqsafe(struct ieee80211_hw *arg0, struct sk_buff *arg1) { // Void type return; } // Function: ieee80211_unregister_hw // with type: void ieee80211_unregister_hw(struct ieee80211_hw *) // with return type: void void ieee80211_unregister_hw(struct ieee80211_hw *arg0) { // Void type return; } // Function: ieee80211_wake_queues // with type: void ieee80211_wake_queues(struct ieee80211_hw *) // with return type: void void ieee80211_wake_queues(struct ieee80211_hw *arg0) { // Void type return; } // Function: init_timer_key // with type: void init_timer_key(struct timer_list *, unsigned int, const char *, struct lock_class_key *) // with return type: void void init_timer_key(struct timer_list *arg0, unsigned int arg1, const char *arg2, struct lock_class_key *arg3) { // Void type return; } // Skip function: kfree // Function: kfree_skb // with type: void kfree_skb(struct sk_buff *) // with return type: void void kfree_skb(struct sk_buff *arg0) { // Void type return; } // Function: ldv_after_alloc // with type: void ldv_after_alloc(void *) // with return type: void void ldv_after_alloc(void *arg0) { // Void type return; } // Function: ldv_assert // with type: void ldv_assert(const char *, int) // with return type: void void ldv_assert(const char *arg0, int arg1) { // Void type return; } // Function: ldv_pre_probe // with type: void ldv_pre_probe() // with return type: void void ldv_pre_probe() { // Void type return; } // Function: list_del // with type: void list_del(struct list_head *) // with return type: void void list_del(struct list_head *arg0) { // Void type return; } // Function: lockdep_init_map // with type: void lockdep_init_map(struct lockdep_map *, const char *, struct lock_class_key *, int) // with return type: void void lockdep_init_map(struct lockdep_map *arg0, const char *arg1, struct lock_class_key *arg2, int arg3) { // Void type return; } // Skip function: malloc // Skip function: memcpy // Skip function: memmove // Skip function: memset // Function: mod_timer // with type: int mod_timer(struct timer_list *, unsigned long) // with return type: int int __VERIFIER_nondet_int(void); int mod_timer(struct timer_list *arg0, unsigned long arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: prepare_to_wait_event // with type: long int prepare_to_wait_event(wait_queue_head_t *, wait_queue_t *, int) // with return type: long int long __VERIFIER_nondet_long(void); long int prepare_to_wait_event(wait_queue_head_t *arg0, wait_queue_t *arg1, int arg2) { // Simple type return __VERIFIER_nondet_long(); } // Function: queue_work_on // with type: bool queue_work_on(int, struct workqueue_struct *, struct work_struct *) // with return type: bool bool __VERIFIER_nondet_bool(void); bool queue_work_on(int arg0, struct workqueue_struct *arg1, struct work_struct *arg2) { // Typedef type // Real type: _Bool // Simple type return __VERIFIER_nondet_bool(); } // Function: release_firmware // with type: void release_firmware(const struct firmware *) // with return type: void void release_firmware(const struct firmware *arg0) { // Void type return; } // Function: request_firmware // with type: int request_firmware(const struct firmware **, const char *, struct device *) // with return type: int int __VERIFIER_nondet_int(void); int request_firmware(const struct firmware **arg0, const char *arg1, struct device *arg2) { // Simple type return __VERIFIER_nondet_int(); } // Function: rtnl_lock // with type: void rtnl_lock() // with return type: void void rtnl_lock() { // Void type return; } // Function: rtnl_unlock // with type: void rtnl_unlock() // with return type: void void rtnl_unlock() { // Void type return; } // Function: schedule_timeout // with type: long int schedule_timeout(long) // with return type: long int long __VERIFIER_nondet_long(void); long int schedule_timeout(long arg0) { // Simple type return __VERIFIER_nondet_long(); } // Function: skb_pull // with type: unsigned char *skb_pull(struct sk_buff *, unsigned int) // with return type: (unsigned char)* unsigned char *skb_pull(struct sk_buff *arg0, unsigned int arg1) { // Pointer type return ldv_malloc(sizeof(unsigned char)); } // Function: skb_push // with type: unsigned char *skb_push(struct sk_buff *, unsigned int) // with return type: (unsigned char)* unsigned char *skb_push(struct sk_buff *arg0, unsigned int arg1) { // Pointer type return ldv_malloc(sizeof(unsigned char)); } // Function: skb_put // with type: unsigned char *skb_put(struct sk_buff *, unsigned int) // with return type: (unsigned char)* unsigned char *skb_put(struct sk_buff *arg0, unsigned int arg1) { unsigned char *ret_val = arg0->data + arg0->tail; // a more precise implementation of skb_put would actually re-allocate memory // here arg0->tail += arg1; // Pointer type return ret_val; } // Function: usb_bulk_msg // with type: int usb_bulk_msg(struct usb_device *, unsigned int, void *, int, int *, int) // with return type: int int __VERIFIER_nondet_int(void); int usb_bulk_msg(struct usb_device *arg0, unsigned int arg1, void *arg2, int arg3, int *arg4, int arg5) { // Simple type return __VERIFIER_nondet_int(); } // Function: usb_deregister // with type: void usb_deregister(struct usb_driver *) // with return type: void void usb_deregister(struct usb_driver *arg0) { // Void type return; } // Function: usb_kill_urb // with type: void usb_kill_urb(struct urb *) // with return type: void void usb_kill_urb(struct urb *arg0) { // Void type return; } // Function: usb_register_driver // with type: int usb_register_driver(struct usb_driver *, struct module *, const char *) // with return type: int int __VERIFIER_nondet_int(void); int usb_register_driver(struct usb_driver *arg0, struct module *arg1, const char *arg2) { // Simple type return __VERIFIER_nondet_int(); } // Function: wait_for_completion_timeout // with type: unsigned long int wait_for_completion_timeout(struct completion *, unsigned long) // with return type: unsigned long int unsigned long __VERIFIER_nondet_ulong(void); unsigned long int wait_for_completion_timeout(struct completion *arg0, unsigned long arg1) { // Simple type return __VERIFIER_nondet_ulong(); } // Function: warn_slowpath_null // with type: void warn_slowpath_null(const char *, const int) // with return type: void void warn_slowpath_null(const char *arg0, const int arg1) { // Void type return; }