odbc_result_all
(PHP 4, PHP 5, PHP 7)
odbc_result_all — Print result as HTML table
说明
int odbc_result_all ( resource $result_id [, string $format ] )
Prints all rows from a result identifier produced by odbc_exec(). The result is
printed in HTML table format.
参数
result_id
The result identifier.
format
Additional overall table formatting.
返回值
Returns the number of rows in the result or FALSE on error.
User Contributed Notes 8 notes
===============================================================================
a revised version marius' code that works with Memo fields. (also returns
rather than prints strings)
function ODBCResourceToHTML($res, $sTable, $sRow)
{$cFields = odbc_num_fields($res);
$strTable = "
";
for ($n=1; $n<=$cFields; $n++)
{$strTable .= "| ". str_replace("_", " ", odbc_field_name($res,
$n)) . " | ";}
$strTable .= "
";
while(odbc_fetch_row($res))
{ $strTable .= "";
for ($n=1; $n<=$cFields; $n++)
{$cell = odbc_result($res, $n);
if ($cell=='') {$strTable .= "| | ";}
else {$strTable .= "". $cell . " | ";}}
$strTable .= "
";}
$strTable .= "
";
Return $strTable;}
DEAR MODERATORS: you would save yourselve much much time by making this entire
manual into a wiki (ie like http://en.wikipedia.org ) and within a year this
would be the best manual on anything!!
best wishes, Erich
===============================================================================
The $format parameter is an optional string that gets inserted in the
tag. The string is printed as-is. E.g.:
... prints:
...
===============================================================================
code for php mssql odbc connection and executing an stored procedure
===============================================================================
I've written this little function that functions simirarly to odbc_result_all,
but works with MySQL:
/**
* This function emulates the odbc_result_all function, which will return a HTML
table cosisting of
* the results of an SQL query.
* Usage: pass a mysql result set to this function, and it will return (not
output) a string containing
* an HTML table
* Parameters:
* - $result is your mysql result set (result of a mysql_query() function call)
* - $tableFeatures is a string containing any HTML TABLE features you would
like in the table
* (eg. BORDER="0" etc.)
*/
function _mysql_result_all($result, $tableFeatures="") {
$table .= "\n\n";
$table .= "\n\n";
$noFields = mysql_num_fields($result);
$table .= "\n";
for ($i = 0; $i < $noFields; $i++) {
$field = mysql_field_name($result, $i);
$table .= "\t| $field | \n";
}
while ($r = mysql_fetch_row($result)) {
$table .= "
\n";
foreach ($r as $kolonne) {
$table .= "\t| $kolonne | \n";
}
$table .= "
\n";
}
$table .= "
\n\n";
$table .= "\n\n";
return $table;
}
Enjoy...
===============================================================================
I wrote a small function slightly similiar to odbc_record_all, but there you
can use format for both table and rows separately, which is not by
odbc_record_all. hope it will be useful some how.
--- Sanjay, Germany
Here is code:
odbc_result_all_ex($result, 'Border=0 cellspacing=0 cellpadding=5', "style=
'FONT-FAMILY:Tahoma; FONT-SIZE:8pt; BORDER-BOTTOM:solid 1pt gree'");
function odbc_result_all_ex($res, $sTable, $sRow)
{
$cFields = odbc_num_fields($res);
$strTable = "";
$strTable .= "";
for ($n=1; $n<=$cFields; $n++)
{
$strTable .= "| ". str_replace("_", " ", odbc_field_name
($res, $n)) . " | ";
}
$strTable .= "
";
while(odbc_fetch_row($res))
{
$strTable .= "";
for ($n=1; $n<=$cFields; $n++)
{
if (odbc_result($res, $n)=='')
{
$strTable .= "| | ";
}
else
{
$strTable .= "". odbc_result($res, $n) . " | ";
}
}
$strTable .= "
";
}
$strTable .= "
";
Print $strTable;
}
===============================================================================
As some people stated in the ODBC overview, some buggy drivers always return
the number of rows to be -1. AFAIK the only way to help this situation is to
count the rows by calls to odbc_fetch_into or odbc_fetch_row and then build the
table yourself.
===============================================================================
About the $result reseting array instead of using:
1) odbc_fetch_row($result, 1);
use:
2) odbc_fetch_row($result, 0);
1) will fail because it will not show first record, arrays start with subscript
0.
===============================================================================
odbc_result_all($result) cycles through
$result. So a subsequent call to odbc_fetch_row($result) will fail.
You must use odbc_fetch_row($result, 1)
to reset $result. (But when I do that,
I get a crash!)


From:scott neal scott.neal@worldnet.att.net@ENRON To:Neal Scott Sent:2017-01-11T04:41:58.0000000Z Subject:FW: Information You Requested
-----Original Message-----
From<EMAIL_ADDRESS><EMAIL_ADDRESS>Sent: Tuesday, September 25, 2001 8:17 PM
To<EMAIL_ADDRESS>Subject: Information You Requested
Dear Sir or Madam:
We are happy to present you with your username and password, as you
requested. It is our pleasure to have been of service.
Username: sneal121
Password: common91
If you have any other questions or problems, please let us know at
<EMAIL_ADDRESS>or call us at 1-800-562-9571.
Sincerely,
Karen Smith Singer
Director - Customer Retention
TheStreet.com
Ignore Us At Your Own Risk
www.thestreet.com
***********
EDRM Enron Email Data Set has been produced in EML, PST and NSF format by ZL Technologies, Inc. This Data Set is licensed under a Creative Commons Attribution 3.0 United States License <http://creativecommons.org/licenses/by/3.0/us/> . To provide attribution, please cite to "ZL Technologies, Inc. (http://www.zlti.com)."
***********
California


