Spoofing module version

Discuss the development of new homebrew software, tools and libraries.

Moderators: cheriff, TyRaNiD

Post Reply
NoEffex
Posts: 106
Joined: Thu Nov 27, 2008 6:48 am

Spoofing module version

Post by NoEffex »

This would normally be a fairly easy thing to do (I already did it), however, I know vshbridge has its own loadmodule, and I'm presuming its own querymoduleinfo.

Does anyone have any information about those vshbridge functions?

If not, does anyone know how I can edit an already-loaded modules version? I know psplink loads up a list of modules (And I think their versions), and since those hardcoded versions are well, hardcoded, how would I go about editing it? I think it's exported, I just don't know how to look up variable exports, as opposed to function exports, if there's any difference (I couldn't look up either in syslib for the sceVshNpSignin_Module)
Programming with:
Geany + Latest PSPSDK from svn
User avatar
Coldbird
Posts: 97
Joined: Thu Feb 08, 2007 7:22 am

Post by Coldbird »

There you go. Have fun.

Code: Select all

//change module version
unsigned int alterModuleVersion(const char * name, unsigned char major, unsigned char minor)
{
  //result
  unsigned int result = 0;

  //find module
  SceModule * mod = sceKernelFindModuleByName(name);
  
  //tada - it's loaded
  if(mod)
  {
    //change module version
    mod->version[1] = major;
    mod->version[0] = minor;
    
    //we are done
    result = 1;
  }

  //return result
  return result;
}
Requires you to have loaded the module already, so it gets linked into the module list.

If it ain't loaded, this function will do nothing and return zero, if it is loaded it will change the displayed version of the module in the module list.

I don't know whether this is what you wanted, if not feel free to ask for more help and I shall provide.
Been gone for some time. Now I'm back. Someone mind getting me up-2-date?
NoEffex
Posts: 106
Joined: Thu Nov 27, 2008 6:48 am

Post by NoEffex »

I think that's what I needed.

I thought it was readonly so to speak (Copy the structure over), and it couldn't be edited that way. I think I was wrong.
Programming with:
Geany + Latest PSPSDK from svn
User avatar
Coldbird
Posts: 97
Joined: Thu Feb 08, 2007 7:22 am

Post by Coldbird »

Not trying to be nosy but... for what do you need that?

Did you discover some check that requires a specific module version or something of the sort?
Been gone for some time. Now I'm back. Someone mind getting me up-2-date?
NoEffex
Posts: 106
Joined: Thu Nov 27, 2008 6:48 am

Post by NoEffex »

Coldbird wrote:Not trying to be nosy but... for what do you need that?

Did you discover some check that requires a specific module version or something of the sort?
No, I thought it did for a while, but then it became curiousity.

It noticed an 0x05000010 on 5.00 M33-6 and 0x05050010 on 5.50 GEN on npsignin_plugin.prx (I had dumped it and such before it was decrypted). I thought it was kinda odd. Also, it's exported.
Programming with:
Geany + Latest PSPSDK from svn
User avatar
Coldbird
Posts: 97
Joined: Thu Feb 08, 2007 7:22 am

Post by Coldbird »

Well I noticed that the Adhoc Library (Net Libraries in general...) have been changed on the jump from 5.00 to 5.50...

They remained the same from 5.50 till 6.20 though... ;)

Version 1.3 is on use on 5.00 while Version 1.4 is the latest one at the time of writing this article and is used up to 6.20...

I'm still trying to figure out some of the changes myself... as I'm really interested in the networking aspect of PSP.
Been gone for some time. Now I'm back. Someone mind getting me up-2-date?
Post Reply