text:
For database clients, the primary database operations involve managing database table records. The database table records resource, signified by _table below, allows for CRUD operations of various permutations on table records.
- 1 Layout
- 2 Common Parameters and Usage
- 3 List Available Tables
- 4 Record Operations
- 4.1 Retrieving Records
- 4.2 Creating Records
- 4.3 Updating/Replacing Records
- 4.4 Patching/Merging Records
- 4.5 Deleting Records
All calls to this resource take the form of...
- table_name - The table name or alias (see Schema Extensions) of the table that we want to access on the database service.
- id - Optional. The value of a primary key field (or other fields in some circumstances). When present, the client is acting on a single record identified by a single value. Posted and returned data is always a single unwrapped record. Otherwise, all posted and returned data must be an array of records, and may be optionally wrapped with a resource element, see system configuration.
With id:
{ "<field_name>": "value", ... }
Without id:
{ "resource": [ { "<field_name>": "value", ... }, ... ] }
Common Parameters and Usage
In addition to the Common Headers and Parameters, many of the database service record API operations support the following parameters. To make things more flexible, most parameters can be passed as URI parameters in the form of name=value or included in the posted data itself. If passed as a URI parameter, the values must be encoded accordingly. If it is included in the posted data, and the parameter supports a list (i.e. comma-separated values) as a value, like the ids parameter, then it could also even be sent as an array of items.
For example, using the ids parameter as a URI parameter would look like...
and is equivalent to the following posted JSON data...
{ "ids": "1,2,3", ... }
or this...
{ "ids": [1, 2, 3], ... }
Selecting Returned Fields
- fields - String or Array. The list of fields to return in response. If this parameter is '*', or missing on a retrieve (GET) request, all field values will be returned. If it is missing or set to empty (''), just the primary key field(s) values will be returned.
To save the client additional round trip calls, the fields parameter can be used on all record operations to return the latest field values. When used on POST, PUT, or PATCH requests, the field values are fetched after the operation has been completed. When used on a DELETE request, it returns the values from the record before the deletion.
Note: In some situations, when used with verbs other than GET, additional calls may be incurred to the database to retrieve this information and thus may add additional processing time to a request.
Selecting Returned Metadata
- include_count - Boolean. Set to true to include the total record count for the filter given. Not available by all database vendors. May incur additional calls to database to retrieve data. Returns the count value and optionally the next value to use if more data can be retrieved, i.e. a limit was applied or the max returnable records was hit, see system configuration.
- include_schema - Boolean. Set to true to include as schema any viewable table schema in the returned meta information. Note: This schema listing will return aliases for table, field and relationship names where configured.
{ "resource": [ { "id": 352, ... }, ... ], "meta": { "count": 8, "next": 1, "schema": { "name": "table_name", ... } } }
Identifying Records
Working with a single record where a single identifier is available is most easily done using the id path option mentioned above. This can be used for all verbs except POST, see creating records below.
When attempting to identify multiple records for retrieval or update or delete, the ids parameter may be used instead of a filter. Using this parameter can be considered the equivalent of the SQL IN filter option. It takes precedence over the filter parameter mentioned below.
- ids - String or Array. The list of identifier values to operate on, matching the default primary key or the identifier defined by the id_field parameter.
When using either the id path option or the ids parameter, or when posting record sets in a request, you may also provide one or both of the following two parameters when the primary keys are not well defined, or when using secondary indexes is desired.
- id_field - String. A single or list of field(s) used as identifiers for the table, used to override defaults or provide identifiers when none are provisioned. In some scenarios, this parameter may be used to retrieve records using secondary indexes.
- id_type - String. Requires id_field. A single or list of field type(s) for the identifiers of the table, used to override defaults, i.e. using integers for MongoDB.
Filtering Records
When you can not, or do no not desire to, identify records directly, you need to be able to filter the table for the correct record sets. Being able to filter records from a database table is one of the most powerful things you can do, and also one of the most complex. We have taken the typical SQL filtering and have broken it down into optional parameters for our REST API. Not all filtering options that are available in SQL clauses are available in the API, like JOIN, for security reasons.
Note: All of the following parameters are only useful if the id path option or the ids parameter are not provided.
- filter - String. This is a URL encoded filter string equivalent to the WHERE clause of a SQL statement. If this parameter is empty or missing all records will be returned, bounded by the 'limit' and 'offset' or group parameters if supplied, or the maximum allowed by the system settings. See Filter Strings section below for more information.
- params - An object of name-value pairs used as filter replacement parameters. To use with GET requests, use tunneling via POST.
- limit - Integer. Max number of records to return. If this parameter is empty or missing all matching records will be returned, subject to the 'offset' parameter or the maximum allowed by the system settings.
- offset - Integer. Index of first record to return, e.g., to get records 91-100 set offset to 90 and limit to 10.
- order - String. Field to order results by. Also supports sort direction ASC or DESC such as 'Name ASC'. Default direction is ASC.
- group - String. Field to group results by. Also supports sort direction ASC or DESC such as 'Name ASC'. Default direction is ASC.
Filter Strings
While some of the string patterns and operators may be different across various database vendors, our API tries to standardize them to at least support ANSI SQL and the most common syntax.
Supported Logical Operators - Logical operators are used to combine or negate (i.e. NOT) multiple comparison clauses. Note: All clauses must be wrapped in parenthesis, i.e. (a=b) AND ((c=d) OR (e=f)), or NOT((a=b) OR (c=d)).
- AND - Returns TRUE if both component conditions are TRUE. Returns FALSE if either is FALSE; otherwise returns UNKNOWN.
- OR - Returns TRUE if either component condition is TRUE. Returns FALSE if both are FALSE. Otherwise, returns UNKNOWN.
- NOT - Returns TRUE if the following condition is FALSE. Returns FALSE if it is TRUE. If it is UNKNOWN, it remains UNKNOWN.
Supported Comparison Operators - In most cases, using character-based operators, i.e. 'EQ', require surrounding spaces, but symbol-based operators, i.e. '!=', surrounding spaces are optional.
- 'EQ' or '=' - Equality test.
- 'NE' or '!=' or '<>' - Inequality test.
- 'GT' or '>' - Greater than test.
- 'GTE' or '>=' - Greater than or equal to test.
- 'LT' or '<' - Less than test.
- 'LTE' or '<=' - Less than or equal to test.
- 'IN' - Checks for equality against any member in set provided, if found returns TRUE. Requires a comma-delimited set surrounded by parenthesis, i.e. a IN (1,2,3).
- 'NIN' or 'NOT IN' - Checks for equality against any member in set provided, if found return FALSE, otherwise TRUE. Requires a comma-delimited set surrounded by parenthesis, i.e. a NOT IN (1,2,3). 'NIN' is only supported on MongoDB currently.
- 'LIKE' - Loose equality test using wildcard '%' at the beginning, end or both. Most database vendors support 'ab%' for "starts with string 'ab'", '%ed' for "ends with string 'ed'", and '%mid%' for "contains string 'mid'".
- 'CONTAINS' - (>=2.1.1) Internally converted to equivalent of LIKE '%mid%' for "contains string 'mid'".
- 'STARTS WITH' - (>=2.1.1) Internally converted to equivalent of LIKE 'ab%' for "starts with string 'ab'".
- 'ENDS WITH' - (>=2.1.1) Internally converted to equivalent of LIKE %ed' for "ends with string 'ed'".
Example Filters
- (first_name='John') AND (last_name='Smith')
- (first_name='John') OR (first_name='Jane')
- first_name!='John'
- first_name like 'J%'
- email like '%@mycompany.com'
- (Age >= 30) AND (Age < 40)
Using Replacement Parameters
Internally, most filters received from the API are parsed and turned into parameterized queries using replacement parameters where possible to protect against SQL injection. To make things even simpler for the API clients, we also allow for parameter replacement in the API itself. Just replace your filter comparison values with a unique string starting with ":" and pass the real value in the params area of the posted payload. Note: Since we are using a POST here, the filter parameter can also be passed as part of the payload, but must not be URL encoded in this case.
- filter as parameter
- filter=complete%20%3D%20%3Acomplete (decoded: complete=:my_complete)
- payload including params
- { "params" : { ":my_complete" : false } }
- payload including filter and params
{ "filter": "complete=:my_complete", "params": { ":my_complete": false } }
Using Lookups
Server-side lookups may be used as field values, and will be replaced on the server with the correct lookup value.
{ "resource": [ { "name": "Test my cool app", "complete": "{lookup_name}" }, ... ] }
Server-side replacement lookups are also allowed in the filter string.
- without lookups
- filter=name%20%3D%20%27value%27 (decoded: name = 'value')
- with lookups
- filter=name%20%3D%20%27%7Blookup_name%7D%27 (decoded: name = '{lookup_name})'
Or in filter replacement parameters, where filter is something like "complete = :complete".
{ "params": [ { ":complete": "{lookup_name}" } ] }
Batching Records
When handling batches of records in a single call, whether creating, updating, deleting, or even retrieving, the default behavior is to halt and return results up to the first point of failure, leaving changes as they occur. To change this behavior we offer the following options as URL parameters.
- continue - Boolean. In batch scenarios, where supported, continue processing even after one record fails, completing as many as possible and returning the results of success or failure.
- rollback - Boolean. In batch scenarios, where supported, rollback all changes if any operation of the batch fails. Internally, this uses database transactions where available.
Date & Time Formatting
Database vendors accept and return date and time values in different formats in some cases. This makes it difficult to get consistent behavior on the client side when dealing with multiple vendors. Here are some of the default formats coming from some of the popular databases...
{ "lunch_time": "09:45:00", "birth_date": "2003-01-16", "last_contact": "2014-03-14 13:34:00", "last_modified_date": "2014-12-11 17:20:34" }
MS SQL Server
{ "lunch_time": "09:45:00.0000000", "birth_date": "2003-01-16", "last_contact": "2014-03-14 13:34:00.0000000", "last_modified_date": "2014-12-11T14:11:27.3012644Z" }
While some of these differences may be configurable on the database itself, or can be modified during database transactions using vendor-specific conversion or casting alterations for each affected field in the SQL calls themselves, this is not simple, nor ideal when you may need different behavior for different clients. DreamFactory adds the ability to control the date and time formats for all connected database services through its "blending" API. This allows the clients of the API to utilize one consistent format for each data type across any and all database services accessed.
The configuration settings for the date and time formats can be found in <install-directory>/config/df.php and include the following settings...
//------------------------------------------------------------------------- // Date and Time Format Options //------------------------------------------------------------------------- 'dsp.db_time_format' => null, 'dsp.db_date_format' => null, 'dsp.db_datetime_format' => null, 'dsp.db_timestamp_format' => null,
The configuration options follow the conventions used in PHP for representing date and time formats. For options, see the following...
- 'format' section of http://php.net/manual/en/datetime.createfromformat.php
- 'format' section of http://php.net/manual/en/function.date.php.
- 'Predefined Constants' section of http://php.net/manual/en/class.datetime.php#datetime.constants.types
The following are example formats for each of the DreamFactory simple data types...
'dsp.db_date_format' => 'l jS \of F Y', 'dsp.db_time_format' => 'h:i A', 'dsp.db_datetime_format' => 'm/d/y h:i:s A', 'dsp.db_timestamp_format' => 'c',
and the same dataset from above reformatted using these settings.
{ "lunch_time": "09:45 AM", "birth_date": "Thursday 16th of January 2003", "last_contact": "03/14/14 01:34:00 PM", "last_modified_date": "2014-12-10T14:42:18-05:00" }
Note: When these values are changed, the platform cache must be reset before they will be used by the API, see the Admin panel "Tools" menu.
Client Usage
We have also included these settings in the system environment API response, making them available to all clients. This makes it simple for clients to ensure a common format is used when displaying and editing date and time field values, whether as a text field or via more complex date or time picker UI components.
GET http[s]://<server_name>/api/v2/system/environment
Request: None
{ ... "db": { "date_format": "l jS \\of F Y", "time_format": "h:i A", "datetime_format": "m/d/y h:i:s A", "timestamp_format": "l, d-M-Y H:i:s T", "max_records_returned": 1000 }, ... }
These format settings are used by database record retrieval and for stored procedure call response data when using the schema parameters for data formatting.
Note: Date and time field values must use the same format for sending data to the API as was received when retrieving the fields from the API. In other words, the client can not retrieve a date as 'yyyy/mm/dd' and then perform a record update using 'mm/dd/yyyy' format.
List Available Tables
Description: Return all accessible table names or aliases based on role access.
GET http://<server_name>/api/v2/<service_name>/_table[?refresh=[true|false]]
Live API : getDbTables
Record Operations
The following operations are typically available for all DreamFactory Database Services. The examples given below, where noted, use a single simple identifier field named "id" which is, in this case, an auto-incrementing primary key or a primary key created by the system. This may not be the case for all tables or all database service types. Refer to the specifics of your database type documented in other pages in this section.
See the following sections for more detail on CRUD operations for database table records...
Retrieving Records
By Filter
Description: Filter records for a db table using a SQL-like WHERE clause (or native filter or certain NoSQL types).
GET http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>?filter=<filter_string>
Live API : getDbRecords
By Filter with Replacement Parameters
Description: Filter records for a db table using a SQL-like WHERE clause (or native filter or certain NoSQL types) utilizing replacement parameters. Must use POST verb with a payload including params object, and passing either 'method' query parameter or header set to GET, see tunneling.
POST http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>?filter=<filter_string>?method=GET
Live API : N/A
{ "params": { ":my_complete": "{my_lookup_name}" } }
By a List of Identifiers
Description: Retrieve one or more records for a db table by a single identifying field.
GET http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>?ids=<id_list>
Live API : getDbRecords
By a Single Identifier
Description: Retrieve one record for a db table by id.
GET http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>/<id>
Live API : getDbRecord
By Posting Partial Records
Description: Refresh a client-side copy of old or partial records from a db table. Requires that at a minimum the old or partial records contain the identifying fields for the table.
POST http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>?method=GET
Live API : N/A
{ "resource": [ { "id": 1 }, { "id": 2 } ] }
By Posting Ids
Description: Just like using "By Ids" above, but this allows placing larger or more complex list or arrays of identifiers in the payload
POST http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>?method=GET
Live API : N/A
{ "ids": "1,2" }
{ "ids": [1,2] }
Creating Records
These operations may vary significantly in handling of primary identifiers based on the database service type and sometimes based on the table definition itself. For instance, some tables may automatically create the identifier field(s) with no input from the client, like in the case of MongoDB or SQL databases with tables that have an auto-incrementing primary key. Others may require a single or multiple identifier fields to be sent with the rest of the record upon creation. Be sure to check the specific database service type for any differences documented in other pages in this section.
To create one or more new records for a db table, post the records desired to be created with all necessary fields for creation.
POST http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>
{ "resource": [ { "name": "Test my cool app", "complete": "{lookup_name}" }, ... ] }
Live API : createDbRecords
Updating/Replacing Records
By Posted Records
Description: Replace one or more existing records identified by posted records for a database table.
PUT http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>
Live API : replaceDbRecords
By Identifier
Description: Replace one record from a database table by identifier.
PUT http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>/<Id>?[id_field=<id_field>]
Live API : replaceDbRecord
By Identifier List
Description: Replace one or more existing records identified by a list of identifying values for a database table.
PUT http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>/?ids=<comma-delimited ids>[&[id_field=<id_field>]]
Live API : replaceDbRecords
By Filter
Description: Replace one or more existing records by matching a filter for a database table.
PUT http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>?filter=<filter>
Live API : replaceDbRecords
Patching/Merging Records
By Posted Records
Description: Patch one or more existing records identified by posted records for a database table.
PATCH http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>
Live API : updateDbRecords
By Identifier
Description: Patch one record from a database table by identifier.
PATCH http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>/<Id>?[id_field=<id_field>]
Live API : updateDbRecord
By Identifier List
Description: Patch one or more existing records identified by a list of identifying values for a database table.
PATCH http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>/?ids=<comma-delimited ids>[&[id_field=<id_field>]]
Live API : updateDbRecords
By Filter
Description: Patch one or more existing records by matching a filter for a database table.
PATCH http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>?filter=<filter>
Live API : updateDbRecords
Deleting Records
By Identifier
Description: Delete one record from a database table by identifier.
DELETE http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>/<Id>?[id_field=<id_field>]
Live API : deleteDbRecord
By Identifier List
Description: Delete one or more existing records identified by a list of identifying values for a database table.
DELETE http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>/?ids=<comma-delimited ids>[&[id_field=<id_field>]]
Live API : deleteDbRecords
By Filter
Description: Delete one or more existing records by matching a filter for a database table.
DELETE http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>?filter=<filter>
Live API : deleteDbRecords
By Posted Records
Description: Delete one or more existing records identified by posted records for a database table.
POST http[s]://<host_name>/api/v2/<service_name>/_table/<table_name>?method=DELETE
Live API: N/A


text:
£21.00 per month
£20.00 per month
£10.00 per month
£5.00 per month
Roger Smoldon Ground 160 Walmley Road Sutton Coldfield West Midlands B76 2QA View with Google Maps
This website is part of the Pitchero Rugby Union network. Create your own free Rugby Union club website with Pitchero.
Digital advertising by Minute Media
© Pitch Hero Ltd 2008-2020

subset: commoncrawl


text:
Citroen Berlingo | 1.5 BlueHDi 130 Flair M 5dr
Citroen Berlingo Overview
I would like all maintenance and service costs included
Initial Rental (Personal)
£2,190.56 inc VAT
Initial Rental (Business)
£1,825.47 ex VAT
Contract Length
48 Months
Processing fee
£199.99 ex VAT
Standard Options
- Automatic triggered rear windscreen wiper in reverse gear
- Electric front windows
- Electric rear windows
- Front windscreen wiper with multi speed setting
- Heated rear windscreen
- Anti-locking braking system with electronic braking distribution and emergency braking assistance
- Electronic parking brake
- Electronic stability program with hill launch assist
- Front/rear disc brakes
- Bluetooth telephone facility
- Programmable cruise control and speed limiter
- Rear parking sensor
- Start/stop system
- 8" touch screen
- Citroen connect box emergency assist system
- CONNECT Navigation
- Mirror screen with mirror link, apple carplay and andriod auto
- Multi function trip computer
- Body colour door mirrors
- Electric heated door mirrors
- Diesel particulate filter
- 6 speakers radio with mp3 compatible
- DAB Digital radio
- USB socket
- Voice recognition for radio, navigation and telephony features
- Airbump
- Body colour door handles
- Body coloured front bumper
- Chrome chevrons front grille
- Solid paint
- Twin sliding side doors
- Front fog lights
- Halogen headlights
- Headlights left on audible warning
- LED daytime running lights
- Two tier light signature
- White fog light surrounds and airbump coloured surround on first capsule
- Air conditioning
- 12V socket
- 2 height parcel shelf
- Driver and passenger dashboard mounted cup holders
- Electric power steering with reach and rake adjustable steering column
- Fixing rings 4 in load compartment
- Full width front overhead storage shelf
- Gear shift indicator
- Leather steering wheel
- Mica cloth upholstery
- Nemo grained interior ambiance
- Top box glove compartment
- Front interior light with 2 reading spotlights and rear interior light with timer
- Safety pack - Berlingo
- Visibility pack - Berlingo
- 3x Front optimised safety headrests and rear retractable headrests with height adjustable
- 3x3 point rear seatbelts
- Adaptive driver and front passenger airbags with passenger airbag deactivation function
- Child locks on rear doors
- Driver and front passenger side airbag
- Front and rear curtain airbags
- Front and rear seats seatbelt unfastened on the move audible and visual alert
- Front three point retractable seatbelts with force limiters
- Tyre pressure sensor
- 1/3 to 2/3 split folding rear seats
- 3 seat bench in 2nd row ISOFIX child seat mountings
- Foldable passenger seat with under seat storage and elbow rest
- Height adjustable driver seat with adjustable lumbar support under seat storage and elbow rest
- Tray tables at the back of the front seats
- Automatic door locking when moving off
- Automatic hazard light activation upon heavy brake application
- Deadlocks
- Electronic code immobiliser
- Remote central locking
- 16" Full black starlit Alloy Wheel
- Steel spare wheel
Technical Options
- HC+NOx: 0.056
- Noise Level dB(A): 67
- NOx: 0.034
- Particles: 0.0008
- Standard Euro Emissions: EURO 6
- Bore: 75
- Catalytic Convertor: True
- Compression Ratio: 16.4:1
- Cylinder Layout: IN-LINE
- Cylinders: 4
- Engine Codes: DV5RC
- Engine Layout: FRONT TRANSVERSE
- Fuel Type: COMMON RAIL
- Gears: 6 SPEED
- Number of Valves: 16
- Stroke: 84.8
- Valve gear: SOHC
- EC: True
- EC Combined: 65.7
- EC Extra Urban: 70.6
- EC Urban: 58.9
- WLTP - MPG - Extra High: 6
- WLTP - MPG - Extra High - Max: 6.7
- WLTP - MPG - Extra High - Min: 5.2
- WLTP - MPG - High: 5.9
- WLTP - MPG - High - Max: 4.9
- WLTP - MPG - High - Min: 5.4
- WLTP - MPG - Low: 6.5
- WLTP - MPG - Low - Max: 7
- WLTP - MPG - Low - Min: 5.6
- WLTP - MPG - Medium: 6.3
- Any aspect of the vehicles safety cause concern?: Data Not Available
- Based On ID: N
- Coin Description: BlueHDi 130
- Coin Series: Flair
- Man Corrosion Perforation Guarantee - Years: 12
- Manufacturers Paintwork Guarantee - Years: 3
- NCAP Adult Occupant Protection %: 68
- NCAP Child Occupant Protection %: 4
- NCAP Overall Rating - Effective February 09: 130
- NCAP Pedestrian Protection %: 1.5
- NCAP Safety Assist %: M1
- Service Interval Frequency - Months: 91
- Special Edition: Data Not Available
- Special Order: Data Not Available
- Standard manufacturers warranty - Mileage: 60000
- Standard manufacturers warranty - Years: 3
- Timing Belt Interval Frequency - Months: 58
- Timing Belt Interval Mileage: 81
- 0 to 60: Data Not Available
- 0 to 62: 10.3
- Engine Power KW: 95
- Engine Power RPM: 3750
- Engine Torque LBS.FT: 221
- Engine Torque MKG: 30.6
- Engine Torque NM: 300
- Engine Torque RPM: 1750
- PS: True
- Top Speed: 116
- Alloys?: True
- Space Saver?: Data Not Available
- Tyre Size Front: 215/65 R16
- Tyre Size Rear: 215/65 R16
- Tyre Size Spare: FULL SIZE
- Wheel Style: STARLIT
- Wheel Type: 16" ALLOY
- Height: N
- Height (including roof rails): 1844
- Length: 4403
- Wheelbase: 2785
- Width (excluding mirrors): 1848
- Width (including mirrors): 2107
- Boot Capacity Saloons: 775
- Fuel Tank Capacity (Litres): 50
- Gross Vehicle Weight: 2080
- Luggage Capacity (Seats Up): 3000
- Max. Towing Weight - Braked: 1420
- Max. Towing Weight - Unbraked: 750
- Minimum Kerbweight: 1430
- No. of Seats: 5
- Payload: 650
Citroen Berlingo FRENCH SENSE (70/100)
Citroen's Berlingo People Carrier has come a long way. Jonathan Crouch checks out the third generation version and wonders if families really need to pay more for pricier mid-sized MPVs.
Ten Second Review
Try and picture a van-based compact people carrier. Bet you weren't imagining anything quite as nice as this. The MK3 model version of Citroen's much more civilised third generation Berlingo people carrier has been further distanced from its predecessors' basic commercial roots. With smarter styling, more equipment and efficient PureTech petrol and BlueHDi diesel engines, this value-for-money five or seven-seater is now a vehicle that demands to be taken very seriously indeed. If you're after a budget family carry-all, it's well worth a look.
Some cars aren't too precious about the lives they need. Take Citroen's classic post-war 2CV. You could drive it across a ploughed field, hose it clean, subject it to a fearful leathering, then pass it on like a family heirloom. It was uniquely French, uniquely Citroen and its modernday successor was the first generation of this car, Citroen's Berlingo. The Belingo has been on sale as both a van and a van-based MPV for over two decades now, the MPV version previously badged 'Berlingo Multispace'. This third generation model is to be known simply as 'Berlingo'. Whatever you want to call it, this model line has been a successful one for Citroen (and for Peugeot whose Partner Tepee model was effectively a re-badged version of the same design). So much so that there have only been two iterations of people-carrying Berlingo in 22 years; until now.
Driving Experience
If you've yet to sample one of these third generation models, you'll probably be very pleasantly surprised by how the Berlingo drives. The old bump, thump and reverberations that characterised previous versions have well and truly gone. I know it's a bit of a cliche when discussing this sort of MPV but there is a lot of truth in describing this boxy Citroen as 'car-like'. For what is quite a tall, high vehicle, there's none of the tippy feeling that characterised the previous generation version of this design, helped in no small part by beefier anti roll bars. And a much improved suspension set-up. Which in turn has made possible the kind of ride quality you'd like to expect from a Citroen: in other words absorbent and very well tuned for our terrible roads. It's an important thing to consider, for I reckon that aside from safety and practicality, ride quality needs to be one of your key criteria when making a decision on an MPV-style vehicle. Too firm and you'll never manage to get the kids off to sleep on a long journey at night: too soft and they'll get car sick. The Berlingo strikes a good balance because it's a little softer than you might expect in compression and rebound - in other words, over the bumps - but a little firmer than you'd think in roll - in other words, around the corners. Engine-wise, you get to choose between a 1.2-litre three cylinder Puretech petrol unit (with 110 or 130hp) or a 1.5-litre BlueHDi diesel (with 75, 100 or 130hp). For auto transmission, you'll need one of the 130hp variants.
Design and Build
This third generation Berlingo sits on the PSA Group's latest EMP2 platform and gets the same kind of two-tier light signature frontal treatment we've seen on the company's recent models. There's a more forward-set windscreen and a higher and shorter front end, plus even 'Airbump' plastic panels protecting the flanks from supermarket scrapes. As before, there are two wide sliding side doors and they feature electric windows. There are two body styles - 'M' and 'XL'. And buyers choose between 5 or 7-seat variants. Citroen claims even more interior versatility this time round, with three individual seats in the rear that can be folded down with a simple movement using the 'Magic Flat' controls in the boot. Combined with a folding front passenger seat, this feature provides a perfectly flat floor and a load length of up to 2.70m for the standard 'M' version and 3.05m for the lengthier 'XL' model. There's a class-leading boot volume, increased by 100-litres to 775-litres for the 'M' version. The boot is easily accessible thanks to the opening rear window in the tailgate and two different height positions for the luggage cover. Around the cabin, there are 28 large and ingenious storage spaces such as the new-generation Modutop multi-function roof that also lets more light into the interior. The 'Top Box' glove box is unique to the segment thanks to the 'Airbag in Roof' system.
Market and Model
Let's face it, cash-strapped families don't want to spend too much on the car that'll move them about. The good news with this Berlingo is that they don't have to. Prices aren't much different to those being charged for the previous Multispace model, which means that they typically range in the £19,000-£26,000 bracket. As before, there's the option of a seven-seater variant if you want it. If you do, you'll want the lengthier 'XL' body style, which demands a £1,700 premium over the five-seat 'Size M' body shape. There are two trim levels - 'Feel' and top 'Flair'. The flagship 'Flair' variant is very generously equipped, including features like an 8.0in central infotainment screen, dual-zone climate control, a head-up instrument display, a 360-degree manoeuvring camera, a top-spec interactive navigation system, sophisticated connectivity on four different levels and a so-called Modutop system consisting of panoramic glass roof panels as well as all manner of shelves, gadget compartments and an ambient lighting show above occupants' heads. Citroen is also including its latest camera-driven safety tech too.
Cost of Ownership
Day-to-day running costs are kept well in check. The 110hp 1.2-litre PureTech petrol variant most will want manages 51.3mpg on the combined cycle and 125g/km of CO2. Of course, you'll have to do your bit as a driver in order to get anywhere near the published fuel figures. To help you, the centre dash infotainment screen's 'Trip Computer' section gives you read-outs for current fuel consumption and remaining range. Plus it will tell you how long the Stop & Start system has been functional for on any given trip - though I'm not really sure why you'd ever want to know that.... Enough on engine efficiency. What about other financial considerations? Well, regular service intervals come round every 16,000 miles or 12 months, depending on which comes sooner. If you engage in what Citroen calls 'Arduous' conditions of use, then you'll need a servicing visit every 10,000 miles or every year. The bottom line is that most owners will need to budget around an annual dealership appointment; there are plenty of Citroen outlets to choose from, so you should never be too far from one. So you can budget ahead, the French maker offers its 'Citroen Maintenance' scheme that lets you pay either a one-off fee or monthly instalments to cover the cost of the routine upkeep of your car for as long as three years and 35,000 miles.
Older Citroen Berlingo Multispace models tended to be enormously endearing. Like a faithful family hound, your people-carrying Berlingo wouldn't be flashy and could be a little agricultural in its manners but would never let you down. This third generation design though, sets out to add a little pedigree to the breed and in doing so, changes the rules quite significantly, positioning this model as a more desirable family accoutrement. Spend enough on this new generation version and it can be as stylish, safe and high-tech as you could possibly want. Going that route of course dilutes much of the price advantage that so sets more basic variants apart from more conventional - and arguably more car-like - compact MPVs. But it doesn't negate it completely. Which means that you can specify this Berlingo precisely the way you want and still end up with one of the most affordable five or seven-seat people carriers on the market. And a car that's far more spacious and practical than most of its contemporaries into the bargain. Which of course is why Berlingo sales remain so strong - and why you need to try one of these if you're looking for a good value set of family wheels. You can thank me later.
Why use All Car Leasing?
Browse alternate Citroen Berlingo models
See other trim levels:


text:
NEWTOWN, Conn. (AP) – Worshippers hurriedly left a church Sunday, saying they were told there was a bomb threat not far from the elementary school where 20 kids and six adults were massacred.
At least a dozen police in camouflage SWAT gear and carrying guns arrived at the St. Rose of Lima Church. An Associated Press photographer saw police leave carrying something in a red tarp.
There was no official report from police about the threat or evacuation.
Shooter Adam Lanza, his mother and eight of the child victims attended St. Rose of Lima. It is a Roman Catholic Church with an adjacent school, which Lanza attended briefly.
It's not clear if there actually was a threat or if, like many tragedies, whether it was a hoax or the result of a community on edge.
The church hosted overflow crowds at all three morning masses Sunday.


text:
Kali Linux is Now a Rolling Distribution
Kali Linux (formerly known as BackTrack) is a Debian-based distribution with a collection of security and forensics tools. It features timely security updates, a choice of four popular desktop environments, and seamless upgrades to newer versions.
Kali Linux is Now a Rolling Distribution
One of the biggest moves we've taken to keep Kali up-to-date in a global, continuous manner, is transforming Kali into a rolling distribution. What this means is that we are pulling our packages continuously from Debian Testing (after making sure that all packages are installable) – essentially upgrading the Kali core system, while allowing us to take advantage of newer Debian packages as they roll out. This move is where our choice in Debian as a base system really pays off – we get to enjoy the stability of Debian, while still remaining on the cutting edge.
Continuously Updated Tools, Enhanced Workflow
Another interesting development in our infrastructure has been the integration of an upstream version checking system, which alerts us when new upstream versions of tools are released (usually via git tagging). This script runs daily on a select list of common tools and keeps us alerted if a new tool requires updating. With this new system in place, core tool updates will happen more frequently. With the introduction of this new monitoring system, we will slowly start phasing out the "tool upgrades" option in our bug tracker.


text:
Omix-ADA Jeep Wrangler JK Sport was featured at the 2014 SEMA show which raised $85,000 to help SEMA Cares charities through the Barrett-Jackson auction in Arizona.
The Wrangler was purchased through the funds of Omix-ADA's 2013 SEMA Cares donation. The Jeep was customized through collaboration with Alex Xydias Center for Automotive Arts. The Jeep is offroad ready featuring $30,000 in aftermarket parts and accessories. The build took place at the SEMA Garage in Diamond Bar, California by a team of students using parts from several donor companies.


text:
Corvette owners often get a bum rap from the rest of the motorhead community. Owners of lesser cars love to paint Vette guys as snobs and poseurs when, more often than not, they should be pointing the dirty end of the stick at themselves. Be that as it may, it's true that there's a certain segment of our fraternity that is more concerned with tire dressing and waxing protocol than timing advance and tire smoke. But there's also a group of hardcore addicts who have sold their souls for performance. Curt Babler belongs to the latter category.
Babler has always been a fan of GM's premier two-seater, even if it did take a little longer than expected to get one of his own. "Growing up with Corvettes, I knew it was only a matter of time before I had one. When the time came, the car had to be yellow." And man, is it ever yellow. More on that in a minute.
Another knock against the Corvette crowd is a perceived snobbery towards other cars and their owners. Don't let the vanity plate fool you. Curt Babler is not one of those stereotypically vain Vette guys. Far from it, actually. "I built the car in a way that I felt would make it unique, and made the theme of the car 'Envy'," he says. What about that vanity plate? "It means I built the car the way I wanted. It means that no one should envy me or my car, but should build their own, to their personal taste." That bit of murky philosophy aside, there is no denying that he has assembled a stunner.
Though the car is perfectly detailed, Babler's exterior embellishments are rather reserved. The casual observer may even mistake this clean C5 for a stocker. ACI turn-signal splitters, LED taillights, some Z06-style mesh screens, and a killer set of shoes are the most noticeable departures from stock. The ever-popular CCW 505a wheels are plus-sized to 18 (front) and 19 (rear) inches and dressed in Pirelli P-Zero hides. Peeking from behind the polished aluminum hoops are a set of red Z06 calipers to apply the clampdown on Baer Eradispeed+ rotors by way of Hawk pads.
A glance through any window reveals an eye-popping Mod Yellow interior that any Corvette owner would lust after. "The late Ken King of Vette Essentials produced the truly astounding leather work," says Babler. "I was able to recover the seats using his skins in less time than it took me to install the chrome hood hinges." The yellow theme is carried on throughout, including a two-tone shifter knob and boot, parking-brake handle and boot, console cover, door pulls, and armrests.
Among the more subtle interior enhancements is the upgraded sound system. The factory stereo head unit has been scrapped, and in its stead resides a Pioneer navigational unit complete with monitor for the back-up camera. The factory speakers have been replaced by CDT components, which are powered by a pair of JL Audio amplifiers. A Sub "thump box" is loaded with a pair of Infinity 10-inch woofers. Another understated touch is the replacement of all interior lighting with blue LEDs, giving a far-out custom look after dark.
Babler displays the car often and reports that it's always a favorite at the local shows and cruise nights. "It's always the first one the kids point out. My most coveted trophy is from being selected to the Corvette Corral by Corvette Race Program Director Doug Fehan at the American LeMans Series race at Road America."
A peek under the hood reveals what all the fuss is about. While many are content with a few pieces of carbon fiber or chrome, Babler is not. He shipped his complete carbon underhood kit to Jaime Rodriguez, at Pure Image Design, for further customization. Rodriguez masterfully interpreted Babler's Deadly Sins theme into graveyards, sickle-bearing reapers, and even a skull or two with alarmingly overgrown incisors. There is enough fire and brimstone underhood to make Beelzebub himself proud.
Don't think for a second that this car commits the sin of being all show and no go, as Babler has carefully chosen a combination of parts to maximize power production with an eye on value and reliability. For help with this, he turned to John Boos Performance in Anoka, Minnesota. "I set very strict parameters for John to work within," says Babler, "and he hit a home run in my book."
Going the ever-popular heads-and-cam route was a no-brainer. Boos selected a pair of well-proven AFR 205 heads and milled the decks to achieve 62cc combustion chambers. The valvetrain was fitted with Comp springs, pushrods, lifters, and an XE-R-profile cam. The stock LS6 manifold was left in place but fitted with a matched set of 30-lb/hr injectors.
Not one to settle for posing on the boulevard, Babler races his evil C5 every chance he gets. He derives particular pleasure from testing himself and his machine at the bracket races. "One race in particular, I went eight rounds before I failed as a driver by not adjusting to changing weather conditions." That's pretty impressive for a street-driven, manual transmission car-on street tires, no less! Even with massive traction issues, this C5 is no slouch, running a very unsloth-like best of 12.12 at 117.36 mph.
Regardless of whether he is at the track or romping down one of the countless twisty roads that populate the farmlands around his suburban Twin Cities home, all of the performance mods pay off every time Babler stomps on the noise pedal. Ever greedy for more, Babler's future plans include 3.90 gears and hardened internals for the rear. He freely admits he is a glutton for horsepower. "It's like being a drug addict...never enough!" As these mods will not keep him content for long, a naturally aspirated stroker somewhere north of 427 cubes is in the not-too-distant future.
Babler tells us he drives the car whenever the mood strikes him, which is often. And that's a good thing, because to not drive a car such as this would be the biggest sin of all.


text:
How to Plan and Plant a Garden for Kids
Do your kids like to play in the dirt?
Are you looking for an ongoing project that you and your family can work on together?
Plan and plant a kid-friendly garden this spring with your kids.
In this article we'll show you how to plant a garden this spring so you can enjoy a whole summer of kids' gardening fun.
Why a Garden?
Gardens are wonderful for a variety of reasons. They help the planet and supply local healthy food to your family. Plus, they allow you to get outside with your kids on a regular basis.
Even though a garden can seem to be a lot of work, they are great fun and fairly simple when you plan and prepare.
They key is to choose what type of garden you want to grow as a family, and involve all members in every step of the process. Soon you'll be able to enjoy the fruits (or vegetables) of your labor.


text:
Via Lee McCracken, here's a particularly pungent example of how right-wing moralists like to abuse the term "moral relativism." Our author, Gene Callahan, thinks that this is an example of the moral relativist position:
The Rush Limbaughs of the world don't get to define the boundaries of appropriate sexual or moral behavior. But something is happening: Women are defining those boundaries for themselves, with many men alongside them, and they're being reminded that there's a concerted movement to take that right of self-definition away. And we're mad.
That's Irin Carmon, writing in Salon, and making the perfectly reasonable point that women have better knowledge of their own sexual behavior than Rush Limbaugh, and are entitled to regulate their own behavior without having to conform it to Limbaugh's mouth-breathy demands. Callahan seems to think this is roughly analogous to arguing that serial killers are entitled to regulate their own behavior without having to conform to the demands of God, society, or the criminal justice system. In other words, he reads Irin's position as being, "Moral truth is whatever I, personally, want it to be."
Evidently, Callahan only read the very last paragraph of Irin's column, and, lacking any real context, filled in the gaps with the stupidest and least charitable reading of her position that he could concoct. In fact, I don't know how anyone who read the rest of the column could characterize Irin's position as anything but a moral realist position: women have a right to autonomy and sovereignty over their own bodies, because they are full and equal persons to men in every respect. I suspect Callahan is doing all of this hand-waving about moral relativism either because he doesn't have a counter-argument, or knows that the counter-argument is too ugly to say out loud.
Look, Ross Douthat and James Poulos have already tried similar stunts with at least a little more adroitness. It would be getting tiresome now, if it hadn't always been tiresome. The popular moral stance among social liberals on this issue is a moral realist one; if you think that position is wrong, then state your case. But hiding behind cries of "moral relativism" and denying the moral urgency of your opponent's argument is just another way of saying that you endorse existing hierarchies and inequalities for familiarity's sake.


text:
From pro-level race bikes to sport, fitness and adventure bikes, Giant deLivers the benefits of tubeless tire technology to riders of all types.
Sve navedene specifikacije podložne su promjeni bez prethodne najave.
In this website, cookies are placed by Giant Bicycles and third parties. This is done to enable the functionality of the website; to analyse visitor behaviour; to offer social media applications; to create client profiles, and personalize advertisements on the website and other websites.
By clicking on 'I agree', you agree to the use of cookies as described in our Privacy and Cookie Statement.


text:
NORTH BERWICK --- The traditional Holiday Concert by the Air Force Band of Liberty will be held Sunday, December 2, at 3 pm at Noble High School on Route 9 in North Berwick, Maine.
The concert is again being co-sponsored by Foster's Daily Democrat and Noble High School.
The Band of Liberty, stationed at Hanscom AFB in Massachusetts, has presented their annual Holiday Concert in this area for more than 20 years with rare exception.
This will be the band's last Holiday Concert season. Budget cuts by the US Air Force have the band scheduled to disband in June 2013.
Free tickets for the concert will be available beginning November 12 at the Foster's Daily Democrat office at 150 Venture Drive in Dover. Tickets can also be requested by mail, using a special mail order coupon found in advertisements promoting the concert, published several times each week in Foster's Daily Democrat as well as in The Rochester Times, The Sanford News and Showcase magazine.
Tickets requested by mail must include a stamped, self-addressed envelope.
The free concert is always a "sold out" event so it is important to get tickets early. The concert is unique every year and features more than 30 of the nation's best military musicians and singers. Conducting is Lt. David Alpar.
Anyone with a ticket will be assured a seat until 15 minutes before the 3 pm showtime. Any seats not filled at that time will be made available to non-ticketholders.
The Noble High School auditorium is one of the region's finest performing arts stages, featuring comfortable seating, exceptional acoustics and lighting.
Air Force Band plans Holiday Concert Dec. 2
NORTH BERWICK --- The traditional Holiday Concert by the Air Force Band of Liberty will be held Sunday, December 2, at 3 pm at Noble High School on Route 9 in North Berwick, Maine.


text:
Access the latest news, analysis and trends impacting your business.
Explore our insights by topic:
Additional Broadridge resources:
View our Contact Us page for additional information.
Additional Broadridge resource:
Your submission has been received. We will contact you soon.
One of our sales representatives will email you about your submission.
Want to speak with a sales representative?
Want to call a sales representitive?
Your sales rep submission has been received. One of our sales representatives will contact you soon.
View our Client Support page for additional client resources.
View our Client Support page for additional client resources, or our Contact Us page for company information.
Your submission has been received. One of our customer service representatives will contact you soon.
Customers want to choose what communications they receive, where they receive them and how they respond. Credit card issuers want to increase engagement while reducing costs. And both customers and issuers want to be in control of the experience. Now there is a solution that aligns the needs of both: the Broadridge Communications CloudSM.
The Communications Cloud engages your customers with personalized, dynamic essential communications across 13 channels, leveraging the power of a first-of-its-kind network.
With the Communications Cloud, you can:
Omni-channel Delivery: With one connection, you can reach your customers via a range of channels – 13 channels and growing – and gain immediate access as new channels emerge.
Reimagine the digital customer experience and grow adoption by leveraging a first-of-its-kind network of 5,000 companies that enable consumers to receive communications based on their preferences. Once consumers elect to receive communications in any channel from any company within the Communications Cloud, proprietary algorithms create additional company-consumer matches in the multi-industry network, resulting in a "network effect." Since we reach 80%+ of North American households, chances are that your customers are digital with other companies in our network.
Communications Management: Engage customers with personalized, contextual communications.
Information Management: Transform data into customer and communication insights.
Control and Administration: Manage and measure your customer communications.
Reach and engage your customers while you transform and control every communication. Contact us today to learn more about the Broadridge Communications Cloud.
Results you can expect from Broadridge:


text:
Spark plug wires are one of those consumable maintenance items that occasionally need replacing. Over time, the resistance of the wires builds up and they becomes less efficient at transferring the electricity from the distributor to the spark plugs. Besides time, the other factor that can damage a set of wires is improper clearance from the exhaust system.
If the wires have the wrong terminal angle on them, it places the wire too close to--or in some cases on--the actual header tube. Such is the case with a '63 Nova into which we recently installed a V-8 under the hood. We employed a set of Sanderson headers and a set of spark plug wires that had 90-degree boots at the spark plug. Well, these boots had us doing all kinds of zip-tie magic to keep the wires away from the header tubes on almost every cylinder.
To cure this issue, we looked to MSD and got everything needed to build our own set of wires that would work with the Sanderson headers. The following steps will show you exactly how to build a set of wires, and once you know how to build the wires you can then route them any way your heart desires.


text:
Wiki: developer's best friend
If you were stranded on a deserted island, name three things you would bring. Sounds familiar? Well, let me modify it a little bit: if you were only able to use 3 development tools, name the ones you'd choose.
My choice is clear: editor, debugger, version control. But, hey! It's 2009, at least let me choose another two: then I'd go for issue tracking (Mantis, Bugzilla, DevTrack, Jira, Rally… I don't mind, the one you prefer) and a Wiki.
Why would I choose a Wiki for "hard-core programming" stuff? Ok, let me explain. It's clear why an editor and a debugger are good to have (never, never, never go out with a debugger!!! And NO, printf is not a choice) and even version control and issue tracking (I see many of you thinking you wouldn't bring the issue tracker, right? :-P), but a Wiki? Ok, let me explain.
More often than not I get involved on big refactors here and there, and even more often in small, high-impact fixes. The other kind of task that makes me think about Wikis is performance tuning, something that can easily become hell if you don't have the proper documentation and tracking. So, in all the previous scenarios I always use a page somewhere on our team's wiki as a log: in fact, there's a specific place for that under development/task logs. You can link this wiki entry with a comment in the code, with the task (at Bugzilla, Mantis, Jira...) you're working on or even in version control checkin comments.
Don't we have comments for that? Obviously not. I hate polluting my source code making it close to unreadable with huge comments, I rather prefer to put a link to a long article somewhere else where I can attach pictures, iterate on different alternatives, link to the web, whatever. Comments would only make the code hard (or even impossible) to read.
In fact, most of the time my Wiki entries are not only about the code but the reasons why I'm changing the code, removing a certain piece, moving another one… so sometimes there won't even exist a right place to put the comment (removed code for instance).
It becomes crystal clear when you're working on performance and you take notes about how fast or slow a certain piece of code or scenario is (even linking to profile results you've stored at your version control, yes, profilers, another "must have" on the toolset). When you go back and what to understand why you made this change is exactly when you'll be happy to have a detailed task log.
Wouldn't it be better to directly include this documentation as an enclosure on your bug/issue tracking system? Answer is probably yes, it does make sense, but storing it on the wiki gives you a transversal overview: you can not only locate your logs browsing the issues you've worked on, but also going through the wiki itself. Editing is also important: personally I love writing at my MediaWiki text only editor much better than at an enclosure (although some advanced issue tracking systems can make editing very comfortable). We also encourage developers adding documentation (analysis, design, testing, everything) in MediaWiki (ok, a traditional repository storing PDFs and Word files is also available, but it seems programmers feel less pain when asked to write on MediaWiki than Word), so adding links and improving navigation is also easier.
The point is that using a Wiki to precisely describe your changes (I'm not talking about tracking lines of code, that's exactly what your SCM must do!!) is very easy to do, it won't normally be a painful thing and will help you creating a lot of usable documentation in order to understand why certain (even very low level) decisions were made, sometimes even supporting more formal design documents, and it won't pollute your precious code with your narrative.