Status: * Work in Progress * Team-only * Last updated : Feb, 2018 *
We are on GitHub:
fork this document, or file issues on
https://github.com/w3c/design
.
[@@Add description@@]
To ensure that those who use the W3C Logos are able to reproduce them correctly, this document contains information about the colors, fonts, and dimensions used to create the them. It also describes the intended use of the full W3C Logo and the Standalone Logo.
See also the public Logo and Icon Usage Policy and team-only W3C Logos + Icons (both current and historical)
Web usage: [@@fill@@]
Print usage: [@@fill@@]
This logo was designed in September 1996 by Sally Khudairi [@@update old link@@] and Georges Ouanounou of INRIA.
Web usage: [@@fill@@]
Print usage: [@@fill@@]
Web usage: [@@fill@@]
Print usage: [@@fill@@]
The W3C logo was designed to be on a white background; avoid other background colors.
On occasions, the W3C logo is to have a transparent background and should "float". Instances include where the background is a color other than white (i.e. pages on the W3C website which use a specific style sheet or background image).
In the case where there is no alternative other than printing on a colored background, and printing more than 2 colors is possible, put a white border around the logo, with enough white space to balance the logo. Under no circumstances should the void caused by the abstract "C" in the logo be truncated at the top.
The font in the W3C logo is Base Twelve Sans from Emigre Graphics.
In print materials, we recommend Gill Sans and Gill Sans Bold from Adobe Systems. Walbaum may be used for a second font. Times Roman may be substituted for Walbaum.
There was a decision taken in March 2017 to change the font of the WAI and W3C website to Noto Sans.
[Note from Tanya: the fonts I've consistently used in the past year for both print + graphics have been Lato, Roboto, and Montserrat.]
We use different "W3C blues" on the Web and in print; see below for values and notes from IJ on colors and formats.
Web : #005A9C
Web : RGB(0,90,156)
Print : CMYK(100,56,0,0)
Print : Pantone PMS 293 C Blue / Reflex Blue
Web : #FFFFFF
Web : RGB(255,255,255)
Print : CMYK(0,0,0,0)
Print : Pantone White
Web : #000000
Web : RGB(0,0,0)
Print : CMYK(0,0,0,100)
Print : Pantone Process Black / Black 6
Web : #FFCC66
Web : RGB(255,204,102)
Web : #990000
Web : RGB(153,0,0)
Web : #CB6628
Web : RGB(203,102,40)
CMYK(16.08,69.02,99.61,3.53)
Web : #005A9C (W3C Blue)
Web : #0050B2
Notes from Fabrice/Marie/IJ discussion (Oct 2007):
This is one of the better descriptions of color usage in brand identity; Texas Tech's Identity suites are the best XHTML materials Janet has seen.
Dolor.
| this | that | and that | or that |
| item |
- |
- |
- |
| item |
- |
- |
- |
Description
Sit amet.
Consectetur adipiscing elit.
Sed do eiusmod tempor incididunt.


Pokello criticised over Warriors visit
Socialite and former Big Brother Africa contestant Pokello Nare was today criticised by journalist and soccer analyst Makomborero Mthimkhulu who fuelled other Twitter users to criticise her for her controversial visit to the Zimbabwe national football team camp.
by Marshall BwanyaPokello who rose to fame Kim Kardashian style through a bedroom tape with her former boyfriend, rapper Desmond ‘Stunner’ Chideme, received a backlash for her visit to the Warriors.
Mthimkhulu stunned Pokello ambushing her on her handle.
Related Articles
Gringo blames piracy for his financial woes
Oct 22, 2019 28,413 24
Oct 18, 2019 39,305 10
Pokello, Jackie Ngarande rescue Gringo
Oct 18, 2019 46,167 34
Ammara, Pokello to auction clothes on BidBuddie
May 30, 2019 18,839 0
“Pokello or anyone else with no business with the national team must keep away from the Warriors camp! Simple football business,” he wrote.
A provoked Pokello justified her visit to the Warriors camp arguing that she was actually there for business. On her handle she wrote: “I was there on football business.
“And I have authorisation to be there for as long as my son is a member of a Zimbabwe soccer national team. Now Save that for your Records!” she wrote.
Mthimkhulu fumed:”Your son is a member of the Zim soccer team.
“Excuse the ignorance but who is your son? What position does he play?
“Stop digging Pokello…you are making it worse, he agitated.”
Twitter user @moyaz89 trolled Pokello sarcastically asking her what position her son played:
“Hezvo? What position does your son play? He wrote.”
Twitter user @Nheta Tracey argued Pokello’s case by saying, “am with you, Pokello owes no one an apology, she said.”
More criticism rolled out for Pokello as Twitter user @brendymudhubhe alluded that if she wanted to generate positive influence for the Warriors she should only show up at the stadium for matches.
“If she wants to give influence she can go to the stadium after all what social influence can she give to players and its a camp not an event.
“These players are not even allowed to see their wives once they sign up for camp motiudza Pokello,” he wrote. Nehanda Radio


{% extends "base.html" %} {% block content %} {% include "navigation.html" with active_tab='resources' %}
These are helpful resources for playing the game.


Parsers¶
Common Parser Utilities¶
Collection of input parser utilities to extract IP addresses.
This includes common regex patterns and utilities for extracting IP addresses for resolution.
-
class
libchickadee.parsers.
ParserBase
(ignore_bogon=True)¶ Base class for parsers, containing common utilities.
-
check_ips
(data)¶ Check data for IP addresses. Results stored in
self.ips
.- Parameters
data (str) – String to search for IP address content.
- Returns
None
-
static
is_bogon
(ip_addr)¶ Identifies whether an IP address is a known BOGON.
- Parameters
ip_addr (str) – Valid IP address to check.
- Returns
Whether or not the IP is a known BOGON address.
- Return type
(bool)
-
static
strip_ipv6
(ipv6_addr)¶ Isolate IPv6 Value containing a
%
symbol.- Parameters
ipv6_addr (str) – Raw IPv6 IP address to strip.
- Returns
IP address base.
- Return type
(str)
-
-
libchickadee.parsers.
run_parser_from_cli
(args, parser_obj)¶ Allow a parser to run from the command line, both for testing and increased usability.
Plain Text Parser¶
Parse IP addresses from plain text files. Plain text files include logs, CSVs, JSON, and other formats where ascii strings contain IPv4 or IPv6 addresses.
Also supported reading from gzipped compressed plain text data without needing to first decompress it.
-
class
libchickadee.parsers.plain_text.
PlainTextParser
(ignore_bogon=True)¶ Class to extract IP addresses from plain text and gzipped plain text files.
-
static
is_gz_file
(filepath)¶ Validate whether the input is GZipped.
- Parameters
filepath (str) – File path to test.
- Returns
True if a gzip file signature is identified.
- Return type
(bool)
-
parse_file
(file_entry, is_stream=False)¶ Parse contents of the file and extract IP addresses.
Will read from STDIN or path to a file. Stores results in
self.ips
.- Parameters
file_entry (str or file_obj) – Path to file for reading.
is_stream (bool) – Whether the input file is a file to open or a file-like object.
- Returns
None
-
static
XLSX File Parser¶
Parse IP addresses from XLSX files. This will extract IP addresses stored as values (not formulas) across all tabs within a spreadsheet.
-
class
libchickadee.parsers.xlsx.
XLSXParser
(ignore_bogon=True)¶ Class to extract IP addresses from XLSX workbooks.
-
parse_file
(file_entry, is_stream=False)¶ Parse xlsx contents. Must be a path to an existing XLSX workbook. Cannot parse from STDIN.
- Parameters
file_entry (str) – Path to workbook to load.
is_stream (bool) – Unused argument, required for implementation. Does not change functionality.
-
Extract IP addresses from EVTX files.
-
class
libchickadee.parsers.evtx.
EVTXParser
(ignore_bogon=True)¶ Class to expose EVTX record contents for IP address extraction
-
parse_file
(file_entry, is_stream=False)¶ Parse EVTX contents. Must be a path to an existing EVTX file. Cannot parse from STDIN.
- Parameters
file_entry (str) – Path to EVTX file to load.
is_stream (bool) – Unused argument, required for implementation. Does not change functionality.
-


| |
|
|
|
|
| M Jan 9 |
Introduction |
|
Ch 1: Intro |
|
| W Jan 11 |
TA: Matlab and Math Review |
|
|
HW 1: Intro and Line Search, truss.m, solutions* |
| F Jan 13 |
fmincon |
notebook: fmincon usage, fmincon template |
Ch 2: Line Search |
Quiz 1 |
| |
|
|
|
|
| M Jan 16 |
MLK Jr. Day |
|
|
|
| W Jan 18 |
Line Search 1 |
gradient and directional derivative |
|
|
| F Jan 20 |
Line Search 2 |
notebook: bisection |
|
Quiz 2 |
| |
|
|
|
|
| M Jan 23 |
Unconstrained 1 |
notebook: steepest descent |
Ch 3: Gradient-Based Optimization |
|
| W Jan 25 |
Unconstrained 2 |
|
|
HW 2: Uncon. Opt., uncon.m, solutions* |
| F Jan 27 |
Unconstrained (con’t) |
iteration example |
|
Quiz 3 |
| |
|
|
|
|
| M Jan 30 |
Trust Region |
notebook: trust region |
|
|
| W Feb 1 |
No Class: CB Flooding |
|
|
Abstract Due |
| F Feb 3 |
Finite Differencing |
in-class exercise: fdandcs.m |
Ch 4: Computing Derivatives |
Quiz 4 |
| |
|
|
|
|
| M Feb 6 |
Complex Step |
further details |
|
|
| W Feb 8 |
Automatic Differentiation |
notebook: symbolic vs AD |
|
HW 3: Computing Derivatives, trussderiv.m, solutions* |
| F Feb 10 |
Adjoint |
in-class exercise: adjoint.m |
|
Quiz 5 |
| |
|
|
|
|
| M Feb 13 |
Adjoint example |
|
|
|
| W Feb 15 |
Derivatives wrap-up |
fmincon template with deriv |
|
|
| F Feb 17 |
KKT Conditions |
|
Ch 5: Constrained Optimization |
Quiz 6 |
| |
|
|
|
|
| T Feb 21 |
KKT 2 |
|
|
|
| W Feb 22 |
KKT wrapup |
|
|
HW 4: Constrained Optimization, solutions* |
| F Feb 24 |
Penalty Methods |
notebook: penalty |
|
Quiz 7 |
| |
|
|
|
|
| M Feb 27 |
SQP 1 |
|
|
|
| W Mar 1 |
SQP 2 |
|
|
|
| F Mar 3 |
Interior Point Methods |
IP example, Scaling Example |
|
Quiz 8 |
| |
|
|
|
|
| M Mar 6 |
Multiobjective |
|
|
|
| W Mar 8 |
Nelder-Mead Simplex |
|
Ch 6: Gradient-Free Optimization |
HW 5: Gradient-Free Optimization, solutions* |
| F Mar 10 |
Binary Encoded Genetic Algorithm |
Mixed Integer GA Example |
|
Quiz 9 |
| |
|
|
|
|
| M Mar 13 |
Real Encoded Genetic Algorithm |
notebook: GA |
|
|
| W Mar 15 |
Particle Swarm |
|
|
|
| F Mar 17 |
Spring Holiday |
|
|
|
| |
|
|
|
|
| M Mar 20 |
GA/PS Wrapup |
Multiobj example |
|
|
| W Mar 22 |
Mixed Integer Linear Programming |
traveling salesmen. Excel worksheet based on this. |
|
|
| F Mar 24 |
OUU Introduction and Robustness |
1D robust optimization notebook |
Ch 8: Optimization Under Uncertainty |
Quiz 10 |
| |
|
|
|
|
| M Mar 27 |
Reliability and Forward Propagation |
Monte Carlo notebook |
|
|
| W Mar 29 |
Approximate Reliability Methods |
Approx. reliability notebook |
|
Rough Draft Due, HW 6: OUU and SBO, supersonic files, solutions* |
| F Mar 31 |
Sampling |
see prev. Monte Carlo example, LHS added at bottom |
|
Quiz 11 |
| |
|
|
|
|
| M Apr 3 |
Constructing a Surrogate |
poly surrogate model and cross validation notebook |
|
|
| W Apr 5 |
Infill |
Kriging example |
|
|
| F Apr 7 |
SBO Wrap-up |
|
|
Quiz 12 |
| |
|
|
|
|
| M Apr 10 |
Review |
|
|
|
| W Apr 12 |
Review |
script |
|
|
| F Apr 14 |
No Class |
|
|
|
| |
|
|
|
|
| M Apr 17 |
Presentations |
|
|
|
| T Apr 18 |
Presentations |
|
|
|
| W Apr 19 |
Presentations |
|
|
Final Report Due |


RESCUE.ME
The Super Hero Request System
We Will Save You.
Just fill out this simple form and a Super Hero will be on the way.
Page 1 of 2
Who Needs Rescuing?


1. jQuery is a: JavaScript Library JavaScript Language JavaScript Method PHP Method
2. What does CSS stand for : Colorful style sheet Creative style sheets cascading style sheet Computer style sheet
3. Which sign does jQuery use as a shortcut for jQuery: the % sign the ? Sign the $ sign the # sign
4. With jQuery, look at the following selector: $("div"). What does it select: All div elementst The first div element The second div element The forth div element
1. What is the other name for Javascript : JS ECMA script Vanila JS All the above
2. Select the correct statement : Js is a server-side language Js is used only for web application All the above Js is used to create interactive web pages
3. What will console.log do : Print result in console Print value stored in a variable Print value name All the above
1. Is C++ a low level language: Yes No Not Sure None of the above
2. Which jQuery method is used to hide selected elements? : hidden() hide() visible(false) display(none)


Innovating the social safety net 💻🇺🇸
We are joined by Amanda Renteria, CEO of Code for America to talk about their new program, the Safety Net Innovation Lab and the impact it could have on government services.
Join us on Discord
Resources and Shoutouts:
Music Credit: Tumbleweeds by Monkey Warhol
Previous Apr 26, 2022
« Customer experience and government services with Clare Martorana, Mina Hsiang, and Jodi Leo 👩💻🏛
« Customer experience and government services with Clare Martorana, Mina Hsiang, and Jodi Leo 👩💻🏛
May 25, 2022 Next
Digital identity and services delivery 🆔 »
Digital identity and services delivery 🆔 »


Hello!
I am Brandon Rimes, dynamic autodidact and abstract intellectual. I was born in Jupiter, FL 30 years ago under a Scorpio sun, and currently reside in Stuart, FL. My insatiable thirst for knowledge and ‘hit the ground running’ attitude enable me to learn with agility and eloquence. My brain is entertained by intricate puzzles and problems, with a flair for clever design and organic beauty.
My experience is variegated with professional and recreational endeavors, from technical to interpersonal. I employ a high mechanical aptitude and formal training in communication / therapeutic relations to excel. I perform well individually and as a team member. Leadership and support roles are both comfortable places for me.
My intention is to apply and advance my computer programming repertoire, creating clean, concise, commented code. I get excited about planet-positive projects that improve our lives and environment (ex. automated reforestation) as well as exquisite user experience web design.
I enjoy being immersed in nature, gardening, playing various musical instruments, creating ornate objects (furniture, art, tools, etc.), traveling, learning, teaching, connecting with and helping people, and sharing these things with my fellow humans.


We're are experiencing some trouble on our end. Please try again in the near future. Back to homepage.
{% extends "layout.html" %} {% block content %}
We're are experiencing some trouble on our end. Please try again in the near future. Back to homepage.


Returns Euler's constant, the base of natural logarithms.
Syntax
e
Remarks
The e constant is approximately equal to 2.7183 (2.71828182845905).


Search 3085 sentence completion norms
This is an online search interface for completion norms for 3085 English sentences.
You can save this webpage to use on your local computer (using File > Save As from your menu) or by downloading from GitHub, which may run faster than the online version.
If you use these norms in scientific work, please cite:
Peelle JE, Rogers CS, Miller R, Spehar B, Sommers MS, Van Engen KJ. Completion norms for 3085 English sentence contexts.


- Installations
- Drawings
- Objects
- Photographs
- Games
- About
Sahar Kubba is an architect and installation artist based in New York City.
Twitter LinkedIn<EMAIL_ADDRESS>The source code for this website is available on GitHub.
Hors Signal is an audio installation exploring the creation of a suppressive, authoritative space through the production of silence. Produced during a six week artist residency at Eastern Bloc in Montréal.
City of Lost Artifacts is an installation that aimed at documenting and exploring the 2003 looting of the Iraqi National Museum
An ongoing series of drawings based on the US senate report on the CIA torture program
Ink on Paper
This game was produced during a six week incubator with Pixelles
Right arrow to Move
R to Restart game
Played best with headphones
Atelier JAMAD


description = "Map & Form" ==
Feel free to send us a message. We aim to get in touch within 24 hours.


Based on the 2013 shutdown numbers with 800k people out of work, and a cost of roughly $1.30/minute per person.


Guidance
Scheme to support the retention of new graduate mathematics teachers.
Ref: BIS/14/904 PDF , 110KB , 12 pages
Provides detailed guidance for the Golden Hello scheme for new graduate mathematics teachers in further education ( FE ) first announced by Matthew Hancock in February 2014.
The scheme is available to newly qualified mathematics teachers, who take up their first teaching post between April 2014 and September 2015. It replaces the summary note that was published on 23 April 2014 and provides more detailed information about eligibility criteria and the registration process for this scheme. This is part of a the wider Further education workforce strategy to improve the quality of teaching and learning in the further education sector.
Published: 23 April 2014


Cause Detail
Home
Cause Detail
Remaining Time:
Donations:
Raised:
Goal:
Tags:
Share:
Admin Post
Association


IN THE HIGH COURT OF KERALA AT ERNAKULAM PRESENT: THE HONOURABLE THE AG.CHIEF JUSTICE MR.ASHOK BHUSHAN & THE HONOURABLE MR.JUSTICE A.M.SHAFFIQUE MONDAY, THE 15TH DAY OF DECEMBER 2014/24TH AGRAHAYANA, 1936 WA.No.1715 of 2014 ----------------------------- AGAINST THE JUDGMENT IN WP(C) NO.9136/2014 of this HONOURABLE COURT. ... APPELLANTS/PETITIONERS: ------------------------------------------ 1. ELDHOSE ALIAS,S/O.ALIAS,MAMMOOTTIL HOUSE, KOTHAMANGALAM,MATHIRAPPALLY-686 691, ERNAKULAM DISTRICT. 2. K.M.ALIYAR,S/O.K.A.MOHAMMED, KURUMATHUKUDI HOUSE,MATHIRAPPALLY, KARUKADOM P.O.,MATHIRAPPALLY-686691 ERNAKULAM DISTRICT. BY ADV.SRI.KALEESWARAM RAJ RESPONDENTS/RESPONDENTS: ----------------------------------------------- 1. P.V.KURIYAKOSE,S/O.VARKKI,MANAGING DIRECTOR, M/S.PALAPPILLIL SPECIFIED BLOCK RUBBERS PVT.LTD. KARUKADAM,KOTHAMANGALAM-686 691, ERNAKULAM DISTRICT. 2. MUNICIPAL COUNCIL,KOTHAMANGALAM MUNICIPALITY, REPRESENTED BY THE SECRETARY, KOTHAMANGALAM MUNICIPALITY, KOTHAMANGALAM-686 691. 3. MUNICIPAL COUNCIL,KOTHAMANGALAM MUNICIPALITY, REPRESENTED BY THE CHAIRMAN, KOTHAMANGALAM MUNICIPALITY, KOTHAMANGALAM-686 691.  C.J & A.M. Shaffique, J. =-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-= W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 =-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-= Dated this, the 15th day of December, 2014. J U D G M E N T
Shaffique, .
The petitioners in W.P(C) No. 9136/2014 are the appellants W.A. No. 1715 of 2014. They challenge the judgment dated 7.11.2014 of the learned Single Judge.
2. W.P(C) No. 9136/2014 was filed seeking to quash Ext. P5, a common order passed by the Tribunal for Local Self Government Institutions (hereinafter referred as the 'Tribunal') in Appeal No. 274/2013 and Revision Petition No. 157/2013. Appeal No. 274/2013 was filed by the 1st respondent herein challenging the decision dated 8.3.2013 of the Municipal Council, whereby the 1st respondent was denied renewal of his licence for functioning an industrial unit. Revision Petition No. 157/2013 was filed by the 1st respondent, challenging the decision dated 8.10.2013 in an appeal filed by the 1st respondent before the Municipal Council. The appeal and the revision were heard together and allowed. The decision of the Municipal Council dated 8.3.2013 was set aside and a direction was issued to the Municipality to issue licence to the 1st respondent. The revision petition was also allowed, setting aside the order W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 2 :- dated 8.10.2013, rejecting the appeal filed by the 1st respondent.
3. The facts involved in the writ petition would disclose that the petitioners are certain persons in the Municipal area where the 1st respondent has started functioning a unit under the name and style M/s. Palappilin Specified Block Rubbers Pvt. Ltd. According to the 1st respondent he is the Managing Director of a Company M/s. Palappilin Specified Block Rubbers Pvt. Ltd. , which started functioning since 1983. In the year 1996, it started to operate as a small crumb rubber factory with all licences/permission from statutory authorities. Certain objections were raised by the Pollution Control Board regarding treatment of the effluent during 2011, on the basis of which the Municipality suspended the licence. The contention urged by the 1st respondent before the Tribunal was that despite rectifying of defects pointed out by the Pollution Control Board, the licence was not renewed. Several litigations followed and finally, as per judgment dated 10.12.2012 in W.P(C) No. 1253/2012, this Court directed the Council to dispose of the Appeal pending before it. It is stated that a sub W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 3 :- committee was constituted by the Council who inspected the factory and prepared a report. Based on the said report, the Council, in its meeting held on 8.3.2013, decided to refuse the licence to the 1st respondent. There was a request to renew the licence and by virtue of a direction issued by this Court in its judgment dated 20.6.2013 in W.P(C) No. 15653/2013, a decision was taken by the Council in the meeting held on 31.8.2013 deciding not to renew the licence, which was the subject matter in the revision petition before the Tribunal.
4. It was inter alia contended by the appellants before the learned Single Judge that even from the documents produced before the Tribunal, it was clear that the unit was not fit to be granted a licence. Therefore, the Tribunal was not justified in directing grant of licence or renewal thereof. It was further contended that the consent given by the Pollution Control Board did not have any sanctity, as, subsequently, the Pollution Control Board had indicated that the 1st respondent did not comply with the conditions imposed as per the consent issued and therefore when a sub committee, after site inspection, W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 4 :- had come to the clear finding that the unit cannot be permitted to function on account of severe pollution, the Tribunal was not justified in taking a contrary view. The materials produced before the Tribunal have not been considered and the decision taken as per Ext. P5 is arbitrary and not based on the materials available on record.
5. The learned Single Judge, after elaborately considering the facts and circumstances involved in the matter, dismissed the writ petition. While impugning the aforesaid judgment, it is argued by the learned counsel for the appellants that none of the grounds raised by the appellants has been considered by the learned Single Judge. That apart, when the sub committee report was available on record, reliance should have been placed on the said document rather than discarding the said document without any basis. Specific reference is also made to the judgment of this Court in Manjapra Grama Panchayat v. State of Kerala, 1996(2) KLT 719, wherein this Court found that even though the licences/permission had been obtained from Pollution Control Board as well as District Medical Officer, the Panchayath has to W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 5 :- independently consider whether setting up of the unit within its area would affect the people of the locality. The Panchayath being an institution of self Government, has powers and duties which enable them to reject a licence, if it is found that the functioning of the unit affects the public at large. Further, it is argued that even as per the materials available on record, especially the report submitted by the Pollution Control Board as instructed by this Court, would show that the effluent is not up to the standards and the sound emanated is exceeding the limits.
6. On the other hand, the learned counsel for the 1st respondent supported the stand taken by the Tribunal and pointed out that there is no basis for the contentions urged on behalf of the appellants as the defects pointed out have been completely rectified. There is no effluent which is being discharged as the same is recycled and sound level is within the parameters specified for industrial units in the locality. It is further pointed out that the unit had been set up in 1983 and it is thereafter that several residents have started residing in the locality. It is unfair to reject renewal of licence when this unit had been functioning W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 6 :- for the last several years without causing any nuisance or pollution as contended by the Municipality.
7. W.P(C) No. 26922/2013 is filed by the Company which runs the unit, seeking for police protection. They allege obstruction in the functioning of the unit by the party respondents. They have submitted a complaint to the police seeking for police protection and since no action had been taken in the matter, the writ petition is filed seeking appropriate orders for police protection to function the factory. According to them, on the basis of the directions issued by the Tribunal, the Municipality is bound to renew the licence and therefore their right to operate the unit cannot be obstructed by any person.
8. Heard the learned counsel for the appellants, respondents in the appeal and the respective counsel appearing in the writ petition.
9. The appellants mainly rely upon the report of the sub committee appointed by the Municipality. The minutes of the meeting which considered the sub committee report is produced as Ext. R1(t). The translation of Ext. R1(t) reads as under: W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 7 :- Minutes Proceedings of the urgent council held on 8.03.2013, the Friday at 10.30 am under the convenorship of Sri. K.P. Babu, Municipal Chairman.
Present: All members except Sri. Aji Narayanan and K.V. Thomas, Municipal Secretary, ME.HI 1st P.O and Revenue Superintendent.
1. Considering the report dated 6.03.2013 submitted by the sub-committee as per the decision No. 5 of the Municipal Council dated 25.01.2013 in order to take a decision in application submitted by the owner of the Palapillil Specified Block Rubbers Pvt. Ltd. seeking permission for functioning of factory as directed by the Hon'ble High Court of Kerala in its judgment dated 10.12.2012 in WPC 1253/2012.
Ref:
1. The sub-committee members are Sri. Kennedy Peter, A.G. George and George Kuriakose.
2. Committee has recommended not to give the factory permission to operate since it is a matter affecting more than 100's of families residing near the factory. The factory is causing pollution. Visited the families residing near to the factory. The report given below submitted by the three sub- committee consisting of Sri. George Kuriakose, Sri. Kennedy Peter and Sri. A.G. George.
Based on the report of the sub-committee, the High Court has directed the Municipality to take a decision regarding the function of the Palapillil Specified Block Rubbers. The said factory was operating in ward 26. It was closed down for the W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 8 :- past sixteen months as per the recommendations of PCB and Municipality. The sub committee was appointed by the council in the meeting held on 25.01.2013 to study and file a report regarding Palapillil factory. Palapillil factory is situated in ward No. 26 of the kothamangalam Municipality, 200 meters away from NH-49 and at a distance of 3 km. from town. The Mathirapilly School where more than 1000 children are studying is situated only at a distance of 200m from the factory. Students are acing difficulty in studying due to the smell and sound from the factory. This was reported earlier. There is a PWD Road in front of the company which is used by the public at large daily. There is a colony only just 5 km away. It was noticed by the committee that the nearby well was polluted since the factory has not installed any mechanism for treating the effluent (around lakhs of litres of effluent per day) or to use it without causing trouble to the residents of the locality. The factory is situated in relatively higher area where sound and smell are very high.
The company started functioning as a creep mill when the population was very less. With passage of time, it was developed into a Block Rubber factory without the consent of the residents. A canal known as 'Erappinkal Thodu' is running through the back area of the factory. It is a canal used by the residents It is a source of drinking water. This has come to the notice of the committee. The localities complained that when the company was functioning the water in the canal used to cause health problems like itching. This was brought to the notice of the Municipality by filing a mass petition. It is pertinent to note that the Health Department of Municipality and PCB rejected the permission to function taking note of the fact that the factory was discharging the effluent to the canal.
W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 9 :- The burning of cashew nut shell for heating the burner creates a lot of smoke and causes air pollution. Since it functions 24 hours or 3 shifts children are unable to study or sleep. Women and children have complained that they are facing many problems. Since the machinery is very old it is creating noise higher than the permissible limits. It is also a fact that if the factory is allowed to function, even if any kind of devices are installed it won't be a permanent solution for the stinking smell or the worms in the rainy seasons. Localities complained that the factory is responsible for some deaths happened in the near by areas.
There are many poor people living within a radius of 200 meters. The committee has been to around 30 houses and interacted with them directly. Committee is convinced of the seriousness of the matter. The only pathway available to the persons living in the colony has become unfit for use because of the malicious acts of the company. When the current density of the area is considered it is evident that the situation is not suitable for functioning of such a company.
The Health Department of Municipality was totally careless with respect to this matter. Health department has taken a stand opposite to the earlier stand of Municipality without considering the hardship faced by the people and without seeking scientific and expert opinions. Therefore the committee is hereby recommended not to give license to the factory when the people are agitating for unpolluted water and air.
The application for license for Palapillil factory Pvt. Ltd. is hereby rejected by accepting the report of the sub-committee. Srimati Beena Radha Krishnan, Shibi Paulose, Abhilash V. Madhu, Sindhu Vikraman, Sinshu Ganeshan, Sri Devi Sasi and Ratnamma W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 10 :- Dasan objected."
10. The report of the committee was considered by the Council and the aforesaid decision taken. On this basis, it is contended that the unit is highly polluted. Further reference is made to a report of the Environmental Engineer, which was produced before this Court in W.P(C) No. 9802/2012. Ext. R1(n) is the said report, which reads as under:
"As per the order dated 3rd August 2012 on IA 8673/2012 in WP(C) No. 1253/2012(F), the Board officials conducted day to day analysis from 10.08.2012 to 01.09.2012. The unit was inspected on all the days on which they are operational. Effluent samples were collected from raw effluent collection tank and from treated effluent portion. During inspection sound level were also measured outside the unit. Regarding air pollution, no foul smell except the normal smell from a crumb rubber industry was experienced during monitoring. It was also seen that they have provided alkaline scrubber to reduce smell from the drying section. Tabulated data of analysis ( (Both effluent as well as sound) is produced herewith and marked as Exhibit R2(a). The above data revealed that the unit achieved treatment efficiency except on 7 days in which the parameter Biochemical Oxygen Demand (BOD) only was exceeding the limit 30 mg/Lit.
Though parameter BOD is found to be exceeding the permissible limit, the present operation of the unit is satisfactory on following considerations.
W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 11 :-
1. The effluent treatment plant installed in the unit has not achieved stabilization. Normally full efficiency of the treatment system could be assessed only after achieving stabilization. After stabilization, considerable reduction is expected in the concentration of BOD and other parameters.
2. Though the concentration of the parameters allowed as per consent is for river discharge (BOD-30 mg/lit, SS-100mg/lit, Oil & Grease-10 mg/lit) the treated effluent was seen recycled to the processing section only and no treated effluent discharge was seen outside the premises.
3. Much exceeding sound levels were not noticed.
It is also respectfully submitted that certain additional measures need to be taken to ensue that the industry is operating complying with all the stipulated norms as per the relevant section of the The Environment Protection Act, 86 The Water Act 4 and The Air Act, 81. They are as follows:
a. Separate water meters shall be installed and ensure such meters are functional and easily accessible to assess the quantity of water consumed for different purpose (process, domestic, cooling etc.) for which different rates shall be paid as per the Water (Prevention and Control of Pollution) Cess Act, 1977.
b. Effluent flow meter/s (Electro magnetic type flow meter) shall be installed in the effluent discharge/treated effluent recycling line to ensure that the treated effluent is properly recycled/only consented quantity of effluent is discharged through the authorized outlet/s.
c. Separate energy meter shall be installed W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 12 :- exclusively for effluent treatment plant/sewage treatment plant if any, to ensure the continuous operation of the effluent treatment facilities.
d. For all these measurements, records/logbooks shall be kept and produced as and when inspecting officers demanded."
11. Before proceeding to consider the contention regarding the alleged pollution on account of the functioning of the unit, it will be worthwhile to consider the first argument of the learned counsel for the appellants based on the judgment in Manjapra Grama Panchayat's case (supra).
12. In the said judgment, a learned Single Judge of this Court was considering the question relating to grant of licence for putting up a metal crusher and hollow bricks manufacturing unit. This Court held that the Panchayath being a Local Self Government Institution, is entitled to consider whether a licence can be granted even if the applicant has obtained all other statutory permissions. There is substantial difference between consideration of an application for issuance of a fresh licence and that of an application for renewal of licence. No doubt, when a fresh application is submitted, it has necessarily to be considered W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 13 :- whether the Panchayat should actually permit such an industrial unit in the locality. That was a case in which an attempt was made to instal a metal crusher unit along with hollow brick unit in an agricultural area. A consideration of the relevant parameters required for starting a unit including the fact that whether it should be permitted to be put up in an agricultural area is a matter definitely to be considered by a Panchayath. It was in the said circumstances that the learned Single Judge has decided the Manjapra Grama Panchayat's case (supra).
13. But that is not the situation in the case on hand. In the present case, the petitioner was running a unit in crumb rubber. The unit was in existence since 1983 and all along, it was functioning with the licence from the Municipality. Only at a later stage, when the question of renewal of licence came, there were allegations about pollution by the local people. It is at that stage several action had been taken by the Municipality on the basis of various orders issued by this Court and other statutory authorities. The 1st respondent had taken all necessary steps for ensuring compliance of all the statutory requirements. A W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 14 :- reference to the counter affidavit filed in W.P(C) No. 9136/2014 would clarify the nature of proceedings that ensued in respect of the above unit. The following facts will be relevant.
(i) The crumb rubber unit was established in the year 1983 in an extent of 6 acres of land in Sy. No. 1369/1/4/A of Kothamangalam Village. The Environmental Engineer, by a communication dated 11.11.2011, called upon the respondent to modify the effluent treatment plant. The 1st respondent submitted a proposal before the Pollution Control Board for constructing effluent treatment plant.
(ii) Alleging that there was obstruction from some persons in the locality in the construction of the treatment plant, the respondent filed W.P(C) No. 1253/2012, in which this Court passed an interim order granting police protection.
(iii) The Municipal Council issued an order of stay against the construction on 24.3.2012.
(iv) W.P(C) No. 7876/2012 was filed and the order of the Secretary dated 24.3.2012 was stayed and the construction of the treatment plant was completed. The treatment plant was installed and the permission W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 15 :- granted by the Pollution Control Board is produced as Ext. R1(h) dated 2.4.2012.
(v) W.P(C) No. 7876/2012 was finally disposed of on 13.4.2012 directing the Municipality to consider the application of the 1st respondent for renewal of the licence for the year 2012-2013, pursuant to which licence was granted.
(vi) An extra-ordinary general meeting was held by the Municipal Council on 16.6.2012 and they have passed an order restraining the respondent from proceeding with the functioning of the unit.
(vii) The respondent filed W.P(C) No. 14490/2012 and the order passed by the Municipal Council was stayed.
(viii) The Division Bench passed an interim order in I.A. No. 8673/2012 in W.P(C) No. 1253/2012 permitting the unit to be operated for 15 days in order to ensure that the effluent treatment plant was working properly and the Pollution Control Board was directed to analyze the situation and file a report. Ext. R1(n) is the report. The Division Bench disposed of W.P(C) No. 1253/2012, directing the Municipal Council to consider the case of the unit for granting licence. The Pollution W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 16 :- Control Board issued consent to operate, which is valid till 30.6.2015 (Ext. R1(p)).
(ix) The Municipal Council again held a meeting on 8.8.2012 and decided to reject the licence. On the basis of the judgment of the High Court in W.P(C) No. 1253/2012, again, a representation was given. The Municipal Council selected a sub committee under the leadership of one Sri. A.G. George. The sub committee submitted a report on 6.3.2013 pointing out the health hazards in the locality.
(x) Pursuant to the committee's report, the Municipal Council again took a decision on 8.3.2013, deciding not to renew the licence. This was followed by another order of the Secretary issued on 13.3.2013.
(xi) Consequent to the direction issued by the Tribunal, which is under challenge, the Secretary had issued the licence on 23.3.2014.
14. The learned counsel for the appellants' main argument is based on the fact that the Tribunal, while considering the appeal and revision, did not advert to the material evidence available in the case and has erroneously directed the licence to be issued. Perusal of Ex. P5 order dated 1.3.2014 of the Tribunal would W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 17 :- indicate that the Tribunal has come to the aforesaid conclusion after considering the report submitted by the Environmental Engineer before this Court (Ext. R1
(n)) and also the report of the committee constituted by the Municipality. As far as the report filed before this Court as Ext. R1(n) is concerned, the Tribunal had specifically mentioned that the officials of the Pollution Control Board had conducted day to day analysis of the unit from 10.8.2012 to 1.9.2012. In respect of the report of the sub committee as well, it is found that one of the Municipal Councilor A.G. George, who has objected to the unit functioning in the locality, was also a member of the sub committee. Further, it is held that such a report cannot be the basis for denying the licence. It is also found that the finding of the sub committee is against the consent issued by the Pollution Control Board and without any scientific basis and cannot be accepted.
15. Further, the learned Single Judge, while considering the respective contentions of the parties, has taken note of the fact that the consent to operate issued by the Pollution Control Board has not been challenged by the appellants and that the respondent is W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 18 :- having a deemed licence as per Section 447(6) of the Municipality Act, 1994 in respect of the current financial year and fee for renewal had been submitted as per Ext. R1(x). Further, the learned Single Judge held that the findings of fact by the Tribunal cannot be interfered in writ proceedings. The learned Single Judge also held that while taking a decision, the local authority has to be guided by expert opinion and though public interest is also a relevant factor, there has to be some basis for denying the licence. On that basis the learned Single Judge did not interfere with the order passed by the Tribunal.
16. It is argued by he learned counsel for he appellants that the Tribunal should not have directed grant of licence and no such power is available to the said authority. Section 509 of the Kerala Municipality Act, 1994 deals with appeals and revision, the procedure and the manner in which appeal has to be filed and considered by the Tribunal. Sub-section (9) of Section 509 indicates that the Tribunal shall pass appropriate orders on an appeal or revision petition filed before it and the order so passed shall be final. Appropriate order apparently includes any order that W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 19 :- the Tribunal may deem it necessary in order to give effect to the orders passed. Rules have been framed by the Government in exercise of powers conferred under Section 509 of the Kerala Municipality Act, 1994 as the Tribunal for Local Self Government Institutions Rules, 1949 (hereinafter referred to as 1949 Rules) Rule 21 reads as under:
"21. Consequence of the order of the tribunal:- The notice or order issued or action taken by the Local Self Government Institution or its Secretary, as the case may be, shall stand as such or be modified or annulled in accordance with the final order of the Tribunal on the petition from the date of issue of such final order.
(2) Copy of the order of the Tribunal shall be issued to each party to the petition within one week from the date of the order."
Reference to the aforesaid Rule clearly indicates that it is open for the Tribunal to modify or annul any decision of the Local Self Government Institutions or its Secretary. When authority is given to the Tribunal to annul any order, it can also direct issuance of the permit/licence, if it is found that the impugned order is patently illegal. This is a case in which the 1st respondent was unable to function the unit over a period of time. Since there were objections from the W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 20 :- people in the locality, he had to approach the writ court on several occasions seeking appropriate directions and therefore when it was felt that licence has not been issued by the Municipality without any justifiable reason, it is well within the power of the Tribunal to direct grant of licence.
17. This is a case in which the unit has started operation in 1983 and was a functioning unit. There was no complaint from any quarters over a period of time. Only during 2011 certain complaints had arisen. It is not possible for a Municipality who had permitted grant of licence, to refuse to renew the licence merely on the ground of public protest. Public protest can be considered if a new unit affects the public in any manner. In fact, the Municipality Act itself makes specific provisions to enable the Secretary to ensure that nuisance, if any, is abated. Chapter XIX of the Municipality Act gives appropriate powers to the Secretary to ensure that no nuisance is being caused and the measures to be taken to abate such nuisance.
18. In the case on hand, the alleged nuisance was regarding the effluent discharged from the factory. The material available on record clearly indicates that W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 21 :- the 1st respondent has put up an effluent treatment plant and Pollution Control Board had certified that it is a zero discharge plant. Therefore, such an issue has become irrelevant. Regarding the sound pollution also, being an industry, during day time, the permissible limit of standard of noise is 75 decibels and during night it is 70. In a commercial area, it is 65 during day time and 55 during night hours. Only in residential area, it is 55 during day time and 45 during night. Apparently, the property in question is an area where an industry has been put up for the last several years and it can afford to have noise ambiance level of 75 decibels during day time. The report of the Pollution Control Board at Ext. R1(n), clearly indicates that it is much below the standards prescribed for industrial area. Even assuming that it is a residential area, the sound emanated exceeds very minimal and therefore it is not possible for the appellants to contend that there is any form of pollution as matters stand now.
19. With reference to the report at Ext.R1(n), the learned counsel for the appellants argued that during certain days, the Bio-chemical Oxygen Demand (BOD) exceeds the limit and therefore the functioning of the W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 22 :- unit is not satisfactory. We have already extracted the report itself. The Environmental Engineer has further stated that after stabilisation, considerable reduction is expected in the concentration of BOD and other parameters. The report came to be prepared during a trial verification as directed by this Court for a limited period. As far as sound level is concerned, the report indicates that "much exceeding sound levels" were not noticed. They have further mentioned about certain operative measures to be taken, which, according to the petitioner, they have complied. Therefore, it is evident from the materials on record which have been rightly adjudicated by the Tribunal that the alleged cause of pollution is absolutely baseless.
20. Yet another contention urged is based on the sub committee report. The said report, as rightly held by the Tribunal, cannot be the basis for rejection of the licence. One of the Councilors, who was totally against the continuance of the industry in the locality, was a member of the said committee. That apart, the committee members have no technical expertise. It is the contention of the learned counsel for the 1st respondent that they visited the premises when the unit W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 23 :- was not functioning. Even if the Municipality can delegate verification of a unit to a sub committee, they can only verify the visible features in the locality. As far as the technical aspects are concerned, they have to get the assistance of experts. In the present case, the question is that of pollution, which apparently had to be considered by an expert body. It is for that purpose that the statute itself had made specific provisions to enable the Municipality to get the assistance of the Pollution Control Board. When an opinion has been expressed by the Pollution Control Board in regard to a particular industry with reference to air, water and noise pollution, it has to be treated as an expert opinion in the matter and the Councilors or a sub committee consisting of members of Council cannot override such expert opinion based on their site inspection.
21. Learned counsel for the appellants contended that there is public protest in the locality. This again is based on an apprehension of pollution. This is not an industry which has just started functioning. Of course, the Municipality can seek opinion from the members of public. An existing industry can be refused renewal of licence only if they do not comply with the statutory W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 24 :- provisions and if they fail to comply with the standards prescribed by the competent authorities. Public protest cannot override the right of the owner of the industry to carry on lawful business.
22. Under such circumstances, we are of the view that the grounds urged by the learned counsel for the appellants challenging the judgment of the learned Single Judge fails and accordingly the writ appeal is dismissed.
23. In regard to W.P(C) No. 26922/2014, this being an application seeking police protection, once the petitioner functions a unit with a valid licence or permission from the competent authorities, the party respondents cannot obstruct the said activities and if any such obstruction is created, it amounts to law and order situation or prevention in carrying on the business activities, and police is bound to interfere and ensure that no obstruction is caused in the functioning of the unit and that law and order situation is maintained. Counter affidavit is filed by the 2nd respondent raising grounds similar to that raised in the appeal. Having regard to the fact that there is stiff opposition from some quarters among party W.A. No. 1715 of 2014 and W.P(C) No. 26922 of 2013 -: 25 :- respondents, we are of the view that this writ petition requires to be allowed and appropriate directions are to be issued to respondents 7 and 8 to maintain law and order situation in the area.
In the result,
(i) Writ Appeal No. 1715/2014 is dismissed.
(ii) W.P.(C) No. 26922/2013 is allowed. Respondents 7 and 8 are directed to ensure that no obstruction or law and order is created by respondents 1, 2, 4, 5 and their men in the matter relating to the functioning of the factory of the petitioner.
Sd/-
Ashok Bhushan, Ag. Chief Justice Sd/-
A.M. Shaffique, Judge.
Tds/


