// Skip function: __VERIFIER_error // Skip function: __VERIFIER_nondet_int // Skip function: __VERIFIER_nondet_loff_t // Skip function: __VERIFIER_nondet_size_t // Skip function: __VERIFIER_nondet_u16 // Skip function: __VERIFIER_nondet_u32 // Skip function: __VERIFIER_nondet_ulong // Function: ___pskb_trim // with type: int ___pskb_trim(struct sk_buff *, unsigned int) // with return type: int int __VERIFIER_nondet_int(void); int ___pskb_trim(struct sk_buff *arg0, unsigned int arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: __alloc_percpu // with type: void *__alloc_percpu(size_t , size_t ) // with return type: (void)* void *__alloc_percpu(size_t arg0, size_t arg1) { // Pointer type return ldv_malloc(0UL); } // 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: __bitmap_shift_left // with type: void __bitmap_shift_left(unsigned long *, const unsigned long *, int, int) // with return type: void void __bitmap_shift_left(unsigned long *arg0, const unsigned long *arg1, int arg2, int arg3) { // Void type return; } // Function: __bitmap_weight // with type: int __bitmap_weight(const unsigned long *, int) // with return type: int int __VERIFIER_nondet_int(void); int __bitmap_weight(const unsigned long *arg0, int arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: __compiletime_assert_247 // with type: void __compiletime_assert_247() // with return type: void void __compiletime_assert_247() { // Void type return; } // Function: __compiletime_assert_262 // with type: void __compiletime_assert_262() // with return type: void void __compiletime_assert_262() { // Void type return; } // Function: __compiletime_assert_350 // with type: void __compiletime_assert_350() // with return type: void void __compiletime_assert_350() { // Void type return; } // Function: __compiletime_assert_402 // with type: void __compiletime_assert_402() // with return type: void void __compiletime_assert_402() { // Void type return; } // Function: __copy_from_user_overflow // with type: void __copy_from_user_overflow() // with return type: void void __copy_from_user_overflow() { // Void type return; } // Function: __copy_to_user_overflow // with type: void __copy_to_user_overflow() // with return type: void void __copy_to_user_overflow() { // Void type return; } // Function: __dev_get_by_index // with type: struct net_device *__dev_get_by_index(struct net *, int) // with return type: (struct net_device)* struct net_device *__dev_get_by_index(struct net *arg0, int arg1) { // Pointer type return ldv_malloc(sizeof(struct net_device)); } // Function: __dev_kfree_skb_any // with type: void __dev_kfree_skb_any(struct sk_buff *, enum skb_free_reason ) // with return type: void void __dev_kfree_skb_any(struct sk_buff *arg0, enum skb_free_reason arg1) { // Void type return; } // 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: __list_add_rcu // with type: void __list_add_rcu(struct list_head *, struct list_head *, struct list_head *) // with return type: void void __list_add_rcu(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: __netdev_alloc_skb // with type: struct sk_buff *__netdev_alloc_skb(struct net_device *, unsigned int, gfp_t ) // with return type: (struct sk_buff)* struct sk_buff *__netdev_alloc_skb(struct net_device *arg0, unsigned int arg1, gfp_t arg2) { // Pointer type struct sk_buff *skb = ldv_malloc(sizeof(struct sk_buff)); if(skb) { skb->dev = arg0; skb->head = ldv_malloc(arg1); skb->data = skb->head; skb->tail = 0; } return skb; } // Function: __pskb_copy_fclone // with type: struct sk_buff *__pskb_copy_fclone(struct sk_buff *, int, gfp_t , bool ) // with return type: (struct sk_buff)* struct sk_buff *__pskb_copy_fclone(struct sk_buff *arg0, int arg1, gfp_t arg2, bool arg3) { // Pointer type return ldv_malloc(sizeof(struct sk_buff)); } // Function: __pskb_pull_tail // with type: unsigned char *__pskb_pull_tail(struct sk_buff *, int) // with return type: (unsigned char)* unsigned char *__pskb_pull_tail(struct sk_buff *arg0, int arg1) { // Pointer type return ldv_malloc(sizeof(unsigned char)); } // 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: _copy_from_user // with type: unsigned long int _copy_from_user(void *, const void *, unsigned int) // with return type: unsigned long int unsigned long __VERIFIER_nondet_ulong(void); unsigned long int _copy_from_user(void *arg0, const void *arg1, unsigned int arg2) { // Simple type return __VERIFIER_nondet_ulong(); } // Function: _copy_to_user // with type: unsigned long int _copy_to_user(void *, const void *, unsigned int) // with return type: unsigned long int unsigned long __VERIFIER_nondet_ulong(void); unsigned long int _copy_to_user(void *arg0, const void *arg1, unsigned int arg2) { // Simple type return __VERIFIER_nondet_ulong(); } // 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; } // Function: alloc_netdev_mqs // with type: struct net_device *alloc_netdev_mqs(int, const char *, void (*)(struct net_device *), unsigned int, unsigned int) // with return type: (struct net_device)* struct net_device *alloc_netdev_mqs(int arg0, const char *arg1, void (*arg2)(struct net_device *), unsigned int arg3, unsigned int arg4) { // Pointer type return ldv_malloc(sizeof(struct net_device)); } // Function: arp_create // with type: struct sk_buff *arp_create(int, int, __be32 , struct net_device *, __be32 , const unsigned char *, const unsigned char *, const unsigned char *) // with return type: (struct sk_buff)* struct sk_buff *arp_create(int arg0, int arg1, __be32 arg2, struct net_device *arg3, __be32 arg4, const unsigned char *arg5, const unsigned char *arg6, const unsigned char *arg7) { // Pointer type return ldv_malloc(sizeof(struct sk_buff)); } // Function: call_rcu_sched // with type: void call_rcu_sched(struct callback_head *, void (*)(struct callback_head *)) // with return type: void void call_rcu_sched(struct callback_head *arg0, void (*arg1)(struct callback_head *)) { // Void type return; } // Skip function: calloc // 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: consume_skb // with type: void consume_skb(struct sk_buff *) // with return type: void void consume_skb(struct sk_buff *arg0) { // Void type return; } // Function: crc16 // with type: u16 crc16(u16 , const u8 *, size_t ) // with return type: u16 unsigned short __VERIFIER_nondet_ushort(void); u16 crc16(u16 arg0, const u8 *arg1, size_t arg2) { // Typedef type // Real type: unsigned short // Simple type return __VERIFIER_nondet_ushort(); } // Function: crc32c // with type: u32 crc32c(u32 , const void *, unsigned int) // with return type: u32 unsigned int __VERIFIER_nondet_uint(void); u32 crc32c(u32 arg0, const void *arg1, unsigned int arg2) { // Typedef type // Real type: unsigned int // Simple type return __VERIFIER_nondet_uint(); } // Function: debug_lockdep_rcu_enabled // with type: int debug_lockdep_rcu_enabled() // with return type: int int __VERIFIER_nondet_int(void); int debug_lockdep_rcu_enabled() { // Simple type return __VERIFIER_nondet_int(); } // Function: debugfs_create_dir // with type: struct dentry *debugfs_create_dir(const char *, struct dentry *) // with return type: (struct dentry)* struct dentry *debugfs_create_dir(const char *arg0, struct dentry *arg1) { // Pointer type return ldv_malloc(sizeof(struct dentry)); } // Function: debugfs_create_file // with type: struct dentry *debugfs_create_file(const char *, umode_t , struct dentry *, void *, const struct file_operations *) // with return type: (struct dentry)* struct dentry *debugfs_create_file(const char *arg0, umode_t arg1, struct dentry *arg2, void *arg3, const struct file_operations *arg4) { // Pointer type return ldv_malloc(sizeof(struct dentry)); } // Function: debugfs_create_u32 // with type: struct dentry *debugfs_create_u32(const char *, umode_t , struct dentry *, u32 *) // with return type: (struct dentry)* struct dentry *debugfs_create_u32(const char *arg0, umode_t arg1, struct dentry *arg2, u32 *arg3) { // Pointer type return ldv_malloc(sizeof(struct dentry)); } // Function: debugfs_create_u8 // with type: struct dentry *debugfs_create_u8(const char *, umode_t , struct dentry *, u8 *) // with return type: (struct dentry)* struct dentry *debugfs_create_u8(const char *arg0, umode_t arg1, struct dentry *arg2, u8 *arg3) { // Pointer type return ldv_malloc(sizeof(struct dentry)); } // Function: debugfs_remove_recursive // with type: void debugfs_remove_recursive(struct dentry *) // with return type: void void debugfs_remove_recursive(struct dentry *arg0) { // Void type return; } // 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_add_pack // with type: void dev_add_pack(struct packet_type *) // with return type: void void dev_add_pack(struct packet_type *arg0) { // Void type return; } // Function: dev_get_by_index // with type: struct net_device *dev_get_by_index(struct net *, int) // with return type: (struct net_device)* struct net_device *dev_get_by_index(struct net *arg0, int arg1) { // Pointer type return ldv_malloc(sizeof(struct net_device)); } // Function: dev_get_by_name // with type: struct net_device *dev_get_by_name(struct net *, const char *) // with return type: (struct net_device)* struct net_device *dev_get_by_name(struct net *arg0, const char *arg1) { // Pointer type return ldv_malloc(sizeof(struct net_device)); } // Function: dev_queue_xmit // with type: int dev_queue_xmit(struct sk_buff *) // with return type: int int __VERIFIER_nondet_int(void); int dev_queue_xmit(struct sk_buff *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: dev_remove_pack // with type: void dev_remove_pack(struct packet_type *) // with return type: void void dev_remove_pack(struct packet_type *arg0) { // Void type return; } // Function: dump_stack // with type: void dump_stack() // with return type: void void dump_stack() { // Void type return; } // Function: eth_type_trans // with type: __be16 eth_type_trans(struct sk_buff *, struct net_device *) // with return type: __be16 unsigned short __VERIFIER_nondet_ushort(void); __be16 eth_type_trans(struct sk_buff *arg0, struct net_device *arg1) { // Typedef type // Real type: __u16 // Typedef type // Real type: unsigned short // Simple type return __VERIFIER_nondet_ushort(); } // Function: eth_validate_addr // with type: int eth_validate_addr(struct net_device *) // with return type: int int __VERIFIER_nondet_int(void); int eth_validate_addr(struct net_device *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: ether_setup // with type: void ether_setup(struct net_device *) // with return type: void void ether_setup(struct net_device *arg0) { // Void type return; } // Function: find_next_bit // with type: unsigned long int find_next_bit(const unsigned long *, unsigned long, unsigned long) // with return type: unsigned long int unsigned long __VERIFIER_nondet_ulong(void); unsigned long int find_next_bit(const unsigned long *arg0, unsigned long arg1, unsigned long arg2) { // Simple type return __VERIFIER_nondet_ulong(); } // 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; } // Function: free_netdev // with type: void free_netdev(struct net_device *) // with return type: void void free_netdev(struct net_device *arg0) { // Void type return; } // Function: free_percpu // with type: void free_percpu(void *) // with return type: void void free_percpu(void *arg0) { // Void type return; } // Function: get_random_bytes // with type: void get_random_bytes(void *, int) // with return type: void void get_random_bytes(void *arg0, int arg1) { // 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; } // Function: jiffies_to_msecs // with type: unsigned int jiffies_to_msecs(const unsigned long) // with return type: unsigned int unsigned int __VERIFIER_nondet_uint(void); unsigned int jiffies_to_msecs(const unsigned long arg0) { // Simple type return __VERIFIER_nondet_uint(); } // Skip function: kfree // Function: kfree_call_rcu // with type: void kfree_call_rcu(struct callback_head *, void (*)(struct callback_head *)) // with return type: void void kfree_call_rcu(struct callback_head *arg0, void (*arg1)(struct callback_head *)) { // Void type return; } // 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: kmem_cache_alloc // with type: void *kmem_cache_alloc(struct kmem_cache *, gfp_t ) // with return type: (void)* void *kmem_cache_alloc(struct kmem_cache *arg0, gfp_t arg1) { // Pointer type return ldv_malloc(0UL); } // Function: kobject_create_and_add // with type: struct kobject *kobject_create_and_add(const char *, struct kobject *) // with return type: (struct kobject)* struct kobject *kobject_create_and_add(const char *arg0, struct kobject *arg1) { // Pointer type return ldv_malloc(sizeof(struct kobject)); } // Function: kobject_get // with type: struct kobject *kobject_get(struct kobject *) // with return type: (struct kobject)* struct kobject *kobject_get(struct kobject *arg0) { // Pointer type return ldv_malloc(sizeof(struct kobject)); } // Function: kobject_put // with type: void kobject_put(struct kobject *) // with return type: void void kobject_put(struct kobject *arg0) { // Void type return; } // Function: kobject_uevent_env // with type: int kobject_uevent_env(struct kobject *, enum kobject_action , char **) // with return type: int int __VERIFIER_nondet_int(void); int kobject_uevent_env(struct kobject *arg0, enum kobject_action arg1, char **arg2) { // Simple type return __VERIFIER_nondet_int(); } // Function: kstrtoll // with type: int kstrtoll(const char *, unsigned int, long long *) // with return type: int int __VERIFIER_nondet_int(void); int kstrtoll(const char *arg0, unsigned int arg1, long long *arg2) { // Simple type return __VERIFIER_nondet_int(); } // Function: kstrtouint // with type: int kstrtouint(const char *, unsigned int, unsigned int *) // with return type: int int __VERIFIER_nondet_int(void); int kstrtouint(const char *arg0, unsigned int arg1, unsigned int *arg2) { // Simple type return __VERIFIER_nondet_int(); } // Function: kstrtoull // with type: int kstrtoull(const char *, unsigned int, unsigned long long *) // with return type: int int __VERIFIER_nondet_int(void); int kstrtoull(const char *arg0, unsigned int arg1, unsigned long long *arg2) { // Simple type return __VERIFIER_nondet_int(); } // Function: ldv__builtin_va_end // with type: void ldv__builtin_va_end(__builtin_va_list ) // with return type: void void ldv__builtin_va_end(__builtin_va_list arg0) { // Void type return; } // Function: ldv__builtin_va_start // with type: void ldv__builtin_va_start(__builtin_va_list ) // with return type: void void ldv__builtin_va_start(__builtin_va_list arg0) { // Void type return; } // Function: ldv_check_final_state // with type: void ldv_check_final_state() // with return type: void void ldv_check_final_state() { // Void type return; } // Function: ldv_init_19 // with type: int ldv_init_19() // with return type: int int __VERIFIER_nondet_int(void); int ldv_init_19() { // Simple type return __VERIFIER_nondet_int(); } // Function: ldv_initialize // with type: void ldv_initialize() // with return type: void void ldv_initialize() { // Void type return; } // Function: ldv_ndo_uninit_20 // with type: int ldv_ndo_uninit_20() // with return type: int int __VERIFIER_nondet_int(void); int ldv_ndo_uninit_20() { // Simple type return __VERIFIER_nondet_int(); } // Function: ldv_release_19 // with type: int ldv_release_19() // with return type: int int __VERIFIER_nondet_int(void); int ldv_release_19() { // Simple type return __VERIFIER_nondet_int(); } // Function: ldv_some_page // with type: struct page___0 *ldv_some_page() // with return type: (struct page___0)* struct page___0 *ldv_some_page() { // Pointer type return ldv_malloc(sizeof(struct page___0)); } // 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: lock_acquire // with type: void lock_acquire(struct lockdep_map *, unsigned int, int, int, int, struct lockdep_map *, unsigned long) // with return type: void void lock_acquire(struct lockdep_map *arg0, unsigned int arg1, int arg2, int arg3, int arg4, struct lockdep_map *arg5, unsigned long arg6) { // Void type return; } // Function: lock_is_held // with type: int lock_is_held(struct lockdep_map *) // with return type: int int __VERIFIER_nondet_int(void); int lock_is_held(struct lockdep_map *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: lock_release // with type: void lock_release(struct lockdep_map *, int, unsigned long) // with return type: void void lock_release(struct lockdep_map *arg0, int arg1, unsigned long arg2) { // 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; } // Function: lockdep_rcu_suspicious // with type: void lockdep_rcu_suspicious(const char *, const int, const char *) // with return type: void void lockdep_rcu_suspicious(const char *arg0, const int arg1, const char *arg2) { // Void type return; } // Skip function: malloc // Skip function: memcmp // Skip function: memcpy // Skip function: memmove // Skip function: memset // Function: might_fault // with type: void might_fault() // with return type: void void might_fault() { // Void type return; } // Function: module_put // with type: void module_put(struct module *) // with return type: void void module_put(struct module *arg0) { // Void type return; } // Function: msecs_to_jiffies // with type: unsigned long int msecs_to_jiffies(const unsigned int) // with return type: unsigned long int unsigned long __VERIFIER_nondet_ulong(void); unsigned long int msecs_to_jiffies(const unsigned int arg0) { // Simple type return __VERIFIER_nondet_ulong(); } // Function: net_ratelimit // with type: int net_ratelimit() // with return type: int int __VERIFIER_nondet_int(void); int net_ratelimit() { // Simple type return __VERIFIER_nondet_int(); } // Function: netdev_master_upper_dev_get // with type: struct net_device *netdev_master_upper_dev_get(struct net_device *) // with return type: (struct net_device)* struct net_device *netdev_master_upper_dev_get(struct net_device *arg0) { // Pointer type return ldv_malloc(sizeof(struct net_device)); } // Function: netdev_master_upper_dev_get_rcu // with type: struct net_device *netdev_master_upper_dev_get_rcu(struct net_device *) // with return type: (struct net_device)* struct net_device *netdev_master_upper_dev_get_rcu(struct net_device *arg0) { // Pointer type return ldv_malloc(sizeof(struct net_device)); } // Function: netdev_master_upper_dev_link // with type: int netdev_master_upper_dev_link(struct net_device *, struct net_device *) // with return type: int int __VERIFIER_nondet_int(void); int netdev_master_upper_dev_link(struct net_device *arg0, struct net_device *arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: netdev_upper_dev_unlink // with type: void netdev_upper_dev_unlink(struct net_device *, struct net_device *) // with return type: void void netdev_upper_dev_unlink(struct net_device *arg0, struct net_device *arg1) { // Void type return; } // Function: netif_rx // with type: int netif_rx(struct sk_buff *) // with return type: int int __VERIFIER_nondet_int(void); int netif_rx(struct sk_buff *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: nf_conntrack_destroy // with type: void nf_conntrack_destroy(struct nf_conntrack *) // with return type: void void nf_conntrack_destroy(struct nf_conntrack *arg0) { // Void type return; } // Function: no_llseek // with type: loff_t no_llseek(struct file *, loff_t , int) // with return type: loff_t long __VERIFIER_nondet_long(void); loff_t no_llseek(struct file *arg0, loff_t arg1, int arg2) { // Typedef type // Real type: __kernel_loff_t // Typedef type // Real type: long long // Simple type return __VERIFIER_nondet_long(); } // Function: nonseekable_open // with type: int nonseekable_open(struct inode *, struct file *) // with return type: int int __VERIFIER_nondet_int(void); int nonseekable_open(struct inode *arg0, struct file *arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: param_get_string // with type: int param_get_string(char *, const struct kernel_param *) // with return type: int int __VERIFIER_nondet_int(void); int param_get_string(char *arg0, const struct kernel_param *arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: param_set_copystring // with type: int param_set_copystring(const char *, const struct kernel_param *) // with return type: int int __VERIFIER_nondet_int(void); int param_set_copystring(const char *arg0, const struct kernel_param *arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: prandom_u32 // with type: u32 prandom_u32() // with return type: u32 unsigned int __VERIFIER_nondet_uint(void); u32 prandom_u32() { // Typedef type // Real type: unsigned int // Simple type return __VERIFIER_nondet_uint(); } // 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: 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: pskb_expand_head // with type: int pskb_expand_head(struct sk_buff *, int, int, gfp_t ) // with return type: int int __VERIFIER_nondet_int(void); int pskb_expand_head(struct sk_buff *arg0, int arg1, int arg2, gfp_t arg3) { // Simple type return __VERIFIER_nondet_int(); } // Function: queue_delayed_work_on // with type: bool queue_delayed_work_on(int, struct workqueue_struct *, struct delayed_work *, unsigned long) // with return type: bool bool __VERIFIER_nondet_bool(void); bool queue_delayed_work_on(int arg0, struct workqueue_struct *arg1, struct delayed_work *arg2, unsigned long arg3) { // Typedef type // Real type: _Bool // Simple type return __VERIFIER_nondet_bool(); } // 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: rcu_barrier // with type: void rcu_barrier() // with return type: void void rcu_barrier() { // Void type return; } // Function: rcu_is_watching // with type: bool rcu_is_watching() // with return type: bool bool __VERIFIER_nondet_bool(void); bool rcu_is_watching() { // Typedef type // Real type: _Bool // Simple type return __VERIFIER_nondet_bool(); } // Function: rcu_lockdep_current_cpu_online // with type: bool rcu_lockdep_current_cpu_online() // with return type: bool bool __VERIFIER_nondet_bool(void); bool rcu_lockdep_current_cpu_online() { // 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: register_netdevice_notifier // with type: int register_netdevice_notifier(struct notifier_block *) // with return type: int int __VERIFIER_nondet_int(void); int register_netdevice_notifier(struct notifier_block *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 // with type: void schedule() // with return type: void void schedule() { // Void type return; } // Function: seq_lseek // with type: loff_t seq_lseek(struct file *, loff_t , int) // with return type: loff_t long __VERIFIER_nondet_long(void); loff_t seq_lseek(struct file *arg0, loff_t arg1, int arg2) { // Typedef type // Real type: __kernel_loff_t // Typedef type // Real type: long long // Simple type return __VERIFIER_nondet_long(); } // Function: seq_printf // with type: int seq_printf(struct seq_file *, const char *, ...) // with return type: int int __VERIFIER_nondet_int(void); int seq_printf(struct seq_file *arg0, const char *arg1, ...) { // Simple type return __VERIFIER_nondet_int(); } // Function: seq_puts // with type: int seq_puts(struct seq_file *, const char *) // with return type: int int __VERIFIER_nondet_int(void); int seq_puts(struct seq_file *arg0, const char *arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: seq_read // with type: ssize_t seq_read(struct file *, char *, size_t , loff_t *) // with return type: ssize_t long __VERIFIER_nondet_long(void); ssize_t seq_read(struct file *arg0, char *arg1, size_t arg2, loff_t *arg3) { // Typedef type // Real type: __kernel_ssize_t // Typedef type // Real type: __kernel_long_t // Typedef type // Real type: long // Simple type return __VERIFIER_nondet_long(); } // Function: single_open // with type: int single_open(struct file *, int (*)(struct seq_file *, void *), void *) // with return type: int int __VERIFIER_nondet_int(void); int single_open(struct file *arg0, int (*arg1)(struct seq_file *, void *), void *arg2) { // Simple type return __VERIFIER_nondet_int(); } // Function: single_release // with type: int single_release(struct inode *, struct file *) // with return type: int int __VERIFIER_nondet_int(void); int single_release(struct inode *arg0, struct file *arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: skb_clone // with type: struct sk_buff *skb_clone(struct sk_buff *, gfp_t ) // with return type: (struct sk_buff)* struct sk_buff *skb_clone(struct sk_buff *arg0, gfp_t arg1) { // Pointer type return ldv_malloc(sizeof(struct sk_buff)); } // Function: skb_copy // with type: struct sk_buff *skb_copy(const struct sk_buff *, gfp_t ) // with return type: (struct sk_buff)* struct sk_buff *skb_copy(const struct sk_buff *arg0, gfp_t arg1) { // Pointer type return ldv_malloc(sizeof(struct sk_buff)); } // 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_prepare_seq_read // with type: void skb_prepare_seq_read(struct sk_buff *, unsigned int, unsigned int, struct skb_seq_state *) // with return type: void void skb_prepare_seq_read(struct sk_buff *arg0, unsigned int arg1, unsigned int arg2, struct skb_seq_state *arg3) { // Void type return; } // Function: skb_pull_rcsum // with type: unsigned char *skb_pull_rcsum(struct sk_buff *, unsigned int) // with return type: (unsigned char)* unsigned char *skb_pull_rcsum(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: skb_seq_read // with type: unsigned int skb_seq_read(unsigned int, const u8 **, struct skb_seq_state *) // with return type: unsigned int unsigned int __VERIFIER_nondet_uint(void); unsigned int skb_seq_read(unsigned int arg0, const u8 **arg1, struct skb_seq_state *arg2) { // Simple type return __VERIFIER_nondet_uint(); } // Function: skb_split // with type: void skb_split(struct sk_buff *, struct sk_buff *, const u32 ) // with return type: void void skb_split(struct sk_buff *arg0, struct sk_buff *arg1, const u32 arg2) { // Void type return; } // Skip function: sprintf // Skip function: strchr // Skip function: strcmp // Function: strlcpy // with type: size_t strlcpy(char *, const char *, size_t ) // with return type: size_t unsigned long __VERIFIER_nondet_ulong(void); size_t strlcpy(char *arg0, const char *arg1, size_t arg2) { // Typedef type // Real type: __kernel_size_t // Typedef type // Real type: __kernel_ulong_t // Typedef type // Real type: unsigned long // Simple type return __VERIFIER_nondet_ulong(); } // Skip function: strlen // Skip function: strncmp // Function: strnicmp // with type: int strnicmp(const char *, const char *, __kernel_size_t ) // with return type: int int __VERIFIER_nondet_int(void); int strnicmp(const char *arg0, const char *arg1, __kernel_size_t arg2) { // Simple type return __VERIFIER_nondet_int(); } // Function: sysfs_create_file_ns // with type: int sysfs_create_file_ns(struct kobject *, const struct attribute *, const void *) // with return type: int int __VERIFIER_nondet_int(void); int sysfs_create_file_ns(struct kobject *arg0, const struct attribute *arg1, const void *arg2) { // Simple type return __VERIFIER_nondet_int(); } // Function: sysfs_remove_file_ns // with type: void sysfs_remove_file_ns(struct kobject *, const struct attribute *, const void *) // with return type: void void sysfs_remove_file_ns(struct kobject *arg0, const struct attribute *arg1, const void *arg2) { // Void type return; } // Function: try_module_get // with type: bool try_module_get(struct module *) // with return type: bool bool __VERIFIER_nondet_bool(void); bool try_module_get(struct module *arg0) { // Typedef type // Real type: _Bool // Simple type return __VERIFIER_nondet_bool(); } // 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: unregister_netdevice_notifier // with type: int unregister_netdevice_notifier(struct notifier_block *) // with return type: int int __VERIFIER_nondet_int(void); int unregister_netdevice_notifier(struct notifier_block *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: unregister_netdevice_queue // with type: void unregister_netdevice_queue(struct net_device *, struct list_head *) // with return type: void void unregister_netdevice_queue(struct net_device *arg0, struct list_head *arg1) { // Void type return; } // Function: vscnprintf // with type: int vscnprintf(char *, size_t , const char *, __va_list_tag *) // with return type: int int __VERIFIER_nondet_int(void); int vscnprintf(char *arg0, size_t arg1, const char *arg2, __va_list_tag *arg3) { // Simple type return __VERIFIER_nondet_int(); } // Function: warn_slowpath_fmt // with type: void warn_slowpath_fmt(const char *, const int, const char *, ...) // with return type: void void warn_slowpath_fmt(const char *arg0, const int arg1, const char *arg2, ...) { // 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; }