text:
Image courtesy Big Machine Records
As nearly every country fans knows by now, Taylor Swift's brand new single, "We Are Never Ever Getting Back Together," made it's debut to the world during a live webcast last night. And now today, the lyric video for the song has been posted on Vevo.
Which means, if you want to sing along but haven't memorized all the words yet ("What?"), now is your chance.
Watch "We Are Never Ever Getting Back Together" below:
As previously reported, the song was written by Taylor along with Max Martin and Johan Shellback, and it's the debut single from Taylor's upcoming album, Red–which is due to hit stores October 22. If you want a copy of the song for your very own, you can grab it right now on Google Play or iTunes.
– Kurt Wolff, CBS Local


text:
Sep 09, 2014 | ISBN 9780375859205 | 5-9 years
Starred Review, Publishers Weekly:
"In this affectionate personal history, Yaccarino (Lawn to Lawn) traces his ancestry from Sorrento, Italy to New York City. . . Folksy and warm, this is a timely reminder that America is a nation of immigrants."
Starred Review, School Library Journal, March 2011:
"Yaccarino's family is proudly Italian, but their immigration story is universal. Readers of varied backgrounds will be able to identify with the search for a better life in a new country, the passing along of values and heirlooms, and the addition of new family members. The story will make an excellent family-history discussion starter."
Starred Review, Kirkus Reviews, February 2011:
"With clarity and deep affection, Yaccarino turns his family history into a story of enduring charm. . . . A gloriously warm celebration."
"All the Way to America is a charmer. Yaccarino's heartwarming story rings clearly with truth, good cheer, and love." —Tomie de Paola, winner of a Caldecott Honor Award for Strega Nona
"A shovel is just a shovel, but in Dan Yaccarino's hands it becomes a way to dig deep into the past and honor all those who helped make us who we are." —Eric Rohmann, winner of the Caldecott Medal for My Friend Rabbit
Kirkus Reviews Best ChildrenÂ's Books WINNER 2011
Bank Street Child Study Children's Book Award NOMINEE
Irma Simonton Black Award HONOR