Click Login link in the upper right corner to begin the user login process with Azure Active Directory.
The user is now logged in. Click the links in the toolbar above to make Users is now logged in. Click the the links above to demonstrate this SPA.


--- layout: post status: publish published: true title: VICTIMS 300000 author: Leask author_login: leask author_email<EMAIL_ADDRESS>author_url: https://leaskh.com wordpress_id: 15 wordpress_url: http://leaskh.wordpress.com/2010/04/05/victims-300000 date: '2010-04-05 15:29:11 +0800' date_gmt: '2010-04-05 15:29:11 +0800' categories: tags: [] comments: - id: 376 author: renee author_email: '' author_url: '' date: '2010-04-19 17:37:38 +0800' date_gmt: '2010-04-19 17:37:38 +0800' content: "囧 我上次没空去其它地方了。。只去过中山陵。。" ---


#include <ULRUHash.h>
Classes | |
| struct | SBinItem |
| linked-list item found in each bin. | |
Public Member Functions | |
| ULRUHash (unsigned int sizePow2) | |
| ctor & dtor | |
| ~ULRUHash () | |
| unsigned int | GetSize () const |
| unsigned int | GetElemCount () const |
| returns the total number of items currently in the hash table. | |
| void * | Insert (_KeyHash keyHash, const _Key &key, const _T &item) |
| public methods | |
| void * | Insert (_T &removed, _KeyHash keyHash, const _Key &key, const _T &item) |
| void * | Remove (void *item) |
| removes an item from the hash table. | |
| void | Clear () |
| removes all items from the hash table. | |
| void * | FindFirst (_KeyHash keyHash) const |
| finds items in the hash table with the keyHash specified. | |
| void * | FindNext (void *handle, _KeyHash keyHash) const |
| void * | Find (_KeyHash keyHash, const _Key &key) const |
| finds the first occurance of a specific item in the cache. | |
| void | MarkUsed (void *handle) |
| marks an item as used. | |
| const _Key & | GetKey (void *handle) const |
| returns the key associated with a handle. | |
| _KeyHash | GetKeyHash (void *handle) const |
| returns the key hash associated with a handle. | |
| _T & | GetValue (void *handle) |
| returns the item associated with a handle. | |
| const _T & | GetValue (void *handle) const |
| void | SetValue (void *handle, const _T &item) |
| void * | GetOldest () const |
| returns the oldest item in the hash. | |
| void * | GetNewest () const |
| void * | GetOlder (void *handle) const |
| void * | GetNewer (void *handle) const |
File: ULRUHash.h Author: Kevin Bray Created: 11-22-2008 Copyright © 2004 Bootstrap Studios. All rights reserved. project includes. class ULRUHash
Definition at line 19 of file ULRUHash.h.
| ULRUHash< _Key, _T, _KeyHash >::ULRUHash | ( | unsigned int | sizePow2 | ) | [inline] |
ctor & dtor
verify that the size is a power of two.
clear the table.
allocate links for the bins.
Definition at line 102 of file ULRUHash.h.
| void ULRUHash< _Key, _T, _KeyHash >::Clear | ( | ) | [inline] |
removes all items from the hash table.
clear the LRU hash the slow way. If we need to optimize this further, we can.
Definition at line 260 of file ULRUHash.h.
| void * ULRUHash< _Key, _T, _KeyHash >::Find | ( | _KeyHash | keyHash, | |
| const _Key & | key | |||
| ) | const [inline] |
finds the first occurance of a specific item in the cache.
get the first item with the keyHash specified.
if the current item matches the value requested, return it's handle.
get the next item.
if we got here, then the value specified could not be found. Therefore, simply return null.
Definition at line 319 of file ULRUHash.h.
| void * ULRUHash< _Key, _T, _KeyHash >::FindFirst | ( | _KeyHash | keyHash | ) | const [inline] |
finds items in the hash table with the keyHash specified.
get the bin that the keyHash is placed in.
check to see if there are any items in the bin specified.
check to see if the first item in the bin is the item we want.
return the first item in the list that has the keyHash specified or null if the item can't be found.
Definition at line 274 of file ULRUHash.h.
| void * ULRUHash< _Key, _T, _KeyHash >::FindNext | ( | void * | handle, | |
| _KeyHash | keyHash | |||
| ) | const [inline] |
get the item we're working on.
check to see if the current item is the one we want.
get the next item.
if we got here, then the item could not be found. Therefor, simply return null.
Definition at line 296 of file ULRUHash.h.
| unsigned int ULRUHash< _Key, _T, _KeyHash >::GetElemCount | ( | ) | const [inline] |
returns the total number of items currently in the hash table.
Definition at line 30 of file ULRUHash.h.
| const _Key & ULRUHash< _Key, _T, _KeyHash >::GetKey | ( | void * | handle | ) | const [inline] |
returns the key associated with a handle.
get the bin-item and return it's key.
Definition at line 351 of file ULRUHash.h.
| _KeyHash ULRUHash< _Key, _T, _KeyHash >::GetKeyHash | ( | void * | handle | ) | const [inline] |
returns the key hash associated with a handle.
get the bin-item and return it's key.
Definition at line 360 of file ULRUHash.h.
| void * ULRUHash< _Key, _T, _KeyHash >::GetNewer | ( | void * | handle | ) | const [inline] |
try to get an older item from the LRU list.
return the older item if possible.
Definition at line 434 of file ULRUHash.h.
| void * ULRUHash< _Key, _T, _KeyHash >::GetNewest | ( | ) | const [inline] |
| void * ULRUHash< _Key, _T, _KeyHash >::GetOlder | ( | void * | handle | ) | const [inline] |
try to get an older item from the LRU list.
return the older item if possible.
Definition at line 420 of file ULRUHash.h.
| void * ULRUHash< _Key, _T, _KeyHash >::GetOldest | ( | ) | const [inline] |
returns the oldest item in the hash.
get the oldest item.
Definition at line 396 of file ULRUHash.h.
| unsigned int ULRUHash< _Key, _T, _KeyHash >::GetSize | ( | ) | const [inline] |
returns the total number of items that can be contained in the hash table.
Definition at line 27 of file ULRUHash.h.
| const _T & ULRUHash< _Key, _T, _KeyHash >::GetValue | ( | void * | handle | ) | const [inline] |
| _T & ULRUHash< _Key, _T, _KeyHash >::GetValue | ( | void * | handle | ) | [inline] |
returns the item associated with a handle.
get the bin-item and return the item it represents.
Definition at line 369 of file ULRUHash.h.
| void * ULRUHash< _Key, _T, _KeyHash >::Insert | ( | _T & | removed, | |
| _KeyHash | keyHash, | |||
| const _Key & | key, | |||
| const _T & | item | |||
| ) | [inline] |
make sure there is enough room in the table for the item.
get the oldest item and remove it.
determine what bin the item resides.
get a link to insert into the table.
fill out the new link.
add the link to the table.
increment the count.
return the handle.
Definition at line 176 of file ULRUHash.h.
| void * ULRUHash< _Key, _T, _KeyHash >::Insert | ( | _KeyHash | keyHash, | |
| const _Key & | key, | |||
| const _T & | item | |||
| ) | [inline] |
public methods
adds an item and returns it's handle. 'removed' is set if an item needs to be removed to make room for the current item. Otherwise, it's value is unchanged.
make sure there is enough room in the table for the item.
get the oldest item and remove it.
determine what bin the item resides.
get a link to insert into the table.
fill out the new link.
add the link to the table.
increment the count.
return the handle.
Definition at line 139 of file ULRUHash.h.
| void ULRUHash< _Key, _T, _KeyHash >::MarkUsed | ( | void * | handle | ) | [inline] |
| void * ULRUHash< _Key, _T, _KeyHash >::Remove | ( | void * | item | ) | [inline] |
removes an item from the hash table.
make sure the handle passed in is valid.
get the current item we're working on.
find the bin that contains the item.
remove the item in the bin.
check to see if we found the item we need to remove.
remove the item from the list.
get a pointer to the next item.
remove the item from the LRU list.
add the item back into the free list.
decrement the item count.
return the newer item.
Definition at line 214 of file ULRUHash.h.
| void ULRUHash< _Key, _T, _KeyHash >::SetValue | ( | void * | handle, | |
| const _T & | item | |||
| ) | [inline] |


