/usr/share/eccodes/definitions/grib2/section.4.def is in libeccodes-data 2.0.2-5.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 | # Copyright 2005-2016 ECMWF.
#
# This software is licensed under the terms of the Apache Licence Version 2.0
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
# 
# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by
# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction.
#
transient timeRangeIndicator=0 : no_copy,hidden;
position offsetSection4;
section_length[4] section4Length ;
meta section4Pointer section_pointer(offsetSection4,section4Length,4);
unsigned[1] numberOfSection = 4:read_only;
unsigned[2] NV  : dump ;
alias numberOfVerticalCoordinateValues=NV ;
alias numberOfCoordinatesValues=NV;
# For table 4.5, code 150 Generalized vertical height coordinate
alias numberOfVerticalGridDescriptors=NV ;
#  Product Definition Template Number
transient neitherPresent = 0;
if (centre==7 || centre==46) {
   alias disableGrib1LocalSection=one;
}
codetable[2] productDefinitionTemplateNumber('4.0.table',masterDir,localDir) : dump;
if (section2Used == 1) {
   when (new()) {
      set_nofail productDefinitionTemplateNumber=productDefinitionTemplateNumberInternal;
   }
}
transient genVertHeightCoords = 0;
template productDefinition "grib2/template.4.[productDefinitionTemplateNumber:l].def" ;
if (defined(marsStream) && defined(marsType)) {
   template_nofail marsKeywords1 "mars/grib.[marsStream:s].[marsType:s].def";
}
template parameters "grib2/parameters.def";
# Detect if this is for Generalized vertical height coordinates
if (defined(typeOfFirstFixedSurface)) {
   if (typeOfFirstFixedSurface == 150) {
      transient genVertHeightCoords = 1;
      transient PVPresent = 0;
   }
}
if (genVertHeightCoords) {
   # Generalized vertical height coordinate case
   ieeefloat nlev  : dump ;
   ieeefloat numberOfVGridUsed : dump;
   byte[16] uuidOfVGrid : dump;
   alias numberOfVerticalCoordinateValues = nlev;
   alias numberOfCoordinatesValues = nlev;
   alias numberOfVerticalGridDescriptors = nlev;
}
else {
   if (NV == 0){
     transient PVPresent = 0;
   } else {
     transient PVPresent = 1;
   }
   # See GRIB-547
   if (PVPresent || NV>0){
      ieeefloat pv[numberOfCoordinatesValues] : dump;
      alias vertical.pv=pv;
   }
   # GRIB-534: To easily remove vertical coordinates, set this key to 1
   concept_nofail deletePV(unknown) {
      "1" = { PVPresent=0; NV=0; }
   }
}
meta md5Section4 md5(offsetSection4,section4Length);
 |