text: Intensive Care Cloud, is based on previous efforts that led in the design and development of Intensive Care Window, ICW software application. ICW is an open-source solution composed of a middleware framework (medical device bedside controller) and an end-user application. The middleware enables communication with intensive care unit bedside-installed medical devices over standard and proprietary communication protocol stacks. The ICW application facilitates the acquisition of vital signs and physiological parameters exported from patient-attached medical devices and sensors. Moreover, ICW provides runtime and post-analysis procedures for data annotation, data visualization, data query, and analysis. The ICW application can be deployed as a stand-alone solution or in conjunction with existing clinical information systems providing a holistic solution to inpatient medical condition monitoring, early diagnosis, and prognosis.Venus-C project represent a promising venue for addressing the computational challenges and provide a scalable on demand solution in regards to data storage, data analysis and data mining.


text:
Beat the Streak Report: Tuesday, July 19
Pauly Konks was quite the popularity king last night, taming the giant that is Kyle Davies for 28 percent of you in a 1-for-4 effort. Adrian Gonzalez chipped in to advance another 10.4 percent, making Monday a productive one in Streakland.
Former leader erakelson was not among the fortunate, however, dropping off the map at 29 games thanks to an O-fer from Raul Ibanez. We know he's been hot and all, but Raul Ibanez? To each his own, we guess.
Tuesday's picks:
(Make a BTS pick)
Oh, hello there …
Asdrubal Cabrera: .579 (11-for-19) since '06 vs. Twins starter Francisco Liriano
Jacoby Ellsbury: .406 (13-for-32) since '06 vs. Orioles starter Jeremy Guthrie
Carlos Beltran: .467 (7-for-15) since '06 vs. Cardinals starter Kyle Lohse
Marlon Byrd: .400 (6-for-15) since '06 vs. Phillies starter Cliff Lee
Carl Crawford: .374 (15-for-40) since '06 vs. Orioles starter Jeremy Guthrie
Billy Butler: .417 (5-for-12) since '06 vs. White Sox starter Jake Peavy
Andrew McCutchen: .364 (4-for-11) since '06 vs. Reds starter Mike Leake
Feeling kinda spicy?
Ryan Sweeney: .625 (5-for-8) since '06 vs. Tigers starter Rick Porcello
Danny Valencia: .571 (4-for-7) since '06 vs. Indians starter Justin Masterson
You'll thank me later …
Joey Votto: .125 (2-for-16) since '06 vs. Pirates starter Charlie Morton
Delmon Young: .143 (2-for-14) since '06 vs. Indians starter Justin Masterson
Wilson Betemit: .188 (3-for-16) since '06 vs. White Sox starter Jake Peavy
Top MLB streakers
Emilio Bonifacio: 17 games
Dustin Pedroia: 16 games
Neil Walker: 12 games
Nick Markakis: 11 games
Home Run Beat the Streak pick:
Carlos Quentin: (18 home runs this season) vs. Royals starter Danny Duffy
4 Comments
The write-up has Votto going against Morton — but Morton pitched last night. McDonald is on the mound for the Pirates tonight.
Hey Champion_88, decided to take a day off? Ortiz serving suspension.
LaV's List
Tuesday's Top Picks of the current Top2500,
147 Batters picked overall
Batter, Times Picked, Percentage
Jacoby Ellsbury 648 26.18(3rd)
Adrian Gonzalez 235 9.49(5th)(5th)
Andrew McCutch 118 4.77
David Ortiz 96 3.88SUSP
Nick Markakis 86 3.47(3rd)
Asdrubl Cabrera 65 2.63
Dustin Pedroia 62 2.51
Joey Votto 60 2.42(5th)
Ryan Sweeney 60 2.42
Prince Fielder 60 2.42
Paul Konerko 60 2.42
Adam Jones 51 2.06(1rst)
Paul Janish 1 0.04DL(1rst)
Highest "No Selection" 😛 pg# 8 with streak of 15 back to zero.
Yesterday's Top2500 Reset rate was 15% with NO SELECTION reseting the most.
There was also 16.2% PPD due to players not playing, These streakers do not reset, but did not increase either.
Got Pinched OR 1/2 AB Wonders
TOP2500 saved or reset by PHA (going to include any pinch hitters and/or double switch, 2 AB or Less)
S Fuld TB, SAVED 3, WERE 10,9,8 GAMERS
E Renteria CIN, RESET 1, WAS 8 GAMER
Bloggers Group Top2500
UserName, Streak, Page#, Rank, Pick, (Times picked in top2500)
TiffK99, 11, pg 33, 737, HOLLIDAY (PICKED 14X)
abk1087, 11, pg 33, 737, ORTIZ (PICKED 96X) SUSP
backrubs, 9, pg 63, 1461, ELLSBURY (PICKED 648X)
Bloggers Reset Yesterday
hwnhrt, 13 RESET by JUSTIN UPTON
mdefillippis91, RESET by HUNTER PENCE
GL to all
Someone dropped the ball tonight; it was known that Reyes was to be activated for tonight's game. From before the weekend even, they expected him to be back Tuesday. He wasn't available to pick.


