1 #
   2 # CDDL HEADER START
   3 #
   4 # The contents of this file are subject to the terms of the
   5 # Common Development and Distribution License (the "License").
   6 # You may not use this file except in compliance with the License.
   7 #
   8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9 # or http://www.opensolaris.org/os/licensing.
  10 # See the License for the specific language governing permissions
  11 # and limitations under the License.
  12 #
  13 # When distributing Covered Code, include this CDDL HEADER in each
  14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15 # If applicable, add the following below this CDDL HEADER, with the
  16 # fields enclosed by brackets "[]" replaced with your own identifying
  17 # information: Portions Copyright [yyyy] [name of copyright owner]
  18 #
  19 # CDDL HEADER END
  20 #
  21 
  22 #
  23 # Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
  24 # Use is subject to license terms.
  25 #
  26 # Copyright 2012 Milan Jurik. All rights reserved.
  27 #
  28 
  29 # This is a "lint tail" that removes all the
  30 # uninteresting lines from our lint output.
  31 # It's awk because sed doesn't do (a|b).
  32 # Also comments are easier here.
  33 
  34 # There's no lintlib for krb5 yet (CR 6911968)
  35 /: Warning: -lkrb5 not found/                   { next; }
  36 /: Warning: library -lkrb5 not found/           { next; }
  37 
  38 # Kill noise from xti.h with _XOPEN_SOURCE vs not. (CR 6911717)
  39 /: _xti_.* .E_INCONS_ARG_DECL2./                { next; }
  40 /: _xti_.* .E_INCONS_ARG_USED2./                { next; }
  41 /: _xti_.* .E_INCONS_VAL_TYPE_DECL2./           { next; }
  42 
  43 # This is third-party code we'd rather not "fix"
  44 /\/spnego.c.* .E_STMT_NOT_REACHED./             { next; }
  45 
  46 # The mb_put/md_get functions are intentionally used both
  47 # with and without return value checks.  Not a concern.
  48 /: mb_put_.* .E_FUNC_RET_[A-Z]*_IGNOR/          { next; }
  49 /: md_get_.* .E_FUNC_RET_[A-Z]*_IGNOR/          { next; }
  50 
  51 # The rc_get* functions clear the out arg even on failure,
  52 # so most callers don't need to check the return value.
  53 /: rc_get[a-z]* .E_FUNC_RET_[A-Z]*_IGNOR/       { next; }
  54 
  55 # These have uninteresting return values, usually ignored.
  56 /: (n|sm)b_ctx_readrcsection .E_FUNC_RET_[A-Z]*_IGNOR/  { next; }
  57 /: nls_str_(lower|upper) .E_FUNC_RET_[A-Z]*_IGNOR/      { next; }
  58 /: rc_(close|freesect) .E_FUNC_RET_[A-Z]*_IGNOR/        { next; }
  59 
  60 # Other functions for which we often ignore return values.
  61 /: [a-z]*close .E_FUNC_RET_[A-Z]*_IGNOR/        { next; }
  62 /: [a-z]*flush .E_FUNC_RET_[A-Z]*_IGNOR/        { next; }
  63 /: [a-z]*printf .E_FUNC_RET_[A-Z]*_IGNOR/       { next; }
  64 /: mem(cpy|move|set) .E_FUNC_RET_[A-Z]*_IGNOR/  { next; }
  65 /: mutex_.* .E_FUNC_RET_[A-Z]*_IGNOR/           { next; }
  66 /: str[ln]?(cat|cpy) .E_FUNC_RET_[A-Z]*_IGNOR/  { next; }
  67 
  68 { print; }