// Skip function: __VERIFIER_error // Skip function: __VERIFIER_nondet_int // Skip function: __VERIFIER_nondet_ulong // 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_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: __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: _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: 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_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: attach_hdlc_protocol // with type: int attach_hdlc_protocol(struct net_device *, struct hdlc_proto *, size_t ) // with return type: int int __VERIFIER_nondet_int(void); int attach_hdlc_protocol(struct net_device *arg0, struct hdlc_proto *arg1, size_t arg2) { // Simple type return __VERIFIER_nondet_int(); } // Skip function: calloc // 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: 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: 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: 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: 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: 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: hdlc_change_mtu // with type: int hdlc_change_mtu(struct net_device *, int) // with return type: int int __VERIFIER_nondet_int(void); int hdlc_change_mtu(struct net_device *arg0, int arg1) { // Simple type return __VERIFIER_nondet_int(); } // Skip function: kfree // Function: ldv_disconnect_2 // with type: int ldv_disconnect_2() // with return type: int int __VERIFIER_nondet_int(void); int ldv_disconnect_2() { // Simple type return __VERIFIER_nondet_int(); } // Function: ldv_ndo_init_3 // with type: int ldv_ndo_init_3() // with return type: int int __VERIFIER_nondet_int(void); int ldv_ndo_init_3() { // Simple type return __VERIFIER_nondet_int(); } // Function: ldv_ndo_uninit_3 // with type: int ldv_ndo_uninit_3() // with return type: int int __VERIFIER_nondet_int(void); int ldv_ndo_uninit_3() { // Simple type return __VERIFIER_nondet_int(); } // Function: ldv_open_2 // with type: int ldv_open_2() // with return type: int int __VERIFIER_nondet_int(void); int ldv_open_2() { // Simple type return __VERIFIER_nondet_int(); } // Function: ldv_setup_2 // with type: int ldv_setup_2() // with return type: int int __VERIFIER_nondet_int(void); int ldv_setup_2() { // Simple type return __VERIFIER_nondet_int(); } // Function: linkwatch_fire_event // with type: void linkwatch_fire_event(struct net_device *) // with return type: void void linkwatch_fire_event(struct net_device *arg0) { // Void type return; } // Skip function: malloc // 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: netdev_info // with type: int netdev_info(const struct net_device *, const char *, ...) // with return type: int int __VERIFIER_nondet_int(void); int netdev_info(const struct net_device *arg0, const char *arg1, ...) { // Simple type return __VERIFIER_nondet_int(); } // 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: netif_carrier_off // with type: void netif_carrier_off(struct net_device *) // with return type: void void netif_carrier_off(struct net_device *arg0) { // Void type return; } // Function: netif_carrier_on // with type: void netif_carrier_on(struct net_device *) // with return type: void void netif_carrier_on(struct net_device *arg0) { // Void type return; } // 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: register_hdlc_protocol // with type: void register_hdlc_protocol(struct hdlc_proto *) // with return type: void void register_hdlc_protocol(struct hdlc_proto *arg0) { // Void type return; } // 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: 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_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_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)); } // Function: unregister_hdlc_protocol // with type: void unregister_hdlc_protocol(struct hdlc_proto *) // with return type: void void unregister_hdlc_protocol(struct hdlc_proto *arg0) { // Void type return; } // 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; }