text:
Miss Clementine - our modern take on a classic Howard sofa design. Combining unbelievable comfort with great proportions, it features ultra-comfy large feather cushions, short tailored arms, and a high back. As easy on the eye as it is the sit bones, its finished off in fixed covers for a smart and tailored look, with turned wooden legs and castors.
Make this classic sofa your own, with thousands of fabric and leather options. Alter the width to suit your needs or change the cushion filling for something a little firmer.
Available in small, medium and large sofa designs as well as the one arm sofa design, classic chaise lounge and cosy armchair with matching footstool.read more > read less >
Miss Clementine chair Dimensions
- Width: 80 cm
- Height: 97 cm
- Depth: 105 cm
a view from all angles
double click to toggle 360 function
double tap to toggle 360 function
FSC - responsible timber sourcing
We are fully committed to responsible sourcing, ensuring the timber used in our furniture originates from well managed forests and habitats, and recycled sources certified to credible certification standards, especially FSC certification. We're proud to say that 95% of the timber that we use is FSC-certified and we are committed to reaching 100% by 2025.
Read more about our responsible sourcing and the WWF here.
available in over 1,000 fabrics
Plain, print or pattern - we've got it covered with our unrivalled fabric range. Our website shows you some of our favourites but in our shops we have an extended range of our own fabrics; beautiful soft cottons and wools, lovely slubby linens, stunning velvets, traditional prints and gorgeous natural leathers to name a few.
let's talk design
To keep our team and customers safe through social distancing, we are limiting visitors to our shops. You can book an appointment to visit in store or book a virtual visit from the comfort of your home.


