// 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: __dynamic_netdev_dbg // with type: int __dynamic_netdev_dbg(struct _ddebug *, const struct net_device *, const char *, ...) // with return type: int int __VERIFIER_nondet_int(void); int __dynamic_netdev_dbg(struct _ddebug *arg0, const struct net_device *arg1, const char *arg2, ...) { // Simple type return __VERIFIER_nondet_int(); } // Function: __dynamic_pr_debug // with type: int __dynamic_pr_debug(struct _ddebug *, const char *, ...) // with return type: int int __VERIFIER_nondet_int(void); int __dynamic_pr_debug(struct _ddebug *arg0, const char *arg1, ...) { // Simple type return __VERIFIER_nondet_int(); } // 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: __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: __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: __symbol_get // with type: void *__symbol_get(const char *) // with return type: (void)* void *__symbol_get(const char *arg0) { // Pointer type return ldv_malloc(0UL); } // Function: __symbol_put // with type: void __symbol_put(const char *) // with return type: void void __symbol_put(const char *arg0) { // 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: _raw_spin_lock_bh // with type: void _raw_spin_lock_bh(raw_spinlock_t *) // with return type: void void _raw_spin_lock_bh(raw_spinlock_t *arg0) { // Void type return; } // Function: _raw_spin_unlock_bh // with type: void _raw_spin_unlock_bh(raw_spinlock_t *) // with return type: void void _raw_spin_unlock_bh(raw_spinlock_t *arg0) { // Void type return; } // Skip function: calloc // 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_close // with type: int dev_close(struct net_device *) // with return type: int int __VERIFIER_nondet_int(void); int dev_close(struct net_device *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: dump_stack // with type: void dump_stack() // with return type: void void dump_stack() { // 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; } // Function: flush_workqueue // with type: void flush_workqueue(struct workqueue_struct *) // with return type: void void flush_workqueue(struct workqueue_struct *arg0) { // Void type return; } // Skip function: kfree // Function: ldv_init_4 // with type: int ldv_init_4() // with return type: int int __VERIFIER_nondet_int(void); int ldv_init_4() { // Simple type return __VERIFIER_nondet_int(); } // Function: ldv_ndo_init_5 // with type: int ldv_ndo_init_5() // with return type: int int __VERIFIER_nondet_int(void); int ldv_ndo_init_5() { // Simple type return __VERIFIER_nondet_int(); } // Function: ldv_release_4 // with type: int ldv_release_4() // with return type: int int __VERIFIER_nondet_int(void); int ldv_release_4() { // Simple type return __VERIFIER_nondet_int(); } // 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: 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: mod_timer_pending // with type: int mod_timer_pending(struct timer_list *, unsigned long) // with return type: int int __VERIFIER_nondet_int(void); int mod_timer_pending(struct timer_list *arg0, unsigned long arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: netdev_err // with type: int netdev_err(const struct net_device *, const char *, ...) // with return type: int int __VERIFIER_nondet_int(void); int netdev_err(const struct net_device *arg0, const char *arg1, ...) { // Simple type return __VERIFIER_nondet_int(); } // Function: netdev_state_change // with type: void netdev_state_change(struct net_device *) // with return type: void void netdev_state_change(struct net_device *arg0) { // Void type return; } // Function: netdev_warn // with type: int netdev_warn(const struct net_device *, const char *, ...) // with return type: int int __VERIFIER_nondet_int(void); int netdev_warn(const struct net_device *arg0, const char *arg1, ...) { // Simple type return __VERIFIER_nondet_int(); } // Function: nla_put // with type: int nla_put(struct sk_buff *, int, int, const void *) // with return type: int int __VERIFIER_nondet_int(void); int nla_put(struct sk_buff *arg0, int arg1, int arg2, const void *arg3) { // 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: print_hex_dump // with type: void print_hex_dump(const char *, const char *, int, int, int, const void *, size_t , bool ) // with return type: void void print_hex_dump(const char *arg0, const char *arg1, int arg2, int arg3, int arg4, const void *arg5, size_t arg6, bool arg7) { // Void type return; } // Function: printk // with type: int printk(const char *, ...) // with return type: int int __VERIFIER_nondet_int(void); int printk(const char *arg0, ...) { // Simple type return __VERIFIER_nondet_int(); } // 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: register_netdevice // with type: int register_netdevice(struct net_device *) // with return type: int int __VERIFIER_nondet_int(void); int register_netdevice(struct net_device *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: rtnl_is_locked // with type: int rtnl_is_locked() // with return type: int int __VERIFIER_nondet_int(void); int rtnl_is_locked() { // Simple type return __VERIFIER_nondet_int(); } // Function: rtnl_link_register // with type: int rtnl_link_register(struct rtnl_link_ops *) // with return type: int int __VERIFIER_nondet_int(void); int rtnl_link_register(struct rtnl_link_ops *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: rtnl_link_unregister // with type: void rtnl_link_unregister(struct rtnl_link_ops *) // with return type: void void rtnl_link_unregister(struct rtnl_link_ops *arg0) { // Void type return; } // 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_copy_bits // with type: int skb_copy_bits(const struct sk_buff *, int, void *, int) // with return type: int int __VERIFIER_nondet_int(void); int skb_copy_bits(const struct sk_buff *arg0, int arg1, void *arg2, int arg3) { // Simple type return __VERIFIER_nondet_int(); } // 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: skb_queue_tail // with type: void skb_queue_tail(struct sk_buff_head *, struct sk_buff *) // with return type: void void skb_queue_tail(struct sk_buff_head *arg0, struct sk_buff *arg1) { // Void type return; } // Function: unregister_netdev // with type: void unregister_netdev(struct net_device *) // with return type: void void unregister_netdev(struct net_device *arg0) { // Void type return; } // 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; }