added comments and bug fixes
parent
1027012e91
commit
71f6da1ce4
|
@ -15,6 +15,10 @@ server "dmesg.devel" {
|
||||||
fastcgi strip 1
|
fastcgi strip 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
location "/comment" {
|
||||||
|
fastcgi strip 1
|
||||||
|
}
|
||||||
|
|
||||||
location "/" {
|
location "/" {
|
||||||
directory index upload
|
directory index upload
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,13 +13,13 @@ fail() {
|
||||||
}
|
}
|
||||||
|
|
||||||
str_purifier() {
|
str_purifier() {
|
||||||
sed -e 's/[^A-Za-z0-9\_\.\+\%\-]*//g' -e 's/\+/\\ /g' -e 's/%2B/+/g' -e 's/%3A/:/g'
|
sed -e 's/[^A-Za-z0-9,\_\.\+\%\-]*//g' -e 's/\+/\\ /g' -e 's/%2B/+/g' -e 's/%3A/:/g' -e 's/%20/\\ /g'
|
||||||
}
|
}
|
||||||
|
|
||||||
get_param() {
|
get_param() {
|
||||||
_name="$1"
|
_name="$1"
|
||||||
_value="$(echo "$REQUEST_URI" | sed -n "s/^.*$_name=\([^&]*\).*\$/\1/p" | str_purifier)"
|
_value="$(echo "$REQUEST_URI" | sed -n "s/^.*$_name=\([^&]*\).*\$/\1/p" | str_purifier)"
|
||||||
eval $_name="$_value"
|
eval $_name="$_value"
|
||||||
[ -z "$(eval "echo -ne \$$_name")" ] && eval $_name="Unknow"
|
[ -z "$(eval "echo -ne \$$_name")" ] && eval $_name="Unknown"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@ _SOURCE=$DB/*
|
||||||
|
|
||||||
get_param search
|
get_param search
|
||||||
|
|
||||||
[ "$search" != "Unknow" ] && {
|
[ "$search" != "Unknown" ] && {
|
||||||
_SOURCE="$(grep -i -m1 -R -l "$search" $DB | sed -E -n 's/^(.*)\/(dmesg|state|vendor|date)$/\1/p' | sort | uniq)"
|
_SOURCE="$(grep -i -m1 -R -l "$search" $DB | sed -E -n 's/^(.*)\/(dmesg|state|vendor|date)$/\1/p' | sort | uniq)"
|
||||||
[ -z "$_SOURCE" ] && LIST="<h2>Not found</h2>" || LIST="<h2>Search result for '$search':</h2>"
|
[ -z "$_SOURCE" ] && LIST="<h2>Not found</h2>" || LIST="<h2>Search result for '$search':</h2>"
|
||||||
} || search=""
|
} || search=""
|
||||||
|
@ -22,13 +22,19 @@ do
|
||||||
_date="$(<$_d/date)"
|
_date="$(<$_d/date)"
|
||||||
_notconf="$(<$_d/notconf)"
|
_notconf="$(<$_d/notconf)"
|
||||||
_md5="$(<$_d/md5)"
|
_md5="$(<$_d/md5)"
|
||||||
|
_comment="$(<$_d/comment)"
|
||||||
|
_uname="$(<$_d/uname)"
|
||||||
_dmesg_link="/list/$_vendor-$_model[$_state]-$_md5.txt"
|
_dmesg_link="/list/$_vendor-$_model[$_state]-$_md5.txt"
|
||||||
_device_html="
|
_device_html="
|
||||||
<li>
|
<li>
|
||||||
<a class='dmesg-link' href='$_dmesg_link'>
|
<a class='dmesg-link' href='$_dmesg_link'>
|
||||||
<span class='$_state' title='$_state'>[$_state]</span>
|
<span class='$_state' title='$_state'>[$_state]</span>
|
||||||
$_model</a>
|
$_model</a>
|
||||||
<span class='notconf'>Not configured: </span><span class='notconf-val'>$_notconf</span><span class='date'>$_date</span>
|
<span class='notconf'>Not configured: </span>
|
||||||
|
<span class='notconf-val'>$_notconf</span>
|
||||||
|
<span class='date'>$_date</span><br>
|
||||||
|
<span class='comment'>$_uname</span>
|
||||||
|
<br><span class='comment'>Comment: $_comment</span>
|
||||||
</li>"
|
</li>"
|
||||||
vendors="${vendors}\n${_vendor}"
|
vendors="${vendors}\n${_vendor}"
|
||||||
eval "vendor_$_vendor=\"\$vendor_$_vendor $_device_html\""
|
eval "vendor_$_vendor=\"\$vendor_$_vendor $_device_html\""
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
#!/bin/sh
|
||||||
|
. /var/common.sh
|
||||||
|
|
||||||
|
get_param token
|
||||||
|
|
||||||
|
[ "$token" = "Unknown" ] && fail
|
||||||
|
|
||||||
|
HD="$DB/$token"
|
||||||
|
|
||||||
|
[ -e "$HD" ] && {
|
||||||
|
get_param comment
|
||||||
|
[ "$comment" = "Unknown" ] && fail "ERROR: no comment"
|
||||||
|
[ ${#comment} -gt 128 ] && fail "too much comment size (need <= 128 bytes)"
|
||||||
|
echo -en "$comment" > "$HD/comment"
|
||||||
|
}
|
||||||
|
echo -en "Content-type: text/html\r\n\r\n"
|
||||||
|
echo "Ok"
|
||||||
|
echo "Your comment: '$comment' has been accepted"
|
||||||
|
exit 0
|
|
@ -77,7 +77,7 @@ a.dmesg-link:after {
|
||||||
content: '';
|
content: '';
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
span.notconf {
|
span.notconf, span.comment {
|
||||||
margin-left: 24px;
|
margin-left: 24px;
|
||||||
}
|
}
|
||||||
a.dmesg-link ~ * {
|
a.dmesg-link ~ * {
|
||||||
|
|
|
@ -7,7 +7,7 @@ LIST=/var/www/list
|
||||||
|
|
||||||
gen_user_token() {
|
gen_user_token() {
|
||||||
get_param token
|
get_param token
|
||||||
[ "$token" != "Unknow" ] && [ -e "$DB/$token" ] && {
|
[ "$token" != "Unknown" ] && [ -e "$DB/$token" ] && {
|
||||||
echo -en "$token"
|
echo -en "$token"
|
||||||
true
|
true
|
||||||
} || {
|
} || {
|
||||||
|
@ -38,23 +38,6 @@ check_dmesg_file() {
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
#get_params() {
|
|
||||||
# _vendor="$(echo "$REQUEST_URI" | sed -n 's/^.*vendor=\([^&]*\).*$/\1/p' | str_purifier)"
|
|
||||||
#
|
|
||||||
# _model="$(echo "$REQUEST_URI" | sed -n 's/^.*model=\([^&]*\).*$/\1/p' | str_purifier)"
|
|
||||||
#
|
|
||||||
# _state="$(echo "$REQUEST_URI" | sed -n 's/^.*state=\([^&]*\).*$/\1/p' | str_purifier)"
|
|
||||||
#
|
|
||||||
# [ -z "$_vendor" ] && _vendor="Unknow"
|
|
||||||
# [ -z "$_model" ] && _model="Unknow"
|
|
||||||
# [ -z "$_state" ] && _state="Unknow"
|
|
||||||
# echo -en "$_vendor" > "$HD/vendor"
|
|
||||||
# echo -en "$_model" > "$HD/model"
|
|
||||||
# echo -en "$_state" > "$HD/state"
|
|
||||||
# mkdir -p "$LIST/$_vendor"
|
|
||||||
# echo "$_vendor-_-$_model-[$_state]"
|
|
||||||
#}
|
|
||||||
|
|
||||||
_RESULT=""
|
_RESULT=""
|
||||||
|
|
||||||
[ "$REQUEST_METHOD" = "POST" -a "$CONTENT_LENGTH" -gt 0 ] && {
|
[ "$REQUEST_METHOD" = "POST" -a "$CONTENT_LENGTH" -gt 0 ] && {
|
||||||
|
@ -66,7 +49,7 @@ _RESULT=""
|
||||||
DFILE="$HD/dmesg"
|
DFILE="$HD/dmesg"
|
||||||
mkdir -p "$HD"
|
mkdir -p "$HD"
|
||||||
|
|
||||||
[ "$token" != "Unknow" ] && {
|
[ "$TOKEN" != "Unknown" ] && {
|
||||||
_v="$(<$HD/vendor)"
|
_v="$(<$HD/vendor)"
|
||||||
_m="$(<$HD/model)"
|
_m="$(<$HD/model)"
|
||||||
_s="$(<$HD/state)"
|
_s="$(<$HD/state)"
|
||||||
|
@ -101,6 +84,8 @@ _RESULT=""
|
||||||
MD5="$(md5 -q "$DFILE")"
|
MD5="$(md5 -q "$DFILE")"
|
||||||
echo -en "$MD5" > "$HD/md5"
|
echo -en "$MD5" > "$HD/md5"
|
||||||
|
|
||||||
|
grep OpenBSD "$DFILE" > "$HD/uname"
|
||||||
|
|
||||||
FULL_LINK_NAME="$vendor-$model[$state]-${MD5}.txt"
|
FULL_LINK_NAME="$vendor-$model[$state]-${MD5}.txt"
|
||||||
LINK_NAME="$model[$state]-${MD5}.txt"
|
LINK_NAME="$model[$state]-${MD5}.txt"
|
||||||
|
|
||||||
|
@ -110,8 +95,11 @@ _RESULT=""
|
||||||
|
|
||||||
_RESULT="
|
_RESULT="
|
||||||
Thank you, your dmesg was uploaded!
|
Thank you, your dmesg was uploaded!
|
||||||
Link: http://$HTTP_HOST/list/$FULL_LINK_NAME
|
Link: http://$HTTP_HOST/list/$FULL_LINK_NAME
|
||||||
Edit URI: /upload?token=$TOKEN&vendor=$vendor&model=$model&state=$state
|
Token: $TOKEN
|
||||||
|
Edit: curl --data \"$(dmesg)\" '/upload?token=$TOKEN&vendor=$vendor&model=$model&state=$state'
|
||||||
|
Also you can add a comment:
|
||||||
|
ftp -V -o - 'http://$HTTP_HOST/comment?token=$TOKEN&comment=ethernet ok, storage ok'
|
||||||
"
|
"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -125,9 +113,12 @@ echo "<HTML><HEAD><title>OpenBSD dmesg database</title></HEAD>\n";
|
||||||
echo "<body>";
|
echo "<body>";
|
||||||
echo '
|
echo '
|
||||||
<h1>OpenBSD dmesg collection</h1>
|
<h1>OpenBSD dmesg collection</h1>
|
||||||
<p><a href="/list">List of all files</a></p>
|
<p><a href="/beautylist">Our dmesgs list</a></p>
|
||||||
<p>You can send your dmesg from command line:</p>
|
<p>You can send your dmesg from command line:</p>
|
||||||
<p><i>curl --data "$(dmesg)" "http://'"$HTTP_HOST"'/upload?<b>vendor=Apple&model=MacBook_Pro_2017_13&state=Bad</b>"</i></p>
|
<p><i>curl --data "$(dmesg)" "http://'"$HTTP_HOST"'/upload?<b>vendor=Apple&model=MacBook_Pro_2017_13&state=Bad</b>"</i></p>
|
||||||
<p><a href="/beautylist">Beautiful list</a></p>
|
<p>
|
||||||
|
Or if you'"'"'re a cool hacker:<br>
|
||||||
|
<i>echo -ne "POST /upload?vendor=Apple&model=MacBook_Pro_2017_13&state=Bad HTTP/1.0\\r\\nHost: '"$HTTP_HOST"'\\r\\nContent-Type: application/x-www-form-urlencoded\\r\\nContent-Length: $(dmesg|wc -c|tr -d ' ')\\r\\n\\r\\n$(dmesg)\\r\\n" | nc '"$HTTP_HOST"' 80</i>
|
||||||
|
</p>
|
||||||
'
|
'
|
||||||
echo "</body></HTML>\n";
|
echo "</body></HTML>\n";
|
||||||
|
|
Loading…
Reference in New Issue