Python Bindings for Berkeley DB 4.7, 4.8, 5.1, 5.3, 6.1 and 6.2¶
Introduction¶
This handcrafted package contains Python wrappers for Berkeley DB, the Open Source embedded database system. Berkeley DB is a programmatic toolkit that provides high-performance built-in database support for desktop and server applications.
The Berkeley DB access methods include B+tree, Extended Linear Hashing, Fixed and Variable-length records, and Queues. Berkeley DB provides full transactional support, database recovery, online backups, multi-threaded and multi-process access, etc.
The Python wrappers allow you to store Python string objects of any length, keyed either by strings or integers depending on the database access method. With the use of another module in the package standard shelve-like functionality is provided allowing you to store any picklable Python object!
Berkeley DB is very powerful and versatile, but it is complex to use correctly. Oracle documentation is very complete. Please, review it.
Since June 2013 (release 6.0.0), this project accepts donations. Please, contribute if you can. Details.


Primary tenant
Dominik Richter works as a senior product and engineering manager at Chef Software. He has founded two succesful startups that were both acquired. Dominik is German and originally from Leipzig, Germany and is fluent in German and Spanish.
Dominik visits Hannah frequently on his B1/B2 Visa and is currently looking into options for permanent/sponsored visa in the United States.
On his free time, Dominik likes to travel the world and explore new cultures, study pasta making, and explore new technologies.


