29 lines
1.2 KiB
Diff
29 lines
1.2 KiB
Diff
|
Index: FilesCheck.py
|
||
|
===================================================================
|
||
|
RCS file: /cooker/soft/rpmlint/FilesCheck.py,v
|
||
|
retrieving revision 1.87
|
||
|
diff -u -r1.87 FilesCheck.py
|
||
|
--- FilesCheck.py 17 Jun 2005 09:48:34 -0000 1.87
|
||
|
+++ FilesCheck.py 6 Jul 2005 14:19:21 -0000
|
||
|
@@ -186,6 +186,7 @@
|
||
|
shellbang_regex=re.compile('^#!\s*(\S*)')
|
||
|
interpreter_regex=re.compile('^/(usr/)?s?bin/[^/]+$')
|
||
|
script_regex=re.compile('^/((usr/)?s?bin|etc/(rc.d/init.d|profile.d|X11/xinit.d|cron.(hourly|daily|monthly|weekly)))/')
|
||
|
+libtool_archive_regex=re.compile('\.la$')
|
||
|
|
||
|
for idx in range(0, len(dangling_exceptions)):
|
||
|
dangling_exceptions[idx][0]=re.compile(dangling_exceptions[idx][0])
|
||
|
@@ -552,10 +553,10 @@
|
||
|
if res:
|
||
|
if not interpreter_regex.search(res.group(1)):
|
||
|
printError(pkg, 'wrong-script-interpreter', f, '"' + res.group(1) + '"')
|
||
|
- else:
|
||
|
+ elif not (lib_path_regex.search(f) and libtool_archive_regex.search(f)):
|
||
|
printError(pkg, 'script-without-shellbang', f)
|
||
|
|
||
|
- if mode & 0111 == 0:
|
||
|
+ if mode & 0111 == 0 and not doc_regex.search(f):
|
||
|
printError(pkg, 'non-executable-script', f, oct(perm))
|
||
|
if line.endswith('\r\n'):
|
||
|
printError(pkg, 'wrong-script-end-of-line-encoding', f)
|