// 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_u32 // Skip function: __VERIFIER_nondet_uint // Skip function: __VERIFIER_nondet_ulong // Function: __alloc_skb // with type: struct sk_buff *__alloc_skb(unsigned int, gfp_t , int, int) // with return type: (struct sk_buff)* struct sk_buff *__alloc_skb(unsigned int arg0, gfp_t arg1, int arg2, int arg3) { // Pointer type struct sk_buff *skb = ldv_malloc(sizeof(struct sk_buff)); if(skb) { skb->head = ldv_malloc(arg0); skb->data = skb->head; skb->tail = 0; } return skb; } // 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: __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_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: __module_get // with type: void __module_get(struct module *) // with return type: void void __module_get(struct module *arg0) { // 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: __netif_schedule // with type: void __netif_schedule(struct Qdisc *) // with return type: void void __netif_schedule(struct Qdisc *arg0) { // 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: _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: _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; } // Function: add_timer // with type: void add_timer(struct timer_list *) // with return type: void void add_timer(struct timer_list *arg0) { // Void type return; } // Function: alloc_etherdev_mqs // with type: struct net_device *alloc_etherdev_mqs(int, unsigned int, unsigned int) // with return type: (struct net_device)* struct net_device *alloc_etherdev_mqs(int arg0, unsigned int arg1, unsigned int arg2) { // Pointer type return ldv_malloc(sizeof(struct net_device)); } // 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: capable // with type: bool capable(int) // with return type: bool bool __VERIFIER_nondet_bool(void); bool capable(int 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: 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: deregister_atm_ioctl // with type: void deregister_atm_ioctl(struct atm_ioctl *) // with return type: void void deregister_atm_ioctl(struct atm_ioctl *arg0) { // Void type return; } // Function: dev_set_mtu // with type: int dev_set_mtu(struct net_device *, int) // with return type: int int __VERIFIER_nondet_int(void); int dev_set_mtu(struct net_device *arg0, int arg1) { // Simple type return __VERIFIER_nondet_int(); } // 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: 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: 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: 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: kmemdup // with type: void *kmemdup(const void *, size_t , gfp_t ) // with return type: (void)* void *kmemdup(const void *arg0, size_t arg1, gfp_t arg2) { // Pointer type return ldv_malloc(0UL); } // 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_initialize // with type: void ldv_initialize() // with return type: void void ldv_initialize() { // Void type return; } // 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_ndo_uninit_5 // with type: int ldv_ndo_uninit_5() // with return type: int int __VERIFIER_nondet_int(void); int ldv_ndo_uninit_5() { // Simple type return __VERIFIER_nondet_int(); } // Function: ldv_open_6 // with type: int ldv_open_6() // with return type: int int __VERIFIER_nondet_int(void); int ldv_open_6() { // 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: 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: memcmp // Skip function: memcpy // Skip function: memset // Function: might_fault // with type: void might_fault() // with return type: void void might_fault() { // Void type return; } // 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: module_put // with type: void module_put(struct module *) // with return type: void void module_put(struct module *arg0) { // 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: 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: proc_create_data // with type: struct proc_dir_entry *proc_create_data(const char *, umode_t , struct proc_dir_entry *, const struct file_operations *, void *) // with return type: (struct proc_dir_entry)* struct proc_dir_entry *proc_create_data(const char *arg0, umode_t arg1, struct proc_dir_entry *arg2, const struct file_operations *arg3, void *arg4) { // Pointer type return ldv_malloc(0UL); } // 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: register_atm_ioctl // with type: void register_atm_ioctl(struct atm_ioctl *) // with return type: void void register_atm_ioctl(struct atm_ioctl *arg0) { // Void type return; } // Function: register_netdev // with type: int register_netdev(struct net_device *) // with return type: int int __VERIFIER_nondet_int(void); int register_netdev(struct net_device *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: remove_proc_entry // with type: void remove_proc_entry(const char *, struct proc_dir_entry *) // with return type: void void remove_proc_entry(const char *arg0, struct proc_dir_entry *arg1) { // 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_open_private // with type: int seq_open_private(struct file *, const struct seq_operations *, int) // with return type: int int __VERIFIER_nondet_int(void); int seq_open_private(struct file *arg0, const struct seq_operations *arg1, int arg2) { // Simple type return __VERIFIER_nondet_int(); } // 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_putc // with type: int seq_putc(struct seq_file *, char) // with return type: int int __VERIFIER_nondet_int(void); int seq_putc(struct seq_file *arg0, 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: seq_release_private // with type: int seq_release_private(struct inode *, struct file *) // with return type: int int __VERIFIER_nondet_int(void); int seq_release_private(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_expand // with type: struct sk_buff *skb_copy_expand(const struct sk_buff *, int, int, gfp_t ) // with return type: (struct sk_buff)* struct sk_buff *skb_copy_expand(const struct sk_buff *arg0, int arg1, int arg2, gfp_t arg3) { // Pointer type return ldv_malloc(sizeof(struct sk_buff)); } // Function: skb_dequeue // with type: struct sk_buff *skb_dequeue(struct sk_buff_head *) // with return type: (struct sk_buff)* struct sk_buff *skb_dequeue(struct sk_buff_head *arg0) { // Pointer type return ldv_malloc(sizeof(struct sk_buff)); } // 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: skb_queue_purge // with type: void skb_queue_purge(struct sk_buff_head *) // with return type: void void skb_queue_purge(struct sk_buff_head *arg0) { // Void type return; } // 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: skb_realloc_headroom // with type: struct sk_buff *skb_realloc_headroom(struct sk_buff *, unsigned int) // with return type: (struct sk_buff)* struct sk_buff *skb_realloc_headroom(struct sk_buff *arg0, unsigned int arg1) { // Pointer type return ldv_malloc(sizeof(struct sk_buff)); } // Skip function: snprintf // 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: vcc_insert_socket // with type: void vcc_insert_socket(struct sock *) // with return type: void void vcc_insert_socket(struct sock *arg0) { // Void type return; } // Function: vcc_release_async // with type: void vcc_release_async(struct atm_vcc *, int) // with return type: void void vcc_release_async(struct atm_vcc *arg0, int arg1) { // 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; }