ConfoundJS
An experiment in JavaScript obfuscation.
confound.js
not found. Have you tried running the build script?
Input JavaScript Source:
alert('Hello World');
Use source transformer (
Warning:
disabling this will encode your input losslessly)
Minify source (recommended)
Mangle variables (recommended)
Re-reference Globals
Transform dot notations
Lift strings (recommended)
Transform strings (Adds stronger obfuscation, but produces larger outputs)
Transform booleans
Transform numbers
Use runtime decoder (Adds stronger obfuscation, but produces larger outputs)
Optimise numeric expressions (
Warning:
slow. Can produce smaller outputs)
Confound!
Thinking Hard!
This may take several minutes. (
).
Confounding JavaScript:
n
characters (from
n
character payload).
Evaluate Result


[Source]
In order to encode spatial data, we need a conceptual view that can form the basis for a data model.
By encode, we mean turn data as observations into digital data that can be used in a GISystem
Two key views of geospatial reality are the:
GIS for Public Policy’20 by Sergio Rey is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.


{% extends "core/header.html" %}
{% block content %}
{% include "core/snippets/formsnippet.html" with form_title="Password Change" form_description="Please enter your old password, for security's sake, and then enter your new password twice so we can verify you typed it in correctly." submit_button_name="Change password" %}
{% endblock %}


How to give your kids a personal message from Santa by chatting to Alexa
If you have an Alexa at home here's how to get your message
by Blathin de PaorWith less than four weeks to go to the most magical night of the year, excitment is growing among little ones for Santa's arrival.
And if you have any kids in your life, we recommend you try this trick to bring even more festive magic into your lives.
From now until Christmas, Santa will be giving daily updates to Amazon Alexa about how he's preparing for the big day.
Not only can the kids listen to the updates but they can even get their own personalised message from the man himself.
All your children have to do is ask Alexa how many days there are left until Christmas.
After giving them the answer, Alexa will then reply: "Would you like to hear an update from my good friend Santa?"
Santa will then takes over the recording and promises to keep children updated on his festive preparations over the next few weeks.


All information on the usage of the visualizations page can be found on the page itself by clicking on the Info buttons.


Work Day Scheduler
A simple calendar app for scheduling your work day
9 AM
SAVE
10 AM
SAVE
11 AM
SAVE
12 PM
SAVE
1 PM
SAVE
2 PM
SAVE
3 PM
SAVE
4 PM
SAVE
5 PM
SAVE
>


 This chorus is the unifying theme of Wally White's new feature, LIE DOWN WITH DOGS, a disappointing film about the letting go of guilt and, basically, the embracing of promiscuity and shallowness.
 Leaving the big city of New York behind, Tommie casts his worries aside, whips out a few credit cards, and, badda-bing, it's party time.
