Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
6018e118
Commit
6018e118
authored
Jun 09, 2011
by
David S. Miller
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'batman-adv/next' of
git://git.open-mesh.org/ecsv/linux-merge
parents
075cd29e
ecbd5321
Changes
10
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
72 additions
and
47 deletions
+72
-47
net/batman-adv/aggregation.c
net/batman-adv/aggregation.c
+1
-1
net/batman-adv/bat_sysfs.c
net/batman-adv/bat_sysfs.c
+11
-3
net/batman-adv/gateway_client.c
net/batman-adv/gateway_client.c
+3
-3
net/batman-adv/gateway_common.c
net/batman-adv/gateway_common.c
+2
-2
net/batman-adv/hard-interface.c
net/batman-adv/hard-interface.c
+1
-1
net/batman-adv/hard-interface.h
net/batman-adv/hard-interface.h
+8
-6
net/batman-adv/main.h
net/batman-adv/main.h
+12
-7
net/batman-adv/packet.h
net/batman-adv/packet.h
+29
-18
net/batman-adv/routing.c
net/batman-adv/routing.c
+4
-5
net/batman-adv/send.c
net/batman-adv/send.c
+1
-1
No files found.
net/batman-adv/aggregation.c
View file @
6018e118
...
...
@@ -151,7 +151,7 @@ static void new_aggregated_packet(const unsigned char *packet_buff,
forw_packet_aggr
->
own
=
own_packet
;
forw_packet_aggr
->
if_incoming
=
if_incoming
;
forw_packet_aggr
->
num_packets
=
0
;
forw_packet_aggr
->
direct_link_flags
=
0
;
forw_packet_aggr
->
direct_link_flags
=
NO_FLAGS
;
forw_packet_aggr
->
send_time
=
send_time
;
/* save packet direct link flag status */
...
...
net/batman-adv/bat_sysfs.c
View file @
6018e118
...
...
@@ -28,9 +28,17 @@
#include "gateway_client.h"
#include "vis.h"
#define to_dev(obj) container_of(obj, struct device, kobj)
#define kobj_to_netdev(obj) to_net_dev(to_dev(obj->parent))
#define kobj_to_batpriv(obj) netdev_priv(kobj_to_netdev(obj))
static
struct
net_device
*
kobj_to_netdev
(
struct
kobject
*
obj
)
{
struct
device
*
dev
=
container_of
(
obj
->
parent
,
struct
device
,
kobj
);
return
to_net_dev
(
dev
);
}
static
struct
bat_priv
*
kobj_to_batpriv
(
struct
kobject
*
obj
)
{
struct
net_device
*
net_dev
=
kobj_to_netdev
(
obj
);
return
netdev_priv
(
net_dev
);
}
/* Use this, if you have customized show and store functions */
#define BAT_ATTR(_name, _mode, _show, _store) \
...
...
net/batman-adv/gateway_client.c
View file @
6018e118
...
...
@@ -322,7 +322,7 @@ void gw_node_update(struct bat_priv *bat_priv,
gw_node
->
deleted
=
0
;
if
(
new_gwflags
==
0
)
{
if
(
new_gwflags
==
NO_FLAGS
)
{
gw_node
->
deleted
=
jiffies
;
bat_dbg
(
DBG_BATMAN
,
bat_priv
,
"Gateway %pM removed from gateway list
\n
"
,
...
...
@@ -335,7 +335,7 @@ void gw_node_update(struct bat_priv *bat_priv,
goto
unlock
;
}
if
(
new_gwflags
==
0
)
if
(
new_gwflags
==
NO_FLAGS
)
goto
unlock
;
gw_node_add
(
bat_priv
,
orig_node
,
new_gwflags
);
...
...
@@ -352,7 +352,7 @@ void gw_node_update(struct bat_priv *bat_priv,
void
gw_node_delete
(
struct
bat_priv
*
bat_priv
,
struct
orig_node
*
orig_node
)
{
return
gw_node_update
(
bat_priv
,
orig_node
,
0
);
gw_node_update
(
bat_priv
,
orig_node
,
0
);
}
void
gw_node_purge
(
struct
bat_priv
*
bat_priv
)
...
...
net/batman-adv/gateway_common.c
View file @
6018e118
...
...
@@ -97,7 +97,7 @@ static bool parse_gw_bandwidth(struct net_device *net_dev, char *buff,
*
tmp_ptr
=
'\0'
;
}
ret
=
strict_strto
u
l
(
buff
,
10
,
&
ldown
);
ret
=
strict_strtol
(
buff
,
10
,
&
ldown
);
if
(
ret
)
{
bat_err
(
net_dev
,
"Download speed of gateway mode invalid: %s
\n
"
,
...
...
@@ -122,7 +122,7 @@ static bool parse_gw_bandwidth(struct net_device *net_dev, char *buff,
*
tmp_ptr
=
'\0'
;
}
ret
=
strict_strto
u
l
(
slash_ptr
+
1
,
10
,
&
lup
);
ret
=
strict_strtol
(
slash_ptr
+
1
,
10
,
&
lup
);
if
(
ret
)
{
bat_err
(
net_dev
,
"Upload speed of gateway mode invalid: "
...
...
net/batman-adv/hard-interface.c
View file @
6018e118
...
...
@@ -337,7 +337,7 @@ int hardif_enable_interface(struct hard_iface *hard_iface,
batman_packet
=
(
struct
batman_packet
*
)(
hard_iface
->
packet_buff
);
batman_packet
->
packet_type
=
BAT_PACKET
;
batman_packet
->
version
=
COMPAT_VERSION
;
batman_packet
->
flags
=
0
;
batman_packet
->
flags
=
NO_FLAGS
;
batman_packet
->
ttl
=
2
;
batman_packet
->
tq
=
TQ_MAX_VALUE
;
batman_packet
->
num_tt
=
0
;
...
...
net/batman-adv/hard-interface.h
View file @
6018e118
...
...
@@ -22,12 +22,14 @@
#ifndef _NET_BATMAN_ADV_HARD_INTERFACE_H_
#define _NET_BATMAN_ADV_HARD_INTERFACE_H_
#define IF_NOT_IN_USE 0
#define IF_TO_BE_REMOVED 1
#define IF_INACTIVE 2
#define IF_ACTIVE 3
#define IF_TO_BE_ACTIVATED 4
#define IF_I_WANT_YOU 5
enum
hard_if_state
{
IF_NOT_IN_USE
,
IF_TO_BE_REMOVED
,
IF_INACTIVE
,
IF_ACTIVE
,
IF_TO_BE_ACTIVATED
,
IF_I_WANT_YOU
};
extern
struct
notifier_block
hard_if_notifier
;
...
...
net/batman-adv/main.h
View file @
6018e118
...
...
@@ -51,6 +51,8 @@
#define TQ_LOCAL_BIDRECT_RECV_MINIMUM 1
#define TQ_TOTAL_BIDRECT_LIMIT 1
#define NO_FLAGS 0
#define NUM_WORDS (TQ_LOCAL_WINDOW_SIZE / WORD_BIT_SIZE)
#define LOG_BUF_LEN 8192
/* has to be a power of 2 */
...
...
@@ -72,9 +74,11 @@
#define RESET_PROTECTION_MS 30000
#define EXPECTED_SEQNO_RANGE 65536
#define MESH_INACTIVE 0
#define MESH_ACTIVE 1
#define MESH_DEACTIVATING 2
enum
mesh_state
{
MESH_INACTIVE
,
MESH_ACTIVE
,
MESH_DEACTIVATING
};
#define BCAST_QUEUE_LEN 256
#define BATMAN_QUEUE_LEN 256
...
...
@@ -89,10 +93,11 @@
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
/* all messages related to routing / flooding / broadcasting / etc */
#define DBG_BATMAN 1
/* route or tt entry added / changed / deleted */
#define DBG_ROUTES 2
#define DBG_ALL 3
enum
dbg_level
{
DBG_BATMAN
=
1
<<
0
,
DBG_ROUTES
=
1
<<
1
,
/* route added / changed / deleted */
DBG_ALL
=
3
};
/*
...
...
net/batman-adv/packet.h
View file @
6018e118
...
...
@@ -24,33 +24,44 @@
#define ETH_P_BATMAN 0x4305
/* unofficial/not registered Ethertype */
#define BAT_PACKET 0x01
#define BAT_ICMP 0x02
#define BAT_UNICAST 0x03
#define BAT_BCAST 0x04
#define BAT_VIS 0x05
#define BAT_UNICAST_FRAG 0x06
enum
bat_packettype
{
BAT_PACKET
=
0x01
,
BAT_ICMP
=
0x02
,
BAT_UNICAST
=
0x03
,
BAT_BCAST
=
0x04
,
BAT_VIS
=
0x05
,
BAT_UNICAST_FRAG
=
0x06
};
/* this file is included by batctl which needs these defines */
#define COMPAT_VERSION 12
#define DIRECTLINK 0x40
#define VIS_SERVER 0x20
#define PRIMARIES_FIRST_HOP 0x10
enum
batman_flags
{
PRIMARIES_FIRST_HOP
=
1
<<
4
,
VIS_SERVER
=
1
<<
5
,
DIRECTLINK
=
1
<<
6
};
/* ICMP message types */
#define ECHO_REPLY 0
#define DESTINATION_UNREACHABLE 3
#define ECHO_REQUEST 8
#define TTL_EXCEEDED 11
#define PARAMETER_PROBLEM 12
enum
icmp_packettype
{
ECHO_REPLY
=
0
,
DESTINATION_UNREACHABLE
=
3
,
ECHO_REQUEST
=
8
,
TTL_EXCEEDED
=
11
,
PARAMETER_PROBLEM
=
12
};
/* vis defines */
#define VIS_TYPE_SERVER_SYNC 0
#define VIS_TYPE_CLIENT_UPDATE 1
enum
vis_packettype
{
VIS_TYPE_SERVER_SYNC
=
0
,
VIS_TYPE_CLIENT_UPDATE
=
1
};
/* fragmentation defines */
#define UNI_FRAG_HEAD 0x01
#define UNI_FRAG_LARGETAIL 0x02
enum
unicast_frag_flags
{
UNI_FRAG_HEAD
=
1
<<
0
,
UNI_FRAG_LARGETAIL
=
1
<<
1
};
struct
batman_packet
{
uint8_t
packet_type
;
...
...
net/batman-adv/routing.c
View file @
6018e118
...
...
@@ -698,17 +698,16 @@ void receive_bat_packet(const struct ethhdr *ethhdr,
/* neighbor has to indicate direct link and it has to
* come via the corresponding interface */
/* if received seqno equals last send seqno save new
* seqno for bidirectional check */
/* save packet seqno for bidirectional check */
if
(
has_directlink_flag
&&
compare_eth
(
if_incoming
->
net_dev
->
dev_addr
,
batman_packet
->
orig
)
&&
(
batman_packet
->
seqno
-
if_incoming_seqno
+
2
==
0
))
{
batman_packet
->
orig
))
{
offset
=
if_incoming
->
if_num
*
NUM_WORDS
;
spin_lock_bh
(
&
orig_neigh_node
->
ogm_cnt_lock
);
word
=
&
(
orig_neigh_node
->
bcast_own
[
offset
]);
bit_mark
(
word
,
0
);
bit_mark
(
word
,
if_incoming_seqno
-
batman_packet
->
seqno
-
2
);
orig_neigh_node
->
bcast_own_sum
[
if_incoming
->
if_num
]
=
bit_packet_count
(
word
);
spin_unlock_bh
(
&
orig_neigh_node
->
ogm_cnt_lock
);
...
...
net/batman-adv/send.c
View file @
6018e118
...
...
@@ -289,7 +289,7 @@ void schedule_own_packet(struct hard_iface *hard_iface)
batman_packet
->
gw_flags
=
(
uint8_t
)
atomic_read
(
&
bat_priv
->
gw_bandwidth
);
else
batman_packet
->
gw_flags
=
0
;
batman_packet
->
gw_flags
=
NO_FLAGS
;
atomic_inc
(
&
hard_iface
->
seqno
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment