Contents of /trunk/usbip/usbipdevd-sql
Parent Directory | Revision Log
Revision 178 -
(show annotations)
(download)
Thu May 10 14:12:40 2007 UTC (17 years, 4 months ago) by niro
File size: 1156 byte(s)
Thu May 10 14:12:40 2007 UTC (17 years, 4 months ago) by niro
File size: 1156 byte(s)
-using SESSIONID instead of CLIENTIP to identify clients
1 | #!/bin/bash |
2 | |
3 | source /etc/conf.d/usbipdevd |
4 | source /usr/lib/alxconfig-ng/functions/mysqlfunctions |
5 | |
6 | CLIENTIP=$(/sbin/ifconfig eth0 | sed -n '/addr:/s/ [^r]*..//gp') |
7 | |
8 | # get a free session id |
9 | SESSIONID=$(mysqldo "insert into clients (ip,connected) values('${CLIENTIP}','1');select last_insert_id();") |
10 | |
11 | while true |
12 | do |
13 | BUSID=$(bind_driver --list | grep -i ${USBIP_DEVICE_ID} | cut -d ' ' -f4) |
14 | |
15 | if [[ -n ${BUSID} ]] |
16 | then |
17 | echo "BUSID: ${BUSID}" |
18 | |
19 | # abort if nothing has changed |
20 | if [[ $(mysqldo "select connected from clients where id='${SESSIONID}'") = 1 ]] && |
21 | [[ $(mysqldo "select busid from clients where id='${SESSIONID}'") = ${BUSID} ]] |
22 | then |
23 | echo "USBID is the same; nothing changed" |
24 | else |
25 | echo "exporting Logitech Pen with ID ${BUSID}" |
26 | bind_driver --usbip ${BUSID} |
27 | mysqldo "update clients set ip='${CLIENTIP}', connected='1', busid='${BUSID}' where id='${SESSIONID}'" |
28 | fi |
29 | else |
30 | echo "No Logitech Pen (${USBIP_DEVICE_ID}) found ..." |
31 | mysqldo "update clients set ip='${CLIENTIP}', connected='0', busid='${BUSID}' where id='${SESSIONID}'" |
32 | fi |
33 | |
34 | sleep ${USBIP_WAIT_TIMEOUT} |
35 | done |
36 | |
37 | mysqldo "delete from clients where id='${SESSIONID}')" |