Tommie embarks on what starts out as a promising voyage of self- discovery, but after about five minutes, the film sadly degenerates into an over-the-top quest for nonstop, meaningless sex.  The ostensible point of the film, ultimately, is that you should live your life to the fullest and without any shame or guilt, but I have to believe that no self-respecting person would take things to the extremes promoted here.
The production values are, well, strange. White breaks down the "fourth wall" and spouts a number of droll monologues about how crummy his life is, directly to the camera. And when he's not talking, the director of photography is generally experimenting with new camera tricks like a kid with a new toy. I can't begin to count how many times the "spinning camera shot" was used, but after the first 15 times, you'll be too dizzy to care. In the end, the only saving graces are a couple of good jokes and a few of these camera tricks that are actually clever.
Unfortunately, there's no big payoff at the finale; Tommie has no sudden realization that he's a nimrod. The end result is 80 minutes of film that seem like 160--with no socially redeeming value whatsoever. White was correct on one count, though: When you lie down with dogs like this movie, you do get up with fleas.
RATING: *1/2
* Unquestionably awful ** Sub-par on many levels *** Average, hits and misses **** Good, memorable film ***** Perfection
-Christopher Null /<EMAIL_ADDRESS>-Film Critic, Screenwriter, Novelist (Mailing list available)
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Reports FlexUnit test cases that do not contain any test methods. Such test cases usually indicate developer error.


