How to Extract the Contents of Cisco COP Files

By Aaron Harrison : Development Engineer at IPCommute UK

Cisco Option files (COP Files) are released for Cisco Unified Communications Manager (CUCM) to add new functionality, fixes, and other optional components such as locales or phone firmware.

Each COP file is essentially an archive of files - some are copied to the CUCM server, some are used as data to import to the database, others might be scripts.

Occasionally it might be useful to be able to look at the files that make up a COP file. This has been most useful for me when working with National Dial Plans (NDP); these aren't as well documented as they might be, and I find it useful to look into the files and see exactly what each of the clauses in the NDP actually mean in terms of dialled numbers.

So - here is how to do it.

The COP file is basically a gzip, with an encryption header that makes it unrecognisable to archive packages such as 7-ZIP. You'll need two pieces of software:

Once you have downloaded and installed these, grab your COP file of choice. I'll use a Dial Plan from the UK (dp-ffr.3-1-18.GB.cop.sgn).

Run HXD, and open the .cop.sgn file. You'll be presented with a screen that looks like this:



Note above that I’ve highlighted in red the name of the file. Where you see this, highlight it with the mouse, and you should see the hex pattern ‘1F 8B 08’ just after it. This is a Magic Number that marks the start of a GZip file (see http://en.wikipedia.org/wiki/Magic_number_(programming) for more information on Magic Numbers).

What we need to do is highlight everything before that Magic Number, and remove it. Highlight is so that it looks like the following picture, and then click the Edit/Cut menu option. Accept the file size warning.


 
Once removed, your file should start with the hex values 1F 8B 08. Click the File/Save As menu option and save the file with an additional .gz on the end – e.g. dp-ffr.3-1-18.GB.cop.sgn.gz

Now you can run 7-ZIP, and open the dp-ffr.3-1-18.GB.cop.sgn.gz file. You’ll typically see the name of the file again, double click that:

 
You’ll then see a ‘.’ folder, open that and you should start seeing the contents of the file.

 
In this dial plan example, there is a copstart.sh script that is the install script. There are also CSV files containing database information.

Most interesting to me is that in the GBNP folder under a couple of subdirectories is a file simply named GBNP. Right click this and hit ‘Edit’, and it should launch in Notepad.

 
This file contains all the exact definitions of each tag; what numbers they match and where these numbers should be in a dialled string to match the tag.

 
So – that’s what a SPECIAL-SERVICE is! That’s much clearer that the rather woolly definitions available at www.cisco.com.

The ability to open these files can be an interesting and educational ability in lots of scenarios aside from exploring dial plans...

By Aaron Harrison : Development Engineer at IPCommute UK

Continue