diff options
author | IWASE Yusuke <iwase.yusuke0@gmail.com> | 2018-01-12 14:51:03 +0900 |
---|---|---|
committer | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2018-01-24 08:18:50 +0900 |
commit | 8420d732b682a16fa34fb50725ce4c717287ecfd (patch) | |
tree | 802e7a0f53674a7cb12e946b73c557d5e9c92396 /tools | |
parent | 549b7037381ec51d0c5b9a0abbe8f73000fda70c (diff) |
travis: Script to checkout use of avoided functions
For the 32-bit platform compatibility, strconv.Atoi() should be replaced
by strconv.ParseUint() or strconv.ParseInt().
This scripts prevents the use of these functions which should not be
used with some reasons.
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Diffstat (limited to 'tools')
-rwxr-xr-x | tools/grep_avoided_functions.sh | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tools/grep_avoided_functions.sh b/tools/grep_avoided_functions.sh new file mode 100755 index 00000000..d5b6494b --- /dev/null +++ b/tools/grep_avoided_functions.sh @@ -0,0 +1,27 @@ +#!/usr/bin/env bash + +# List of functions which should not be used with remarkable reasons +FUNCS=( +# On a 32-bit platform, int type is not big enough to convert into uint32 type. +# strconv.Atoi() should be replaced by strconv.ParseUint() or +# strconv.ParseInt(). +'strconv\.Atoi' +) + +SCRIPT_DIR=`dirname $0` + +RESULT=0 + +for FUNC in ${FUNCS[@]} +do + for GO_PKG in $(go list github.com/osrg/gobgp/... | grep -v '/vendor/') + do + grep ${FUNC} -r ${GOPATH}/src/${GO_PKG} + if [ $? -ne 1 ] + then + RESULT=1 + fi + done +done + +exit $RESULT
\ No newline at end of file |