• ×
    Information
    Windows update impacting certain printer icons and names. Microsoft is working on a solution.
    Click here to learn more
    Information
    Need Windows 11 help?
    Check documents on compatibility, FAQs, upgrade information and available fixes.
    Windows 11 Support Center.
  • post a message
  • ×
    Information
    Windows update impacting certain printer icons and names. Microsoft is working on a solution.
    Click here to learn more
    Information
    Need Windows 11 help?
    Check documents on compatibility, FAQs, upgrade information and available fixes.
    Windows 11 Support Center.
  • post a message
Guidelines
Do you need the WPS PIN to connect your printer? Click here for tips and tricks!
HP Recommended

Gents, I have a couple of older model printers in my enterprise which are popping positive on our security scans for PJL being active and un passworded. And, despite my best efforts I cannot find any setting to turns these off in their Jet Direct or physically at the printers. Any help would be welcome as the next step is to barricade myself in my office as users, angry because I took "their" printers, are beating the door down.

1 ACCEPTED SOLUTION

Accepted Solutions
HP Recommended

If you want to try to set a PJL password, 'send' the contents of the attached .prn print job file (disguised with an extra .txt extension to ensure that it can be attached here) to the printer port.

 

An analysis of the job shows:

 

Type                   Sequence          Description
---------------------  ----------------  ----------------------------------------------------

PCL Parameterised      <Esc>%-12345X     Universal Exit Language (UEL)
Comment                                  Switch language to PJL
PJL Command            @PJL JOB           PASSWORD = 0[0d,0a]
PJL Command            @PJL DEFAULT       PASSWORD = 65535[0d,0a]
PJL Command            @PJL EOJ          [0d,0a]
Comment                                  Switch language to PCL
PCL Parameterised      <Esc>%-12345X     Universal Exit Language (UEL)
Comment                                  Switch language to PJL

 The job assumes that the current PJL password is disabled (i.e. = 0), and sets the new password to 65535 (the maximum value on most current devices?)

View solution in original post

11 REPLIES 11
HP Recommended

I can't recollect ever seeing (on any LaserJet printer) a setting to disable use of PJL.

 

... and I can't see the point - the printer drivers probably all invoke use of PJL at the start of each job, in order to initialise the device and select the appropriate Page Description Language interpreter.

 

If (somehow) PJL was disabled, all standard Windows print jobs would either fail, or (more likely) print the text of the PJL commands in the job preamble on the first page of output. 

HP Recommended

Chris,

Thanks for the trying to help! PCL can be used for print Jobs, PJL allows access to printer internals (Google hacking HP printers). In most of my newer models I have the ability to disable or set a password on the port  its just these 15 or so older models that I am having trouble.

HP Recommended

>> ... PCL can be used for print Jobs, PJL allows access to printer internals ...

 

PCL is one of the three traditional Page Description Languages commonly supported by (most) LaserJet printers (the other two being PCL XL and PostScript); the bulk of a print job is made up of a mix of data and control sequences in the chosen PDL.

 

PJL is a job-level language which is usually used to encapsulate a print job, and to set certain attributes for that job; the data for these attributes is usually held in volatile (dynamic) RAM (as is temporary data used within the PDL).

The language can also be used to modify some data usually held in non-volatile RAM. 

 

 

I'll repeat my point "If (somehow) PJL was disabled, all standard Windows print jobs would either fail, or (more likely) print the text of the PJL commands in the job preamble on the first page of output".

 

 

Brief analysis oif the start of the test page (as generated by the Windows 8.1 Pro 64-bit edition built-in Colour LaserJet 3800 driver) shows that it starts with the (expected) UEL and PJL job preamble:

 

Type                   Sequence          Description
---------------------  ----------------  ----------------------------------------------------

PCL Parameterised      <Esc>%-12345X     Universal Exit Language (UEL)
Comment                                  Switch language to PJL
PJL Command            @PJL JOB           NAME="Test Page"[0a]
PJL Command            @PJL SET           STRINGCODESET=UTF8[0a]
PJL Command            @PJL COMMENT       "HP Color LaserJet 3800 (61.53.25.9); Windows 8.1
                                          Pro 6.3.9600.1; Unidrv 0.3.9600.17328"[0a]
PJL Command            @PJL COMMENT       "Username: chris; App Filename: Test Page; 3-10-2
                                          015"[0a]
PJL Command            @PJL DMINFO        ASCIIHEX="0400040101020D1010011532303135303331303
                                          13533353132"[0a]