text:
Cardinal Theodore McCarrick, former Archbishop of Washington, gave an eloquent and thorough defense of American Muslims at hearings on this community's civil rights. Catholic Senator Richard Durbin held the hearings as a response to Representative Peter King's hearings on the radicalization of the Muslim American community.
McCarrick compared the Catholic experience of discrimination in America to that of Muslims now. He spoke of the importance of upholding freedom of religion and setting a standard for the rest of the world, including the Muslim world where Christians are persecuted. He affirmed groups such as the Islamic Society of North America as trusted dialogue partners. Listen to it all here (thanks to Faith In Public Life):
The Rev. Welton Gaddy of the Interfaith Alliance may be right when he said that both hears are "somewhat engaging in posturing" (Washington Post). Many seem to come into such discussions with preconceived ideas. The fact that half the committee didn't show up and only two stayed throughout the hearings might reflect a common issue: that we don't have the patience to simply listen.
In our upcoming interview with him, Akbar Ahmed notes the surprise that his non-Muslim research assistants encountered when they told other non-Muslims that they had been to mosques. McCarrick's testimony on Islam is rooted in personal experiences of dialogue and relationships with Muslims. Dialogue isn't just for religious leaders, though–and politicians might not be the best people for it either. That might be up to you and me.


text:
Daniel Tosh and Allen Funt are separated by generations, but both stand as meta men ahead of their respective times.
The seemingly unlikely comparison comes to mind as Tosh's Comedy Central show, "Tosh.0" – an Internet-driven mix with echoes of "America's Funniest Home Videos," "Jackass" and Funt's groundbreaking "Candid Camera" – kicks off the first of 16 new episodes Wednesday.
Media philosopher Marshall McLuan famously noted that the "medium is the message." To Tosh, like Funt, the medium is the joke, providing a forum and a form for new comic possibilities.
In the 1940s, when radios filled living rooms, Funt created a show called "Candid Microphone," which squeezed laughs out of practical jokes captured on audiotape. Of course, he's better known for the sequel, "Candid Camera," which transformed the premise to fit the new medium of television and grew into a cultural touchstone along with the TV boom.
With the advent of affordable home video cameras, we saw a shift toward the do-it-yourself era two decades ago with "America's Funniest Home Videos," where funny moments were shared across the most prevalent medium, television. "Jackass" took this concept in another direction a decade later by staging filmed stunts for our sick-humor consumption – spurring copycats in the process.
Tosh's show is very much of its time, even while hearkening to its forbearers. "Tosh.0," in short, compiles wacky videos from the Internet and puts the results on TV, to a soundtrack of snark. Meanwhile, the show enjoys another life on the Web, where viewers can submit videos, comment and find encouragement to add absurd fictions to the show's Wikipedia entry.
Tosh is most effective in bridging the Internet and TV worlds when he pulls folks from viral videos for appearances on the show in a segment called "Web Redemption."
So the gal in the prom dress who fell down the stairs gets another chance to make her grand entrance. The Miss Teen USA contestant who infamously mangled a question about geographic illiteracy gets another shot – and basically keeps her mouth shut. The boy featured in the "David After Dentist" YouTube smash extracts revenge on his father.
Tosh possesses a snide wit that would do him well on "Talk Soup" or "Mystery Science Theater 3000," and a willingness to recreate Web video stunts that would earn him junior "Jackass" status. But when dealing with guests, he comes across as almost likable amid his chronic sarcasm.
Tosh's shtick held up surprisingly well during a marathon of past episodes broadcast on Sunday – even if there's still a disproportionate amount of airtime dedicated to scenes of vomiting and men getting hit where it hurts most.
But that's to be expected, we suppose, when sifting the wild world that is the Web for humor.
Perhaps the biggest difference between now and when Funt got his start more than 60 years ago rests in expectations. Back then, being captured on audio or film came as a surprise. These days, there's a realization that all moments are potentially public, with video easily captured by handheld devices and almost instantly uploadable to the Web.
The humor may not always be as gentle as was in Funt's day. But the measure of Tosh's success is that, like Funt, he leaves us with a smile when we realize we're all in the joke.
|Web Redemption Retrospective
|Web Redemption
|2 Girls, 1 Cup Reaction
|Demi Moore Picture
|Web Redemption
|2 Girls, 1 Cup Reaction
|Demi Moore Picture
Hester is founding director of the award-winning, multi-media NY City News Service at the City University of New York Graduate School of Journalism. He is the former City Editor of the New York Daily News, where he started as a reporter in 1992. Follow him on Twitter.


