--- trunk/usbip/usbippolld-sql 2007/05/15 08:21:23 184 +++ trunk/usbip/usbippolld-sql 2007/05/15 14:39:55 185 @@ -5,25 +5,25 @@ while true do - ALLCLIENTS=$(mysqldo "select id from clients") + ALLCLIENTS=$(mysqldo "select ip from clients") for client in ${ALLCLIENTS} do - clientip=$(mysqldo "select ip from clients where id='${client}'") - - if [[ $(mysqldo "select connected from clients where id='${client}'") = 1 ]] + # filter all not connected clients + if [[ $(mysqldo "select connected from clients where ip='${client}'") = 1 ]] then - BUSID=$(mysqldo "select busid from clients where id='${client}'") + BUSID=$(mysqldo "select busid from clients where ip='${client}'") - echo "-- polling client #${client} - ${clientip} on dev ${BUSID}" - usbip -a ${clientip} ${BUSID} + echo "-- polling client #${client} on dev ${BUSID}" + usbip -a ${client} ${BUSID} else - echo "-- client #${client} - ${clientip} not found, removing from list" + echo "-- client #${client} not found, removing from list" out=$(mktemp) - port=$(usbip -p &> ${out};grep -B3 -i "${clientip}" ${out} | grep Port | cut -d' ' -f2| sed "s|:||") + port=$(usbip -p &> ${out};grep -B3 -i "${client}" ${out} | grep Port | cut -d' ' -f2| sed "s|:||") [[ ! -z ${port} ]] && usbip -d ${port} - #mysqldo "delete from client where id='${client}'" + + mysqldo "update clients set connected='0', busid='' where ip='${client}'" fi done