1#!/bin/sh
2
3find_mtd_part() {
4	local PART="$(grep "\"$1\"" /proc/mtd | awk -F: '{print $1}')"
5	local PREFIX=/dev/mtd
6
7	PART="${PART##mtd}"
8	[ -d /dev/mtd ] && PREFIX=/dev/mtd/
9	echo "${PART:+$PREFIX$PART}"
10}
11
12echo "Save the collect log into debug-log.zip and upload to user"
13
14#Disblae wireless debug log
15iwpriv ath0 dbgLVL 0x100
16iwpriv ath1 dbgLVL 0x100
17
18module_name=`cat /module_name`
19
20# Save the router config file
21/bin/config backup /tmp/NETGEAR_$module_name.cfg
22
23mtd_oops="$(find_mtd_part 'crashdump')"
24
25/sbin/debug_save_panic_log $mtd_oops
26
27cd /tmp
28
29# System will zipped all debug files into 1 zip file and save to client browser
30# So a debug-log.zip file will includes
31# (1) Console log
32# (2) Basic debug information
33# (3) router config file
34# (4) LAN/WAN packet capture
35
36#Disable the capture
37killall tcpdump
38killall tcpdump
39killall basic_log.sh 
40killall console_log.sh 
41killall wireless_log.sh  
42
43echo close > /sys/devices/platform/serial8250/console
44
45dd if=/dev/mtd9 of=/tmp/panic_log.txt bs=131072 count=2
46[ -f /tmp/panic_log.txt ] && unix2dos /tmp/panic_log.txt
47#[ -f /tmp/Panic-log.txt ] && unix2dos /tmp/Panic-log.txt
48[ -f /tmp/Console-log1.txt ] && unix2dos /tmp/Console-log1.txt
49[ -f /tmp/Console-log2.txt ] && unix2dos /tmp/Console-log2.txt 
50[ -f /tmp/basic_debug_log.txt ] && unix2dos /tmp/basic_debug_log.txt
51collect_log=`cat /tmp/collect_debug`
52
53if [ "x$collect_log" = "x1" ];then
54	zip debug-log.zip  panic_log.txt Console-log1.txt Console-log2.txt basic_debug_log.txt lan.pcap wan.pcap
55else
56	zip debug-log.zip NETGEAR_$module_name.cfg  panic_log.txt  Console-log1.txt Console-log2.txt basic_debug_log.txt lan.pcap wan.pcap
57fi
58
59cd /tmp
60rm -rf debug-usb debug_cpu debug_flash debug_mem debug_mirror_on debug_session NETGEAR_$module_name.cfg panic_log.txt Console-log1.txt Console-log2.txt basic_debug_log.txt lan.pcap wan.pcap
61
62echo 0 > /tmp/collect_debug
63