text:
Hamburg 3-0 Juventus (03:08:08)
Arsenal 1-0 Real Madrid (03:08:08)
Our pre-match venue - The Gunners Pub.
Initially I was somewhat reluctant to post up reports of any games I attend here in
Unless you are an Arsenal fan (not guilty) or fancy seeing Bruce Springsteen play (marginally better option), then it's actually quite difficult to get into the Emirates Stadium. That's unless you want to sign up for some cock and bull membership scheme or gain entrance in the away end if a team does not take up their full allocation.With this being a friendly….sorry the all important Emirates Cup, it was fairly easy to obtain tickets in advance. Big Deaks and I parted with £40 (plus booking fee) to witness these two kick abouts.
I'd been to Highbury a few times before but this was my debut at the Emirates. Jesus H.Christ – Emirates, Emirates and thrice Emirates – I'm going to bill them for advertising after this. We got the train from Brighton to
From there we made our way nostalgically past the old Highbury ground which is now being redeveloped and converted into apartments, in a project known as 'Highbury Square'. Probably the greatest day in the history of Highbury occurred in 1983 when Brighton beat Sheffield Wednesday in an FA Cup semi final. I got a bit misty eyed reminiscing as we strolled around there but then I'd just consumed some early morning beer.
From Highbury we then skipped merrily along past Arsenal tube station, over a bridge and literally a few hundred yards from the old ground to the Emirates Stadium. So what's it like!? Well, it's alright. It just about saves itself from looking like every other new stadium as the upper tier is contoured to leave an open space in the corners of the ground. The enormous roof is canted inwards and if you sit in the cheap seats at the top, it almost looks as if it's all indoors. I award them 5 FIFA stars for the seats though - they are padded and the size of a bus - marvellous.
Inside, Deaks and I cast aside the temptation of a dry, cardboard slice of pizza and a warm bottle of Carlsberg and settled on a £4 chicken balti pie. Pleasingly, I was able to extract a smidgen of moisture from it and as such I would only claim it to be 100% overpriced - not too bad.
So to the games then - first up was Hamburg v Juventus. Hamburg were 'up for the cup' as it were and at one stage I'm almost certain that one of the players had a bead of sweat that had to be mopped from his forehead. Juve on the other hand couldn't have given a monkeys about the match and were there just to pick up their considerable fee just for bothering to show up.Hamburg had two players that I will be signing for Brighton next week. Bastian Reinhardt who is a 6ft 4 centre back. I think the cliche goes something along the lines of he was 'commanding at the back'. The other chap is the Egyptian striker Mohamed Zidan, not to be *snigger* confused with *ho ho* Zinedine Zidane - oh stop it you are killing me, bestow my aching sides. Anyway, he was fleet footed, agile and had lots of tricks in his locker - thanks for coming.
Half an hour after Hamburg had easily seen off Juventus (like a pack of small puppies) it was time for Arsenal and Real Madrid to put on a show. Arsenal played the first team and had 60,000 fans to impress whereas Real Madrid - tired from collecting money from friendlies in all four corners of the globe - were poor. It was good to see a lad called Jack Wilshire come on for Arsenal - he is going to be a star and no mistake. He is English (!), only 16 and looks like some prospect.
To be honest the Arsenal fans got on my nerves. They booed Robben (for having the temerity of playing for Chelsea), Rudd Van Nistelbus (because they have heard of him), Heinze (played for Man Utd) and gave Adebayor some "jeers of disappointed love". Their one song was 'stand up if you hate Tottenham' - well done everybody. I also overheard lots of anti Ashley Cole banter (get over it lads) and spits of anger in the pub when Jermaine Jenas appeared on the box. Maybe I'm getting old but whatever happened to exerting a bit of energy in backing your own team?
Adebayor scored the winning goal by smashing a penalty into the roof of the net. Comically he then ran to the crowd and kissed the Arsenal badge twice. The fans who'd been booing him for wanting to move to Barca instantly changed their tune and suddenly he was king of The Arsenal again. He got a standing ovation when he became the 456th substitution of the day. Nowt so fickle as folk.
After the game and purely to let the crowd die down (honest) Deaks and I engaged in a pub crawl along the Blackstock Road back to Finsbury Park tube station. We ticked off the Arsenal Tavern, Kings Head, The Blackstock, The Twelve Pins and The Gas Light. Clearly after watching two games of football in a single afternoon we'd built up quite a thirst. A good day out then aside from some whinging, moaning, boring, nincompoop Arsenal fans.
So in the unlikely event that anyone is still reading this, what do you think about further reports from English matches I attend? Shall I start adding the odd one to this blog, shall I keep it strictly for European games or do you not give a rats arse either way? Does the backlash start here? Let me know by leaving a comment below or emailing me at email@example.com


