bless $self, $class;
# Initialize the connetion to the modem.
- $self->_initialize($port, $baud);
+ my $ret = $self->_initialize($port, $baud);
+ if ($ret) {
+ return undef;
+ }
if ($self->_is_working()) {
return $self;
sub _initialize() {
my ($self, $port, $baud) = @_;
+ # Check if the character device actually exists.
+ if (! -c $port) {
+ return 1;
+ }
+
# Establish connection to the modem.
$self->{modem} = new Device::Modem(port => $port);
$self->{modem}->connect(baudrate => $baud);
+
+ return 0;
}
sub _is_working() {
CONFIG_SERIAL_8250_SHARE_IRQ=y
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
CONFIG_SERIAL_8250_RSA=y
-# CONFIG_SERIAL_8250_DW is not set
+CONFIG_SERIAL_8250_DW=y
# CONFIG_SERIAL_8250_EM is not set
#
CONFIG_PCIEAER_INJECT=m
CONFIG_PCIEASPM=y
# CONFIG_PCIEASPM_DEBUG is not set
-# CONFIG_PCIEASPM_DEFAULT is not set
-CONFIG_PCIEASPM_POWERSAVE=y
+CONFIG_PCIEASPM_DEFAULT=y
+# CONFIG_PCIEASPM_POWERSAVE is not set
# CONFIG_PCIEASPM_PERFORMANCE is not set
CONFIG_PCIE_PME=y
CONFIG_ARCH_SUPPORTS_MSI=y
CONFIG_PCIEAER_INJECT=m
CONFIG_PCIEASPM=y
# CONFIG_PCIEASPM_DEBUG is not set
-# CONFIG_PCIEASPM_DEFAULT is not set
-CONFIG_PCIEASPM_POWERSAVE=y
+CONFIG_PCIEASPM_DEFAULT=y
+# CONFIG_PCIEASPM_POWERSAVE is not set
# CONFIG_PCIEASPM_PERFORMANCE is not set
CONFIG_PCIE_PME=y
CONFIG_ARCH_SUPPORTS_MSI=y
#usr/include/linux/unix_diag.h
#usr/include/linux/usb
#usr/include/linux/usb/audio.h
+#usr/include/linux/usb/cdc-wdm.h
#usr/include/linux/usb/cdc.h
#usr/include/linux/usb/ch11.h
#usr/include/linux/usb/ch9.h
#usr/include/linux/unix_diag.h
#usr/include/linux/usb
#usr/include/linux/usb/audio.h
+#usr/include/linux/usb/cdc-wdm.h
#usr/include/linux/usb/cdc.h
#usr/include/linux/usb/ch11.h
#usr/include/linux/usb/ch9.h
#usr/bin/pcap-config
#usr/include/pcap
+#usr/include/pcap/bluetooth.h
#usr/include/pcap-bpf.h
#usr/include/pcap-int.h
+#usr/include/pcap/ipnet.h
#usr/include/pcap-namedb.h
#usr/include/pcap.h
#usr/include/pcap/bpf.h
#usr/include/pcap/pcap.h
#usr/include/pcap/sll.h
#usr/include/pcap/usb.h
+#usr/include/pcap/vlan.h
#usr/lib/libpcap.a
usr/lib/libpcap.so
usr/lib/libpcap.so.1
-usr/lib/libpcap.so.1.0
-usr/lib/libpcap.so.1.0.0
+usr/lib/libpcap.so.1.4.0
#usr/share/man/man1/pcap-config.1
#usr/share/man/man3/pcap.3pcap
#usr/share/man/man3/pcap_activate.3pcap
#usr/share/man/man3/pcap_findalldevs.3pcap
#usr/share/man/man3/pcap_fopen_offline.3pcap
#usr/share/man/man3/pcap_free_datalinks.3pcap
+#usr/share/man/man3/pcap_free_tstamp_types.3pcap
#usr/share/man/man3/pcap_freealldevs.3pcap
#usr/share/man/man3/pcap_freecode.3pcap
#usr/share/man/man3/pcap_get_selectable_fd.3pcap
#usr/share/man/man3/pcap_is_swapped.3pcap
#usr/share/man/man3/pcap_lib_version.3pcap
#usr/share/man/man3/pcap_list_datalinks.3pcap
+#usr/share/man/man3/pcap_list_tstamp_types.3pcap
#usr/share/man/man3/pcap_lookupdev.3pcap
#usr/share/man/man3/pcap_lookupnet.3pcap
#usr/share/man/man3/pcap_loop.3pcap
#usr/share/man/man3/pcap_set_rfmon.3pcap
#usr/share/man/man3/pcap_set_snaplen.3pcap
#usr/share/man/man3/pcap_set_timeout.3pcap
+#usr/share/man/man3/pcap_set_tstamp_type.3pcap
#usr/share/man/man3/pcap_setdirection.3pcap
#usr/share/man/man3/pcap_setfilter.3pcap
#usr/share/man/man3/pcap_setnonblock.3pcap
#usr/share/man/man3/pcap_stats.3pcap
#usr/share/man/man3/pcap_statustostr.3pcap
#usr/share/man/man3/pcap_strerror.3pcap
+#usr/share/man/man3/pcap_tstamp_type_name_to_val.3pcap
+#usr/share/man/man3/pcap_tstamp_type_val_to_name.3pcap
#usr/share/man/man5/pcap-savefile.5
#usr/share/man/man7/pcap-filter.7
#usr/share/man/man7/pcap-linktype.7
+#usr/share/man/man7/pcap-tstamp.7
etc/system-release
etc/issue
+etc/rc.d/init.d/leds
etc/rc.d/init.d/sshd
+etc/rc.d/init.d/udev
srv/web/ipfire/cgi-bin/ddns.cgi
srv/web/ipfire/cgi-bin/ids.cgi
srv/web/ipfire/cgi-bin/logs.cgi/firewalllogcountry.dat
--- /dev/null
+../../../common/libpcap
\ No newline at end of file
#usr/lib/libclamav.la
usr/lib/libclamav.so
usr/lib/libclamav.so.6
-usr/lib/libclamav.so.6.1.22
+usr/lib/libclamav.so.6.1.23
#usr/lib/libclamunrar.la
usr/lib/libclamunrar.so
usr/lib/libclamunrar.so.6
-usr/lib/libclamunrar.so.6.1.22
+usr/lib/libclamunrar.so.6.1.23
#usr/lib/libclamunrar_iface.la
usr/lib/libclamunrar_iface.so
usr/lib/libclamunrar_iface.so.6
-usr/lib/libclamunrar_iface.so.6.1.22
+usr/lib/libclamunrar_iface.so.6.1.23
#usr/lib/pkgconfig/libclamav.pc
usr/sbin/clamd
usr/share/clamav
-[Temp]
-path = /tmp
-comment = Temp
-browseable = yes
+[Share1]
+path = /mnt/share1
+comment = Shared Folder
+browsable = yes
writeable = yes
-create mask = 0777
-directory mask = 0777
-guest ok = yes
-force user = samba
-[P2P]
-path = /var/ipfire/samba/p2p
-comment = P2P
-browseable = yes
-writeable = yes
-create mask = 0777
-directory mask = 0777
+create mask = 0644
+directory mask = 0755
guest ok = yes
force user = samba
'modify' => 'Modify',
'modulation' => 'Modulation',
'monday' => 'Monday',
-'monitor interface' => 'Monitior interface',
+'monitor interface' => 'Monitor Interface',
'month' => 'Month',
'month-graph' => 'Month',
'monthly firewallhits' => 'monthly firewallhits',
include Config
-VER = 0.98.3
+VER = 0.98.4
THISAPP = clamav-$(VER)
DL_FILE = $(THISAPP).tar.gz
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = clamav
-PAK_VER = 25
+PAK_VER = 26
DEPS = ""
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = b649d35ee85d4d6075a98173dd255c17
+$(DL_FILE)_MD5 = 6d409eab6c311de05a0a591fccd2ec83
install : $(TARGET)
include Config
-VER = 1.0.0
+VER = 1.4.0
THISAPP = libpcap-$(VER)
DL_FILE = $(THISAPP).tar.gz
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
+CFLAGS += -fno-strict-aliasing
+
###############################################################################
# Top-level Rules
###############################################################################
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 9ad1358c5dec48456405eac197a46d3d
+$(DL_FILE)_MD5 = 56e88a5aabdd1e04414985ac24f7e76c
install : $(TARGET)
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
-# cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/libpcap-0.8.3-shared.patch
- cd $(DIR_APP) && ./configure --prefix=/usr --disable-nls
- cd $(DIR_APP) && make
- cd $(DIR_APP) && make shared
+ cd $(DIR_APP) && ./configure --prefix=/usr
+ cd $(DIR_APP) && make $(MAKETUNING)
cd $(DIR_APP) && make install
- cd $(DIR_APP) && make install-shared-so
- ln -svf libpcap.so.1.0.0 /usr/lib/libpcap.so.1.0
- ln -svf libpcap.so.1.0 /usr/lib/libpcap.so.1
- ln -svf libpcap.so.1 /usr/lib/libpcap.so
- cd $(DIR_APP) && cp -vf pcap-int.h /usr/include
@rm -rf $(DIR_APP)
@$(POSTBUILD)
include Config
-VER = 3.10.42
+VER = 3.10.44
RPI_PATCHES = linux-3.10.38-grsec-1b49b45
-GRS_PATCHES = grsecurity-2.9.1-3.10.42-ipfire1.patch.xz
+GRS_PATCHES = grsecurity-2.9.1-3.10.44-ipfire1.patch.xz
THISAPP = linux-$(VER)
DL_FILE = linux-$(VER).tar.xz
CFLAGS =
CXXFLAGS =
-PAK_VER = 47
+PAK_VER = 50
DEPS = ""
VERSUFIX=ipfire$(KCFG)
rpi-patches-$(RPI_PATCHES).patch.xz = $(URL_IPFIRE)/rpi-patches-$(RPI_PATCHES).patch.xz
$(GRS_PATCHES) = $(URL_IPFIRE)/$(GRS_PATCHES)
-$(DL_FILE)_MD5 = ef927e91cf8b8c4ddf98847341ccf2c8
+$(DL_FILE)_MD5 = 8a4006eff3bbd8aff58fe4b443223e7a
rpi-patches-$(RPI_PATCHES).patch.xz_MD5 = a7408e8bad57b4b2cb677dd5a0bfb7ff
-$(GRS_PATCHES)_MD5 = 6ada73f5b8a8180b4139c71dd5da9059
+$(GRS_PATCHES)_MD5 = 07e5d812146063ed5b2ce49d0d24099b
install : $(TARGET)
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.2.33_ipg-fix-driver-name.patch
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32.27_mcs7830-fix-driver-name.patch
+ # Moschip 7830 link detection
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.10.y-usbnet_mcs7830_rework_link_detect.patch
+
ifeq "$(KCFG)" "-kirkwood"
# Add dreamplug,guruplug and icy 62x0 support on ARM-kirkwood
# Load ethernet settings
eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings)
-if [ "${RED_DEV}" == "" ]; then
- RED_DEV=ppp0
-fi
+case "${RED_TYPE}" in
+ PPPOE)
+ RED_DEV="ppp0"
+ ;;
+esac
# setup_netdev_trigger LED DEVICE MODE
setup_netdev_trigger ()
# Now traverse /sys in order to "coldplug" devices that have
# already been discovered
- /bin/udevadm trigger
+ /bin/udevadm trigger --action=add
# Now wait for udevd to process the uevents we triggered
/bin/udevadm settle
replace("/harddisk/boot/grub/grub.conf", "splashimage", "#splashimage");
replace("/harddisk/boot/grub/grub.conf", "#serial", "serial");
replace("/harddisk/boot/grub/grub.conf", "#terminal", "terminal");
- replace("/harddisk/boot/grub/grub.conf", " panic=10 ", " console=ttyS0,38400n8 panic=10 ");
+ replace("/harddisk/boot/grub/grub.conf", " panic=10 ", " console=ttyS0,115200n8 panic=10 ");
/*inittab*/
replace("/harddisk/etc/inittab", "1:2345:respawn:", "#1:2345:respawn:");
--- /dev/null
+From 4e9792dc8ab29175295c79c35f9f6fbd2d453b35 Mon Sep 17 00:00:00 2001
+From: Octavian Purdila <octavian.purdila@intel.com>
+Date: Mon, 23 Dec 2013 19:06:31 +0200
+Subject: [PATCH] usbnet: mcs7830: rework link state detection
+
+Even with the quirks in commit dabdaf0c (mcs7830: Fix link state
+detection) there are still spurious link-down events for some chips
+where the false link-down events count go over a few hundreds.
+
+This patch takes a more conservative approach and only looks at
+link-down events where the link-down state is not combined with other
+states (e.g. half/full speed, pending frames in SRAM or TX status
+information valid). In all other cases we assume the link is up.
+
+Tested on MCS7830CV-DA (USB ID 9710:7830).
+
+Cc: Ondrej Zary <linux@rainbow-software.org>
+Cc: Michael Leun <lkml20120218@newton.leun.net>
+Cc: Ming Lei <ming.lei@canonical.com>
+Signed-off-by: Octavian Purdila <octavian.purdila@intel.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/usb/mcs7830.c | 19 ++++---------------
+ 1 file changed, 4 insertions(+), 15 deletions(-)
+
+diff --git a/drivers/net/usb/mcs7830.c b/drivers/net/usb/mcs7830.c
+index 9237c45..8dd48b5 100644
+--- a/drivers/net/usb/mcs7830.c
++++ b/drivers/net/usb/mcs7830.c
+@@ -117,7 +117,6 @@ enum {
+ struct mcs7830_data {
+ u8 multi_filter[8];
+ u8 config;
+- u8 link_counter;
+ };
+
+ static const char driver_name[] = "MOSCHIP usb-ethernet driver";
+@@ -562,26 +561,16 @@ static void mcs7830_status(struct usbnet *dev, struct urb *urb)
+ {
+ u8 *buf = urb->transfer_buffer;
+ bool link, link_changed;
+- struct mcs7830_data *data = mcs7830_get_data(dev);
+
+ if (urb->actual_length < 16)
+ return;
+
+- link = !(buf[1] & 0x20);
++ link = !(buf[1] == 0x20);
+ link_changed = netif_carrier_ok(dev->net) != link;
+ if (link_changed) {
+- data->link_counter++;
+- /*
+- track link state 20 times to guard against erroneous
+- link state changes reported sometimes by the chip
+- */
+- if (data->link_counter > 20) {
+- data->link_counter = 0;
+- usbnet_link_change(dev, link, 0);
+- netdev_dbg(dev->net, "Link Status is: %d\n", link);
+- }
+- } else
+- data->link_counter = 0;
++ usbnet_link_change(dev, link, 0);
++ netdev_dbg(dev->net, "Link Status is: %d\n", link);
++ }
+ }
+
+ static const struct driver_info moschip_info = {
+--
+2.0.0
+