PJL Command            @PJL SET           HOLD=OFF[0a]
PJL Command            @PJL SET           USERNAME="chris"[0a]
PJL Command            @PJL SET           JOBNAME="Test Page"[0a]
PJL Command            @PJL SET           QTY=1[0a]
PJL Command            @PJL SET           PROCESSINGTYPE="STAPLING"[0a]
PJL Command            @PJL SET           PROCESSINGOPTION="NONE"[0a]
PJL Command            @PJL SET           PROCESSINGBOUNDARY=MOPY[0a]
PJL Command            @PJL SET           RESOLUTION=600[0a]
PJL Command            @PJL ENTER         LANGUAGE=PCL[0a]
Comment                                  Switch language to PCL
PCL Control Code       0x0d              <CR>: Carriage Return
PCL Simple             <Esc>E            Printer Reset
PCL Parameterised      <Esc>*t600R       Raster Graphics Resolution (600 dots-per-inch)
PCL Parameterised      <Esc>&u600D       Unit-of-Measure (600 PCL units per inch)
. . .

 If PJL was disabled (I don't see how) , then the text of those PJL commands would print over the first page of output, rather than being processed as job attributes.

 

 

 

>> ...  In most of my newer models I have the ability to disable or set a password on the port ...

 

Disable what?

Password protect which port?

HP Recommended

... and are your LJ 3800 printers using the latest firmware? - see http://ftp.hp.com/pub/softlib/software13/COL13660/lj-115934-3/readme_clj3800fw_46_080_8.pdf

HP Recommended

See attached image it is from a newer model printer.

HP Recommended

Your picture makes what you are trying to do a bit clearer.

 

You are not referring to disabling PJL as such; what you are referring to is:

 

  • Setting a PJL password - if set, this would mean that certain PJL configuration commands (e.g. defining paper tray configuration or setting Ready message) would not be accepted without the password being present (in plain text!) in PJL jobs.
  • Disabling access to certain PJL disk commands which address permanent storage; these would only be relevant if the printer has a hard disk (or USB storage device, or large RAM disk?) - as far as I'm aware, none of the standard models includes such storage.

 

If the firmware does not support setting a PJL password, then it is probably unlikely that such a password can be set.

 

If the firmware does support such a password, then it might be possible to set a new PJL password (assuming that you know the current, or default one) using a PJL job containing certain commands!

But if it was supported, then I'd expect that you'd be able to do it, in a simpler fashion, via the (SNMP-based mechanism?) of WebJetAdmin, etc.

HP Recommended

If you want to try to set a PJL password, 'send' the contents of the attached .prn print job file (disguised with an extra .txt extension to ensure that it can be attached here) to the printer port.

 

An analysis of the job shows:

 

Type                   Sequence          Description
---------------------  ----------------  ----------------------------------------------------

PCL Parameterised      <Esc>%-12345X     Universal Exit Language (UEL)
Comment                                  Switch language to PJL
PJL Command            @PJL JOB           PASSWORD = 0[0d,0a]
PJL Command            @PJL DEFAULT       PASSWORD = 65535[0d,0a]
PJL Command            @PJL EOJ          [0d,0a]
Comment                                  Switch language to PCL
PCL Parameterised      <Esc>%-12345X     Universal Exit Language (UEL)
Comment                                  Switch language to PJL

 The job assumes that the current PJL password is disabled (i.e. = 0), and sets the new password to 65535 (the maximum value on most current devices?)

HP Recommended

That did it! Thanks! SNMP is a no go as in my origination it is a security concern as is jet admin (which I would give my first born to use TBH).

HP Recommended

@NHB-Alexander wrote:

Gents, I have a couple of older model printers in my enterprise which are popping positive on our security scans for PJL being active and un passworded. And, despite my best efforts I cannot find any setting to turns these off in their Jet Direct or physically at the printers. Any help would be welcome as the next step is to barricade myself in my office as users, angry because I took "their" printers, are beating the door down.


My problem is similar..my printer is  HP laserjet 2083  PJL is on..not needed.  When I print a job. I get a first sheet out of the printer that says PJL is on.  It prints the message every time before it will print the job.  How do I disable that?

† The opinions expressed above are the personal opinions of the authors, not of HP. By using this site, you accept the <a href="https://www8.hp.com/us/en/terms-of-use.html" class="udrlinesmall">Terms of Use</a> and <a href="/t5/custom/page/page-id/hp.rulespage" class="udrlinesmall"> Rules of Participation</a>.