text: Chaucer is the first of a new series of short biographies, which I am writing with the purpose of bringing to life some of the most important men and women in the history of the world. There is no better agent of human understanding and human knowledge than the course of a single life, with all the events and aspirations, ambitions and achievements, which may accompany it. To enter the consciousness and personality of a man or woman, of any period, is to see that period from within." —Peter Ackroyd


text:
Scenes From Slice Out Hunger
GalleryScenes From Slice Out Hunger
We've been happy to support Slice Out Hunger, where Scott Weiner of Scott's Pizza Tours brought together some of the city's best pizzerias— John's, Joe's, Di Fara, Keste, Motorino, and many more—into one room for a fundraiser benefiting City Harvest. Every entrant bought $1 tickets that could get you a slice from one of the city's select pizzerias—over 475 boxes' worth.
Pizzas disappeared quickly, and the crowds were fierce—we got in line half an hour before the event, made a beeline for Di Fara, and they'd still managed to sell out already!—which meant that Slice Out Hunger raised $12,900 for City Harvest.
Here's a look at just a few of the many, many slices that got devoured last night.
— Carey Jones and Max Falkowitz
All products linked here have been independently selected by our editors. We may earn a commission on purchases, as described in our affiliate policy.


text:
For Business
Explore our wide range of programs for businesses below, and find out how you can offer Starbucks in your office, in your operation or as a gift.
Branded Solutions
Starbucks Branded Solutions delivers the Starbucks Experience through business development, relationship management and selling our continuum of brands in Licensed Store, Foodservice and Office Coffee Channels.
- Licensed Stores
Create a more complete coffeehouse experience with a Starbucks store at your retail or foodservice location. Discover how you can qualify to own and operate a licensed store.
- Foodservice
With Starbucks Branded Solutions, you have access to the full We Proudly Serve Starbucks Coffee product portfolio, including Tazo? teas and Fontana? premium syrups and sauces. Explore to see how other operators are benefiting from their We Proudly Serve program. Already have an account with us? Log in to place orders, download recipes, and watch training videos.
- Starbucks Office Coffee
Keep employees, clients and guests satisfied with freshly brewed coffee and beverages in your office. Starbucks? coffee, Tazo? tea, hot cocoa and other delicious products are available for delivery to businesses large and small. Learn more about Starbucks Office Coffee services.
Starbucks Card Corporate Sales
Say thanks with a Starbucks Card – a warm and wonderful way to show your appreciation for clients, colleagues and employees.
Corporate Sales
Looking for a way to motivate and reward your customers and co-workers? Give them Starbucks Cards. Order today.
For the 12th year in a row, Starbucks has been recognized as one of the World's Most Ethical Companies? by the Ethisphere Institute.
"World's Most Ethical Companies" and "Ethisphere" names and marks are registered trademarks of Ethisphere LLC.
Starbucks Standards of Business Conduct
The Standards of Business Conduct booklet is a resource distributed to all partners to help them make appropriate decisions at work.
The Standards are a brief statement of some of the company's expectations of how we are all to conduct Starbucks business, consistent with our Guiding Principles. View all versions of the Standards of Business Conduct.


text:
Barnet striker Izale McLeod smashed home a second-half penalty to defeat Port Vale 1-0 and save the club from relegation from the Football League on the final day of the season.
Caretaker boss Guiliano Grazioli needed the Bees to triumph at Underhill and Lincoln not to win if he was to keep the club in League Two after taking over from Martin Allen last month.
And after McLeod stepped up to fire Barnet ahead they never looked in danger, with the Imps' 3-0 home defeat to Aldershot ensuring they instead suffered their first relegation from the Football League since 1987.
Mark Marshall caused the Vale backline problems early on and was unlucky not to score after 19 minutes when his stinging 20-yard effort from the left was brilliantly parried by Chris Martin.
And the former Swindon winger came close again when he dispossessed Ritchie Sutton with a superb sliding tackle but his curling shot shaved the outside of a post.
It took until the third minute of the second half for the home side to reap their reward when McLeod smashed home a penalty after he was brought down by Gareth Owen.
Sam Walker was called into action in the final moments to keep the Bees ahead when he saved at the feet of Marc Richards.
Source: DSG
Source: DSG


text:
Tagged: Adrian Gonzalez
We Needed That
We certainly can't be happy with losing three of four to the Red Sox at home, but it doesn't seem as bad when you salvage the series finale and end a five-game losing streak. Now the White Sox head into an off-day with a satisfying 4-1 win and get back to .500 at 11-11–tied with the Tigers for second place and just a game behind the Tribe, who invade the Cell for a three-game set on Tuesday night.
Gavin Floyd was the "man" today as he headed into the seventh inning with a no-hitter. He lost the no-no on a Dustin Pedroia single and the shutout on a Cody Ross RBI single and was replaced by Addison Reed. In 6 2/3 frames he allowed just the one run, three hits, one walk and nine strikouts. Reed pitched a scoreless inning and Matt Thornton was perfect in 1 1/3 with two strikeouts for the save. Even more impressive is that Thornton retired the heart of the Bosox lineup–Pedroia, Adrian Gonzalez and David Ortiz–in order in the ninth.
The Sox offense, with red-hot Paul Konerko out of the lineup with a stiff neck, held up their end of the bargain after the 1-0 loss on Saturday night. In a three-run first, Alex Rios had a RBI single and Adam Dunn a long two-run homer. The South Siders scored an insurance run in the eighth on a clutch two-out RBI by Dayan Viciedo.


text:
New York, N.Y. - The Skyline Conference released the 2012 All-Conference women's volleyball team on Tuesday, November 13th. Sophomore outside Sarah Palladino (Lindenhurst, N.Y.) was named First Team All-Skyline, while senior outside Holly Sahner (Dix Hills, N.Y.) earned Second Team honors.
Palladino led the team in kills (306), kills per set (3.73), service aces (49) and digs (199) this season. In the conference, she ranked first in both kills and points per game, sixth in aces per game and tenth in hitting percentage. In Skyline matches, Palladino led the Rams in kills (128), kills per game and aces (23). Her 3.73 kill per game mark this season is second best all-time at Farmingdale State.
Sahner led the Rams in hitting percentage, ranked second in kills (185), kills per game (2.98), service aces (30) and digs (171). Sahner ranked second in the Skyline in hitting percentage and fifth in kills per game. In Skyline matches, she led FSC in hitting percentage, digs (90), digs per game and is ranked second in kills (97), kills per game, aces (16) and aces per game (0.53). She leaves Farmingdale State as the all-time leader in attack percentage and is ranked second in both kills per set and aces per set.
Lauren Halverson* - Mount Saint Mary - Sr. - S - Patchogue, N.Y.
Joanie Cooney - Sage - Jr. - S - Ballston Lake, N.Y.
Jen Gries - Mount Saint Mary - Fr. - LIB - Hicksville, N.Y.
Corey Loupee - NYU-Poly - Sr. - MH - Crown Point, IN
Sarah Palladino - Farmingdale State - So. - OH - Lindenhurst, N.Y.
Helen Putriment - Sage - So. - OH - Troy, N.Y.
Mary Ann Raftery - Mount Saint Mary - Sr. - OH - Atlantic Beach, N.Y.
Ashleigh Scozzari - Mount Saint Vincent - Fr. - MH - New Rochelle, N.Y.
Shelby Burns - NYU-Poly - Sr. - MH - Elko, NV
Heather Ferchland - St. Joseph's-L.I. - Fr. - MH - Selden, N.Y.
Melissa Garibaldi - St. Joseph's-L.I. - So. - RH - Seaford, N.Y.
Shira Genauer - Yeshiva - Jr. - LIB - Seattle, WA
Ashley Larrea - St. Joseph's-L.I. - Sr. - DS - Islip, N.Y.
Morgan Robinson - Sage - Fr. - RS Ballston Lake, N.Y.
Holly Sahner - Farmingdale State - Sr. - OH - Dix Hills, N.Y.
*Player of the Year: Lauren Halverson, Mount Saint Mary
Rookie of the Year: Ashleigh Scozzari, Mount Saint Vincent
Coach of the Year: Sandy Augstein-Collins, Sage
Tournament MVP: Mary Ann Raftery, Mount Saint Mary
Team Sportsmanship Award: Yeshiva
To view the Skyline Conference press release, Click HERE.


