> -----Original Message----- > From: Linux-nvdimm <linux-nvdimm-boun...@lists.01.org> On Behalf Of > Dave Jiang > Sent: Friday, November 09, 2018 4:15 PM > To: dan.j.willi...@intel.com; zo...@linux.vnet.ibm.com > Cc: linux-nvdimm@lists.01.org > Subject: [PATCH 10/11] tools/testing/nvdimm: add Intel DSM 1.8 > support for nfit_test ... > +static int nd_intel_test_cmd_master_set_pass(struct nfit_test *t, > + struct nd_intel_set_master_passphrase *nd_cmd, > + unsigned int buf_len, int dimm) > +{ > + struct device *dev = &t->pdev.dev; > + struct nfit_test_sec *sec = &dimm_sec_info[dimm]; > + > + if (!(sec->ext_state & ND_INTEL_SEC_ESTATE_ENABLED)) { > + nd_cmd->status = ND_INTEL_STATUS_NOT_SUPPORTED; > + dev_dbg(dev, "master set passphrase in wrong state\n"); "master set passphrase:" for consistency > + } else if (sec->ext_state & ND_INTEL_SEC_ESTATE_PLIMIT) { > + nd_cmd->status = ND_INTEL_STATUS_INVALID_STATE; > + dev_dbg(dev, "master set passphrase in wrong security > state\n"); "master set passphrase:" for consistency > + } else if (memcmp(nd_cmd->old_pass, sec->master_passphrase, > + ND_INTEL_PASSPHRASE_SIZE) != 0) { > + nd_cmd->status = ND_INTEL_STATUS_INVALID_PASS; > + dev_dbg(dev, "master set passphrase wrong > passphrase\n"); "master set passphrase:" for consistency > + } else { > + memcpy(sec->master_passphrase, nd_cmd->new_pass, > + ND_INTEL_PASSPHRASE_SIZE); > + nd_cmd->status = 0; > + dev_dbg(dev, "master passphrase updated\n"); "master set passphrase:" for consistency > + } > + > + return 0; > +} > + > +static int nd_intel_test_cmd_master_secure_erase(struct nfit_test > *t, > + struct nd_intel_master_secure_erase *nd_cmd, > + unsigned int buf_len, int dimm) > +{ > + struct device *dev = &t->pdev.dev; > + struct nfit_test_sec *sec = &dimm_sec_info[dimm]; > + > + if (!(sec->ext_state & ND_INTEL_SEC_ESTATE_ENABLED)) { > + nd_cmd->status = ND_INTEL_STATUS_NOT_SUPPORTED; > + dev_dbg(dev, "master erase in wrong state\n"); "master secure erase: " for consistency > + } else if (sec->ext_state & ND_INTEL_SEC_ESTATE_PLIMIT) { > + nd_cmd->status = ND_INTEL_STATUS_INVALID_STATE; > + dev_dbg(dev, "master erase in wrong security state\n"); "master secure erase: " for consistency > + } else if (memcmp(nd_cmd->passphrase, sec->master_passphrase, > + ND_INTEL_PASSPHRASE_SIZE) != 0) { > + nd_cmd->status = ND_INTEL_STATUS_INVALID_PASS; > + dev_dbg(dev, "master secure erase: wrong passphrase\n"); > + } else { > + memset(sec->master_passphrase, 0, > ND_INTEL_PASSPHRASE_SIZE); > + sec->ext_state = ND_INTEL_SEC_ESTATE_ENABLED; > + memset(sec->passphrase, 0, ND_INTEL_PASSPHRASE_SIZE); > + sec->state = 0; > + dev_dbg(dev, "master secure erase: done\n"); > + } > + > + return 0; _______________________________________________ Linux-nvdimm mailing list Linux-nvdimm@lists.01.org https://lists.01.org/mailman/listinfo/linux-nvdimm
RE: [PATCH 10/11] tools/testing/nvdimm: add Intel DSM 1.8 support for nfit_test
Elliott, Robert (Persistent Memory) Fri, 09 Nov 2018 19:16:08 -0800
- Re: [PATCH 02/11] libnvdimm/s... Dave Jiang
- Re: [PATCH 02/11] libnvdi... Mimi Zohar
- [PATCH 03/11] libnvdimm/security: add ... Dave Jiang
- [PATCH 04/11] libnvdimm/security: intr... Dave Jiang
- [PATCH 07/11] libnvdimm/security: add ... Dave Jiang
- RE: [PATCH 07/11] libnvdimm/secur... Elliott, Robert (Persistent Memory)
- Re: [PATCH 07/11] libnvdimm/s... Dave Jiang
- [PATCH 08/11] libnvdimm/security: add ... Dave Jiang
- [PATCH 11/11] acpi/nfit: prevent indis... Dave Jiang
- [PATCH 10/11] tools/testing/nvdimm: ad... Dave Jiang
- RE: [PATCH 10/11] tools/testing/n... Elliott, Robert (Persistent Memory)
- Re: [PATCH 10/11] tools/testi... Dave Jiang
- [PATCH 06/11] tools/testing/nvdimm: Ad... Dave Jiang
- [PATCH 09/11] acpi/nfit, libnvdimm/sec... Dave Jiang
- Re: [PATCH 09/11] acpi/nfit, libn... Dan Williams
- [PATCH 05/11] acpi/nfit, libnvdimm/sec... Dave Jiang