4.6. Resource Groups
Resource groups place limits on resource usage, and can enforce queueing policies on queries that run within them or divide their resources among sub-groups. A query belongs to a single resource group, and consumes resources from that group (and its ancestors). Except for the limit on queued queries, when a resource group runs out of a resource it does not cause running queries to fail; instead new queries become queued. A resource group may have sub-groups or may accept queries, but may not do both.
The resource groups and associated selection rules are configured by a manager which is pluggable.
Add an etc/resource-groups.properties
file with the following contents to enable
the built-in manager that reads a JSON config file:
resource-groups.configuration-manager=file
resource-groups.config-file=etc/resource_groups.json
Change the value of resource-groups.config-file
to point to a JSON config file,
which can be an absolute path, or a path relative to the Presto data directory.
Resource Group Properties
name
(required): name of the group. May be a template (see below).maxQueued
(required): maximum number of queued queries. Once this limit is reached new queries will be rejected.hardConcurrencyLimit
(required): maximum number of running queries.softMemoryLimit
(required): maximum amount of distributed memory this group may use before new queries become queued. May be specified as an absolute value (i.e.1GB
) or as a percentage (i.e.10%
) of the cluster’s memory.softCpuLimit
(optional): maximum amount of CPU time this group may use in a period (seecpuQuotaPeriod
) before a penalty will be applied to the maximum number of running queries.hardCpuLimit
must also be specified.hardCpuLimit
(optional): maximum amount of CPU time this group may use in a period.schedulingPolicy
(optional): specifies how queued queries are selected to run, and how sub-groups become eligible to start their queries. May be one of three values:fair
(default): queued queries are processed first-in-first-out, and sub-groups must take turns starting new queries (if they have any queued).weighted_fair
: sub-groups are selected based on theirschedulingWeight
and the number of queries they are already running concurrently. The expected share of running queries for a sub-group is computed based on the weights for all currently eligible sub-groups. The sub-group with the least concurrency relative to its share is selected to start the next query.weighted
: queued queries are selected stochastically in proportion to their priority (specified via thequery_priority
session property). Sub groups are selected to start new queries in proportion to theirschedulingWeight
.query_priority
: all sub-groups must also be configured withquery_priority
. Queued queries will be selected strictly according to their priority.
schedulingWeight
(optional): weight of this sub-group. See above. Defaults to1
.jmxExport
(optional): If true, group statistics are exported to JMX for monitoring. Defaults tofalse
.subGroups
(optional): list of sub-groups.
Selector Rules
user
(optional): regex to match against user name.source
(optional): regex to match against source string.queryType
(optional): string to match against the type of the query submitted:DATA_DEFINITION
: Queries that alter/create/drop the metadata of schemas/tables/views, and that manage prepared statements, privileges, sessions, and transactions.DELETE
:DELETE
queries.DESCRIBE
:DESCRIBE
,DESCRIBE INPUT
,DESCRIBE OUTPUT
, andSHOW
queries.EXPLAIN
:EXPLAIN
queries.INSERT
:INSERT
andCREATE TABLE AS
queries.SELECT
:SELECT
queries.
clientTags
(optional): list of tags. To match, every tag in this list must be in the list of client-provided tags associated with the query.group
(required): the group these queries will run in.
Global Properties
cpuQuotaPeriod
(optional): the period in which cpu quotas are enforced.
Selectors are processed sequentially and the first one that matches will be used.
Providing Selector Properties
The source name can be set as follows:
- CLI: use the
--source
option.- JDBC: set the
ApplicationName
client info property on theConnection
instance.
Client tags can be set as follows:
- CLI: use the
--client-tags
option.- JDBC: set the
ClientTags
client info property on theConnection
instance.
Example
In the example configuration below, there are several resource groups, some of which are templates.
Templates allow administrators to construct resource group trees dynamically. For example, in
the pipeline_${USER}
group, ${USER}
will be expanded to the name of the user that submitted
the query. ${SOURCE}
is also supported, which will be expanded to the source that submitted the
query. You may also use custom named variables in the source
and user
regular expressions.
There are four selectors that define which queries run in which resource group:
- The first selector matches queries from
bob
and places them in the admin group.- The second selector matches all data definition (DDL) queries from a source name that includes “pipeline” and places them in the
global.data_definition
group. This could help reduce queue times for this class of queries, since they are expected to be fast.- The third selector matches queries from a source name that includes “pipeline”, and places them in a dynamically-created per-user pipeline group under the
global.pipeline
group.- The fourth selector matches queries that come from BI tools (which have a source matching the regular expression
"jdbc#(?<tool_name>.*)"
), and have client provided tags that are a superset of “hi-pri”. These are placed in a dynamically-created sub-group under theglobal.pipeline.tools
group. The dynamic sub-group will be created based on the named variabletool_name
, which is extracted from the in the regular expression for source. Consider a query with a source “jdbc#powerfulbi”, user “kayla”, and client tags “hipri” and “fast”. This query would be routed to theglobal.pipeline.bi-powerfulbi.kayla
resource group.- The last selector is a catch-all, which places all queries that have not yet been matched into a per-user adhoc group.
Together, these selectors implement the following policy:
- The user “bob” is an admin and can run up to 50 concurrent queries. Queries will be run based on user-provided priority.
For the remaining users:
- No more than 100 total queries may run concurrently.
- Up to 5 concurrent DDL queries with a source “pipeline” can run. Queries are run in FIFO order.
- Non-DDL queries will run under the
global.pipeline
group, with a total concurrency of 45, and a per-user concurrency of 5. Queries are run in FIFO order. - For BI tools, each tool can run up to 10 concurrent queries, and each user can run up to 3. If the total demand exceeds the limit of 10, the user with the fewest running queries will get the next concurrency slot. This policy results in fairness when under contention.
- All remaining queries are placed into a per-user group under
global.adhoc.other
that behaves similarly.
{
"rootGroups": [
{
"name": "global",
"softMemoryLimit": "80%",
"hardConcurrencyLimit": 100,
"maxQueued": 1000,
"schedulingPolicy": "weighted",
"jmxExport": true,
"subGroups": [
{
"name": "data_definition",
"softMemoryLimit": "10%",
"hardConcurrencyLimit": 5,
"maxQueued": 100,
"schedulingWeight": 1
},
{
"name": "adhoc",
"softMemoryLimit": "10%",
"hardConcurrencyLimit": 50,
"maxQueued": 1,
"schedulingWeight": 10,
"subGroups": [
{
"name": "other",
"softMemoryLimit": "10%",
"hardConcurrencyLimit": 2,
"maxQueued": 1,
"schedulingWeight": 10,
"schedulingPolicy": "weighted_fair",
"subGroups": [
{
"name": "${USER}",
"softMemoryLimit": "10%",
"hardConcurrencyLimit": 1,
"maxQueued": 100
}
]
},
{
"name": "bi-${tool_name}",
"softMemoryLimit": "10%",
"hardConcurrencyLimit": 10,
"maxQueued": 100,
"schedulingWeight": 10,
"schedulingPolicy": "weighted_fair",
"subGroups": [
{
"name": "${USER}",
"softMemoryLimit": "10%",
"hardConcurrencyLimit": 3,
"maxQueued": 10
}
]
}
]
},
{
"name": "pipeline",
"softMemoryLimit": "80%",
"hardConcurrencyLimit": 45,
"maxQueued": 100,
"schedulingWeight": 1,
"jmxExport": true,
"subGroups": [
{
"name": "pipeline_${USER}",
"softMemoryLimit": "50%",
"hardConcurrencyLimit": 5,
"maxQueued": 100
}
]
}
]
},
{
"name": "admin",
"softMemoryLimit": "100%",
"hardConcurrencyLimit": 50,
"maxQueued": 100,
"schedulingPolicy": "query_priority",
"jmxExport": true
}
],
"selectors": [
{
"user": "bob",
"group": "admin"
},
{
"source": ".*pipeline.*",
"queryType": "DATA_DEFINITION",
"group": "global.data_definition"
},
{
"source": ".*pipeline.*",
"group": "global.pipeline.pipeline_${USER}"
},
{
"source": "jdbc#(?<tool_name>.*)",
"clientTags": ["hipri"],
"group": "global.adhoc.bi-${tool_name}.${USER}"
},
{
"group": "global.adhoc.other.${USER}"
}
],
"cpuQuotaPeriod": "1h"
}


SSL_CTX_set_tlsext_servername_callback, SSL_CTX_set_tlsext_servername_arg, SSL_get_servername_type, SSL_get_servername, SSL_set_tlsext_host_name - handle server name indication (SNI)
#include <openssl/ssl.h>
long SSL_CTX_set_tlsext_servername_callback(SSL_CTX *ctx,
int (*cb)(SSL *, int *, void *));
long SSL_CTX_set_tlsext_servername_arg(SSL_CTX *ctx, void *arg);
const char *SSL_get_servername(const SSL *s, const int type);
int SSL_get_servername_type(const SSL *s);
int SSL_set_tlsext_host_name(const SSL *s, const char *name);
The functionality provided by the servername callback is superseded by the ClientHello callback, which can be set using SSL_CTX_set_client_hello_cb(). The servername callback is retained for historical compatibility.
SSL_CTX_set_tlsext_servername_callback() sets the application callback cb used by a server to perform any actions or configuration required based on the servername extension received in the incoming connection. When cb is NULL, SNI is not used. The arg value is a pointer which is passed to the application callback.
SSL_CTX_set_tlsext_servername_arg() sets a context-specific argument to be passed into the callback for this SSL_CTX.
SSL_get_servername() returns a servername extension value of the specified type if provided in the Client Hello or NULL.
SSL_get_servername_type() returns the servername type or -1 if no servername is present. Currently the only supported type (defined in RFC3546) is TLSEXT_NAMETYPE_host_name.
SSL_set_tlsext_host_name() sets the server name indication ClientHello extension to contain the value name. The type of server name indication extension is set to TLSEXT_NAMETYPE_host_name (defined in RFC3546).
Several callbacks are executed during ClientHello processing, including the ClientHello, ALPN, and servername callbacks. The ClientHello callback is executed first, then the servername callback, followed by the ALPN callback.
The SSL_set_tlsext_host_name() function should only be called on SSL objects that will act as clients; otherwise the configured name will be ignored.
SSL_CTX_set_tlsext_servername_callback() and SSL_CTX_set_tlsext_servername_arg() both always return 1 indicating success. SSL_set_tlsext_host_name() returns 1 on success, 0 in case of error.
ssl(7), SSL_CTX_set_alpn_select_cb(3), SSL_get0_alpn_selected(3), SSL_CTX_set_client_hello_cb(3)
Copyright 2017 The OpenSSL Project Authors. All Rights Reserved.
Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy in the file LICENSE in the source distribution or at https://www.openssl.org/source/license.html.