text:
|OpenBSD Security Functionally paranoid!
|Thread Tools
|Display Modes
A Very Simple Wireless Access Point
Hello everyone.
I am trying to setup a basic wireless internet using wpa2 and a dhcpd server that will hand out clients.
I am following along in the book of PF and so far I am able to see the wireless adapter and connect to it. However I am not able to obtain an ip address on the client.
up media autoselect mode 11g chan 1 nwid unwiredbsd nwkey 0x1deadbeef9 dhcp
I even tried starting httpd athn0 but had no luck
What am I doing wrong here? Why can I not get a ip address on the client?
I have not done any customizations to dhcpd except what was listed above (and i did start it via 'dhcpd athn0'
I will read it and see what i can come up with
Your /etc/hostname.athn0 file should have a static address. It is a DHCP server for a subnet; that subnet should be known to you.
Your /etc/dhcpd.conf configuration must describe that same subnet, and have a range of dynamic addresses. It can also provide additional information such as routers and domain name server addresses.
Picture, if you will, this network. It is attached to the Internet at some Internet address a.b.c.d. The GATEWAY device, OpenBSD, needs to have two NICs: a connection to the Internet, and a connection to a private network, containing addresses which are not permitted on the Internet itself, such as any address beginning with 192.168.*.* or 10.*. There are others. Google for RFC 1918.
{Internet} --- a.b.c.d [GATEWAY] 10.0.0.1 -- {Private Network}
IPv4 forwarding must be enabled in /etc/sysctl.conf.
Network Address Translation must be used in PF, so that any communication from one of the devices on the 10.0.0.0/24 network destined for the Internet gets translated to a.b.c.d. (e.g., "match out on $external_nic from !($external_nic) nat-to ($external_nic)")
The dhcpd.conf file must define the 10.0.0.0/24 subnet ("subnet 10.0.0.0 netmask 255.255.255.0;"). A range within that subnet must be defined for dynamic address assignments ("range 10.0.0.10 10.0.0.100;"). If you want devices on that private network to reach the Internet, the configuration must also define 10.0.0.1 as a router ("option routers 10.0.0.1;"), and you will likely want to point them to a DNS server ("option domain-name-servers 126.96.36.199 220.127.116.11;").
I hope this helps.
That does help alot.
Here are the steps that i have done but it is still not working. dhcpd says (failed)
when cat /var/log/messages
i get
Cant listen on athn0 - dhcpd.conf has no subnet declaration for 10.2.0.1
up media autoselect mediaopt hostap mode 11g chan 7 nwid MY_SSID wpa wpakey MY_PWD_GOES_HERE 10.2.0.1
inet 10.1.0.1 255.0.10.0
option domain-name "my.domain"; option domain-name-servers 188.8.131.52; subnet 192.168.1.0 netmask 255.255.255.0 { option routers 10.1.0.1 range 192.168.1.32 192.168.1.127; }
echo 'dhcpd_flags="athn0"' >>/etc/rc.conf.local
EXT_IF = "xl0" WRLS_IF = "athn0" match out on egress inet from !(egress:network) to any nat-to (egress:0) pass out on $EXT_IF from any to any pass out on $WRLS_IF from any to any pass in on $WRLS_IF from any to any
You might have missed a post containing an example of a dhcpd.conf in your PF-related thread. It would merely need to have the shared-network declaration removed, and the IP addresses changed to match your WiFi subnet.
For more on dhcpd configuration, you might find FAQ 6.4.2 helpful.
Edited to add:
Your netmasks need revision. in xl0, 255.0.10.0 isn't valid, and you have no netmask for athn0, and no "inet" declaration.
Thanks I changed the subnet and added a netmask to athn0 and it is handing out IP addresses.
I currently have a main firewall and then another machine(wireless server) that has a wireless card. The wireless server hands out an ip address to the client but no internet connection. on the wireless machine i have the following command to monitor pf
tcpdump -n -e -ttt- i pflog0
The wireless server is able to ping the main firewall.
The wireless server is able to return results from nslookup www.google.com
OK. Your atnh0's NIC uses the address 10.2.0.1, with some subnet which is now valid?
If so, your dhcpd.conf is using a different subnet. 192.168.1.0/24, and a range within for dynamic addresses.
No wonder your network isn't communicating.
they are both 255.255.255.0 but still no internet.
I changed my pf.conf to look like this so I could catch the blocks
EXT_IF = "xl0" WRLS_IF = "athn0" block log all match out on egress inet from !(egress:network) to any nat-to (egress:0) pass out on $EXT_IF from any to any pass out on $WRLS_IF from any to any pass in on $WRLS_IF from any to any
I'll try to be clearer. Please excuse me if you understood me previously, but from your last post I think you may still be confused.
Your dhcp.conf last posted above was pointing to the WRONG SUBNET. None of the 192.168 addresses referenced in that configuration file are valid. All of them must be in the range defined by your athn0 subnet, which is addressed at 10.2.0.1, and if it is a /24, then your dhcp.conf must point to addresses in 10.2.0.0/24. Here are the changes I would make, if I've understood your addressing.
option domain-name "my.domain"; option domain-name-servers 126.96.36.199; subnet 10.2.0.0 netmask 255.255.255.0 { option routers 10.2.0.1 range 10.2.0.32 10.2.0.127; }
Your router definition was also incorrect, which is why I've altered its address. Yes, you have a router at 10.1.0.1, but that is not a router in the 10.2.0.0/24 subnet.
I will post my full config just in case i am not understanding.
up media autoselect mediaopt hostap mode 11g chan 7 nwid MY_SSID wpa wpakey MY_PWD_GOES_HERE 10.2.0.1 255.0.0.0
inet 10.1.0.1 255.0.0.0
option domain-name "my.domain"; option domain-name-servers 184.108.40.206; subnet 10.2.0.0 netmask 255.0.0.0 { option routers 10.2.0.1 range 10.2.0.32 10.2.0.99; }
echo 'dhcpd_flags="athn0"' >>/etc/rc.conf.local
EXT_IF = "xl0" WRLS_IF = "athn0" block log all match out on egress inet from !(egress:network) to any nat-to (egress:0) pass out on $EXT_IF from any to any pass out on $WRLS_IF from any to any pass in on $WRLS_IF from any to any
I think my problem is in my nat.
ifconfig xl0:
groups: is not showing up
ifconfig athn0
groups: wlan egress
so how can i tell openbsd that xl0 is egress?
Each of your NICs must be in its own subnet. You seem to misunderstand IPv4 subnetting and netmasks. The mask defines the number of bits of the 32-bit address which make up the subnet. As an example, a CIDR of /24 and a netmask of 255.255.255.0 or 0xFFFFFF00 all mean the same thing:
11111111 11111111 11111111 00000000
24 bits of ones followed by 8 bits of zeros. The addresses in the zero portion make up the number of bits in the subnet.
And in a subnet, the lowest address is reserved for the subnet itself, and is used in routing, and the highest address is reserved for broadcasts to all devices in the subnet. You may recall in your PF thread I mentioned a /30, the smallest subnet available except for point to point networks?
A /30 netmask, in bits, looks like this:
11111111 11111111 11111111 11111100
There are two bits for addressing a /30, which is four values: 00, 01, 10, and 11. The first and last of those addresses are reserved, the remaining two are available for assignment to devices.
e.g.: 192.168.39.16/30:
192.168.39.16 - the network
192.168.39.17 - first device
192.168.39.18 - second device
192.168.39.19 - broadcast
Some of the tables in this Wikipedia article may help.
As shown in your latest post above:
1. Your hostname.athn0 is misconfigured.
1a) You have no "inet" declaration in front of the IPv4 address
1b) You have defined the netmask as 255.0.0.0. This is a /8, which has a range of 10.0.0.0 - 10.255.255.255. That is a subnet containing 16 million 177 thousand and 216 addresses, and it conflicts with your xl0 subnet. If you set this to a /24 instead, it will range from 10.2.0.0 - 10.2.0.255.
2. Your hostname.xl0 is misconfigured.
It is in the same /8 subnet as your athn0 NIC, which is incorrect. If you set this to a /24 instead, it will range from 10.1.0.0 - 10.1.0.255.
3. Your dhcpd.conf is misconfigured.
It is a /8, as your other NICs, and needs to match the athn0 subnet once you have corrected it.
(NAT is not strictly required, but I will recommend retaining it for now, as if you wish to route without NAT you must add to your routing table in your outermost network.)
Last edited by jggimi; 5th July 2014 at 01:50 AM. Reason: I chose the wrong base address for my /30 example.
One of the best (& classic...) explanations/tutorials on IPv4 addressing is the following:
Note that this 3Com whitepaper can found at numerous sources, but be aware that the formating is incorrect at some URL's -- in the translation to PDF, exponents may not be correctly superscripted. The link provided above is correct.
Im a bit confused. First you said that the nics must be on seperate subnets 255.255.255.0 and then you said to make them both /24? I am assuming that /24 means 255.255.255.0 on both?
I highly recommend study of the IPv4 addressing whitepaper provided earlier. There appears to be a number of fundamental addressing rules you need to understand in order to implement routing correctly.
Last edited by ocicat; 5th July 2014 at 03:21 AM. Reason: clarity
thank you for the reply. I did change all the subnets to 255.255.255.0 and rebooted but still no internet.
it is working now. i want to thank everyone that helped with this mess.
I will read the doc so i can understand subnet masks better in the future.
Thanks again
Correct. The notation /24 means 24 bits of ones, followed by 8 bits of zeros.
The notation /24 is exactly the same as decimal 255.255.255.0 and is exactly the same as hexadecimal 0xFFFFFF00. All three of these mean the same thing: 24 bits of ones followed by 8 bits of zeros.
The way you had the NICs configured above, with a netmask of "255.0.0.0", means 8 bits of ones followed by 24 bits of zeros. Since the first 8 bits was the same: 00001010, or decimal 10, both NICs were in the same subnet. Or would have been, if you had configured the athn0 file with the keyword "inet".
This subnet begins at 10.0.0.0, the address of the network. It's broadcast address is 10.255.255.255, and between those two reserved addresses, there are 16,177,214 IP addresses which can be assigned to devices in this subnet.
With CIDR notation, any number of bits can be used to define the size of the netmask. But for we human beings, we define our IP address in terms of four 8-bit decimal octets (bytes) with periods in between them. So CIDRs of /8, /16, and /24 are the easiest for us to see and understand, because they set the number of bits of ones at 1, 2, or 3 octet boundaries,
A /24 is very handy for our small networks, for two reasons. 1) There are 256 addresses, 254 of them available for devices. 2) The three left bytes define the subnet, and the rightmost byte defines the devices within the subnet.
10.0.0.1/24 and 10.0.0.207/24 are obviously in the same subnet, because only the right most octet is different. No router is needed for these two devices to communicate. However, a device at10.0.5.13/24 is in a different subnet, because the first three octets are different. IP traffic would need to be routed between the two subnets.
|Thread Tools
|Display Modes
Linear Mode
|Similar Threads
|Thread Starter
|Last Post
|OpenBSD Access Point
|OpenBSD General
|2nd July 2014 10:26 AM
|Google details location services opt-out for Wi-Fi access point owners
|16th November 2011 09:53 AM
|problems with wifi access point
|OpenBSD General
|4th February 2010 10:29 AM
|Wireless NIC for access point
|FreeBSD General
|15th September 2009 11:01 PM
|Configuring a wireless access point
|FreeBSD General
|6th June 2008 04:07 PM


text:
Jon Snow may know nothing, but he apparently knows something about finding a good conditioner beyond The Wall
At Game of Thrones' red carpet premiere in Hollywood, the cast of HBO's hit fantasy drama sounded off on which character had the best (and worst!) hair.
TV Scorecard: What's canceled?
As one may have guessed, Ned Stark's bastard Jon Snow (Kit Harington) led the pack of well-tressed Westerosis with his head full of dark curls. See who else made the cut and which sad candidates should pray to the follicular gods.
Game of Thrones returns Sunday at 9/8c on HBO.