Show a cover letter.

GET /api/covers/806965/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 806965,
    "url": "http://patchwork.ozlabs.org/api/covers/806965/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/skiboot/cover/20170829062506.8317-1-cyril.bur@au1.ibm.com/",
    "project": {
        "id": 44,
        "url": "http://patchwork.ozlabs.org/api/projects/44/?format=api",
        "name": "skiboot firmware development",
        "link_name": "skiboot",
        "list_id": "skiboot.lists.ozlabs.org",
        "list_email": "skiboot@lists.ozlabs.org",
        "web_url": "http://github.com/open-power/skiboot",
        "scm_url": "http://github.com/open-power/skiboot",
        "webscm_url": "",
        "list_archive_url": "",
        "list_archive_url_format": "",
        "commit_url_format": ""
    },
    "msgid": "<20170829062506.8317-1-cyril.bur@au1.ibm.com>",
    "list_archive_url": null,
    "date": "2017-08-29T06:24:53",
    "name": "[RFC,00/13] Rework flash TOC generation",
    "submitter": {
        "id": 64738,
        "url": "http://patchwork.ozlabs.org/api/people/64738/?format=api",
        "name": "Cyril Bur",
        "email": "cyril.bur@au1.ibm.com"
    },
    "mbox": "http://patchwork.ozlabs.org/project/skiboot/cover/20170829062506.8317-1-cyril.bur@au1.ibm.com/mbox/",
    "series": [
        {
            "id": 313,
            "url": "http://patchwork.ozlabs.org/api/series/313/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/skiboot/list/?series=313",
            "date": "2017-08-29T06:24:53",
            "name": "Rework flash TOC generation",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/313/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/covers/806965/comments/",
    "headers": {
        "Return-Path": "<skiboot-bounces+incoming=patchwork.ozlabs.org@lists.ozlabs.org>",
        "X-Original-To": [
            "incoming@patchwork.ozlabs.org",
            "skiboot@lists.ozlabs.org"
        ],
        "Delivered-To": [
            "patchwork-incoming@bilbo.ozlabs.org",
            "skiboot@lists.ozlabs.org"
        ],
        "Received": [
            "from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3])\n\t(using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xhJvZ454xz9t38\n\tfor <incoming@patchwork.ozlabs.org>;\n\tTue, 29 Aug 2017 16:41:46 +1000 (AEST)",
            "from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 3xhJvZ21HPzDrhG\n\tfor <incoming@patchwork.ozlabs.org>;\n\tTue, 29 Aug 2017 16:41:46 +1000 (AEST)",
            "from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com\n\t[148.163.156.1])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 3xhJXx19YMzDqTy\n\tfor <skiboot@lists.ozlabs.org>; Tue, 29 Aug 2017 16:25:36 +1000 (AEST)",
            "from pps.filterd (m0098410.ppops.net [127.0.0.1])\n\tby mx0a-001b2d01.pphosted.com (8.16.0.21/8.16.0.21) with SMTP id\n\tv7T6OH8b100253\n\tfor <skiboot@lists.ozlabs.org>; Tue, 29 Aug 2017 02:25:35 -0400",
            "from e23smtp04.au.ibm.com (e23smtp04.au.ibm.com [202.81.31.146])\n\tby mx0a-001b2d01.pphosted.com with ESMTP id 2cmx61t6v1-1\n\t(version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT)\n\tfor <skiboot@lists.ozlabs.org>; Tue, 29 Aug 2017 02:25:34 -0400",
            "from localhost\n\tby e23smtp04.au.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use\n\tOnly! Violators will be prosecuted\n\tfor <skiboot@lists.ozlabs.org> from <cyril.bur@au1.ibm.com>;\n\tTue, 29 Aug 2017 16:25:32 +1000",
            "from d23relay10.au.ibm.com (202.81.31.229)\n\tby e23smtp04.au.ibm.com (202.81.31.210) with IBM ESMTP SMTP Gateway:\n\tAuthorized Use Only! Violators will be prosecuted; \n\tTue, 29 Aug 2017 16:25:31 +1000",
            "from d23av04.au.ibm.com (d23av04.au.ibm.com [9.190.235.139])\n\tby d23relay10.au.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id\n\tv7T6PUlZ41943232\n\tfor <skiboot@lists.ozlabs.org>; Tue, 29 Aug 2017 16:25:30 +1000",
            "from d23av04.au.ibm.com (localhost [127.0.0.1])\n\tby d23av04.au.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id\n\tv7T6PVv0017586\n\tfor <skiboot@lists.ozlabs.org>; Tue, 29 Aug 2017 16:25:31 +1000",
            "from ozlabs.au.ibm.com (ozlabs.au.ibm.com [9.192.253.14])\n\tby d23av04.au.ibm.com (8.14.4/8.14.4/NCO v10.0 AVin) with ESMTP id\n\tv7T6PU5Z017578; Tue, 29 Aug 2017 16:25:30 +1000",
            "from camb691.ozlabs.ibm.com (haven.au.ibm.com [9.192.254.114])\n\t(using TLSv1.2 with cipher DHE-RSA-AES128-GCM-SHA256 (128/128 bits))\n\t(No client certificate requested)\n\tby ozlabs.au.ibm.com (Postfix) with ESMTPSA id A5066A010B;\n\tTue, 29 Aug 2017 16:25:29 +1000 (AEST)"
        ],
        "From": "Cyril Bur <cyril.bur@au1.ibm.com>",
        "To": "skiboot@lists.ozlabs.org, stewart@linux.vnet.ibm.com",
        "Date": "Tue, 29 Aug 2017 16:24:53 +1000",
        "X-Mailer": "git-send-email 2.14.1",
        "X-TM-AS-MML": "disable",
        "x-cbid": "17082906-0012-0000-0000-0000025A9F58",
        "X-IBM-AV-DETECTION": "SAVI=unused REMOTE=unused XFE=unused",
        "x-cbparentid": "17082906-0013-0000-0000-0000077669DB",
        "Message-Id": "<20170829062506.8317-1-cyril.bur@au1.ibm.com>",
        "X-Proofpoint-Virus-Version": "vendor=fsecure engine=2.50.10432:, ,\n\tdefinitions=2017-08-29_01:, , signatures=0",
        "X-Proofpoint-Spam-Details": "rule=outbound_notspam policy=outbound score=0\n\tspamscore=0 suspectscore=29\n\tmalwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam\n\tadjust=0 reason=mlx scancount=1 engine=8.0.1-1707230000\n\tdefinitions=main-1708290096",
        "Subject": "[Skiboot] [RFC PATCH 00/13] Rework flash TOC generation",
        "X-BeenThere": "skiboot@lists.ozlabs.org",
        "X-Mailman-Version": "2.1.23",
        "Precedence": "list",
        "List-Id": "Mailing list for skiboot development <skiboot.lists.ozlabs.org>",
        "List-Unsubscribe": "<https://lists.ozlabs.org/options/skiboot>,\n\t<mailto:skiboot-request@lists.ozlabs.org?subject=unsubscribe>",
        "List-Archive": "<http://lists.ozlabs.org/pipermail/skiboot/>",
        "List-Post": "<mailto:skiboot@lists.ozlabs.org>",
        "List-Help": "<mailto:skiboot-request@lists.ozlabs.org?subject=help>",
        "List-Subscribe": "<https://lists.ozlabs.org/listinfo/skiboot>,\n\t<mailto:skiboot-request@lists.ozlabs.org?subject=subscribe>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=\"utf-8\"",
        "Content-Transfer-Encoding": "base64",
        "Errors-To": "skiboot-bounces+incoming=patchwork.ozlabs.org@lists.ozlabs.org",
        "Sender": "\"Skiboot\"\n\t<skiboot-bounces+incoming=patchwork.ozlabs.org@lists.ozlabs.org>"
    },
    "content": "Hi,\n\nCurrently the ability within libffs to prove an api to generate TOCs\nis a bit experimental/developmental and it needs work. The original\nversion tried to abstract too much which mean needless complexity\nwithin the library.\n\nI've ripped quite a lot of the complexity out of the libffs in favour\nof some added (but overall less) complexity in ffspart.\n\nUnfortunately this does change libffs just a tad, hopefully none of\nthe functions have been used by anyone outside of skiboot, and the\ninput file to ffspart had to change a bit too, but I haven't heard of\nanyone actually using it.\n\nFeedback very much welcome,\n\nThanks\n\nCyril Bur (13):\n  external/ffspart: Allow # comments in input file\n  libflash/libffs: Add helpers for the treatment of partition flags\n  external/pflash: Use ffs_entry_user_to_string() to standardise flag\n    strings\n  libflash/libffs: Add setter for a partitions actual size\n  libflash/libffs: ffs_close() should use ffs_hdr_free()\n  external/ffspart: Remove side, order and backup options\n  libflash/libffs: Always add entries to the end of the TOC\n  libflash/libffs: Remove the 'sides' from the FFS TOC generation code\n  libflash/libffs: Remove backup partition from TOC generation code\n  libflash/libffs: Switch to storing header entries in an array\n  libflash/libffs: Refcount ffs entries\n  libflash/libffs: Allow caller to specifiy header partition\n  external/ffspart: Use new interface\n\n external/ffspart/ffspart.c                         | 604 +++++++++++----------\n external/ffspart/test/files/03-tiny-pnor.in        |   8 +-\n .../ffspart/test/files/03.1-tiny-pnor-backup.in    |   4 -\n .../ffspart/test/files/03.1-tiny-pnor-backup.out   | Bin 3840 -> 0 bytes\n external/ffspart/test/files/04-tiny-pnor2.in       |   8 +-\n external/ffspart/test/files/05-hdr-overlap.in      |   8 +-\n .../ffspart/test/files/05.1-hdr-overlap-backup.in  |   3 -\n external/ffspart/test/files/06-small-flash.in      |  10 +-\n external/ffspart/test/files/07-big-files.in        |   8 +-\n external/ffspart/test/files/08-small-files.in      |   8 +-\n external/ffspart/test/files/10-bad-input.in        |   8 +-\n external/ffspart/test/files/11-long-name.in        |   8 +-\n external/ffspart/test/files/12-bad-numbers-base.in |   8 +-\n external/ffspart/test/files/13-bad-numbers-size.in |   8 +-\n external/ffspart/test/files/14-bad-input-flags.in  |   8 +-\n .../test/files/15-overlapping-partitions.in        |   8 +-\n external/ffspart/test/results/00-usage.out         |   5 -\n external/ffspart/test/results/01-param-sanity.err  |   1 -\n external/ffspart/test/results/01-param-sanity.out  |   5 -\n .../ffspart/test/results/01.1-param-sanity.err     |   0\n .../{02-param-sides.out => 01.1-param-sanity.out}  |   5 -\n external/ffspart/test/results/02-param-sides.err   |   1 -\n external/ffspart/test/results/05-hdr-overlap.err   |   5 +-\n external/ffspart/test/results/05-hdr-overlap.out   |   4 -\n .../test/results/05.1-hdr-overlap-backup.err       |   2 -\n .../test/results/05.1-hdr-overlap-backup.out       |   4 -\n external/ffspart/test/results/06-small-flash.err   |   5 +-\n external/ffspart/test/results/06-small-flash.out   |   3 -\n external/ffspart/test/results/07-big-files.err     |   5 +-\n external/ffspart/test/results/07-big-files.out     |   2 -\n external/ffspart/test/results/08-small-files.err   |   2 +\n external/ffspart/test/results/08-small-files.out   |   5 -\n external/ffspart/test/results/10-bad-input.err     |   5 +-\n external/ffspart/test/results/10-bad-input.out     |   1 -\n external/ffspart/test/results/11-long-name.err     |   6 +-\n external/ffspart/test/results/11-long-name.out     |   5 -\n .../ffspart/test/results/12-bad-numbers-base.err   |   5 +-\n .../ffspart/test/results/12-bad-numbers-base.out   |   1 -\n .../ffspart/test/results/13-bad-numbers-size.err   |   5 +-\n .../ffspart/test/results/13-bad-numbers-size.out   |   1 -\n .../ffspart/test/results/14-bad-input-flags.err    |   5 +-\n .../ffspart/test/results/14-bad-input-flags.out    |   1 -\n .../test/results/15-overlapping-partitions.err     |   5 +-\n .../test/results/15-overlapping-partitions.out     |   3 -\n external/ffspart/test/tests/01-param-sanity        |   2 +-\n .../tests/{02-param-sides => 01.1-param-sanity}    |   2 +-\n external/ffspart/test/tests/03.1-tiny-pnor-backup  |  15 -\n external/ffspart/test/tests/05-hdr-overlap         |   7 +-\n .../ffspart/test/tests/05.1-hdr-overlap-backup     |  15 -\n external/ffspart/test/tests/06-small-flash         |   5 +-\n external/ffspart/test/tests/07-big-files           |   4 +\n external/ffspart/test/tests/10-bad-input           |   2 +\n external/ffspart/test/tests/12-bad-numbers-base    |   2 +\n external/ffspart/test/tests/13-bad-numbers-size    |   2 +\n external/ffspart/test/tests/14-bad-input-flags     |   2 +\n .../ffspart/test/tests/15-overlapping-partitions   |   4 +-\n external/pflash/pflash.c                           |  16 +-\n external/pflash/test/files/01-info.ffs             |   8 +-\n external/pflash/test/files/02-erase.ffs            |   8 +-\n external/pflash/test/files/03-erase-parts.ffs      |   8 +-\n external/pflash/test/files/04-program-rand.ffs     |   8 +-\n external/pflash/test/files/05-bad-numbers.ffs      |   8 +-\n external/pflash/test/files/06-miscprint.ffs        |   8 +-\n external/pflash/test/results/01-info.out           |  10 +-\n external/pflash/test/results/06-miscprint.out      |   2 +-\n libflash/ffs.h                                     |  16 +-\n libflash/libffs.c                                  | 455 ++++++++--------\n libflash/libffs.h                                  |  18 +-\n 68 files changed, 731 insertions(+), 702 deletions(-)\n delete mode 100644 external/ffspart/test/files/03.1-tiny-pnor-backup.in\n delete mode 100644 external/ffspart/test/files/03.1-tiny-pnor-backup.out\n delete mode 100644 external/ffspart/test/files/05.1-hdr-overlap-backup.in\n create mode 100644 external/ffspart/test/results/01.1-param-sanity.err\n rename external/ffspart/test/results/{02-param-sides.out => 01.1-param-sanity.out} (67%)\n delete mode 100644 external/ffspart/test/results/02-param-sides.err\n delete mode 100644 external/ffspart/test/results/05.1-hdr-overlap-backup.err\n delete mode 100644 external/ffspart/test/results/05.1-hdr-overlap-backup.out\n rename external/ffspart/test/tests/{02-param-sides => 01.1-param-sanity} (63%)\n delete mode 100644 external/ffspart/test/tests/03.1-tiny-pnor-backup\n delete mode 100644 external/ffspart/test/tests/05.1-hdr-overlap-backup"
}